Ассемблер   AVRA для микроконтроллера   LGT8F328P

AVRA — это ассемблер  для микроконтроллеров AVR, с открытым исходным кодом, написанный на C99.


AVRA создает coff файл каждый раз, когда сборка проходит успешно. Это дает возможность использовать отладчик.
Поддержка гибких макросов, позволяет расширить возможности повторного использования кода, например, создания собственной библиотеки. Если вы знакомы с языком программирования C, вы должны легко освоиться с AVRA.

AVRA можно скомпилировать в Linux и Windows.

Компиляция AVRA

1. Скачать исходники с github

https://github.com/Ro5bert/avra

 

2. Добавить lgt8f328p в список микроконтроллеров.

В файле device.c, в списке struct device device_list[] добавить строчку

 

{"LGT8F328P"  ,  16384, 0x100,  2048, 1024, DF_NO_EICALL|DF_NO_EIJMP|DF_NO_ELPM|DF_NO_ESPM},

 

Порядок заполнения полей: название, размер flash-памяти (в словах), RAM start, размер ОЗУ (в байтах), размер EEPROM (в байтах). ВАЖНО: РАЗМЕР FLASH-ПАМЯТИ УКАЗАН В СЛОВАХ, А НЕ В БАЙТАХ.

Т.К. eeprom эмулируется, отъедая часть flash памяти, можно сделать несколько вариантов контроллера, с различными размерами flash и eeprom.

 

3. Скопировать заголовочный файл lgt8f328Pdef.inc в каталог includes.

4. Компиляция в Linux

Чтобы собрать исполняемый файл avra,  перейдите в корневой каталог проекта и запустите

make

Будет создан двоичный файл. Вы можете его установить с помощью

make install

 

5. Компиляция в Windows

Чтобы собрать исполняемый файл avra в Windows необходимо установить Codeblocks и mingw.

https://www.codeblocks.org/downloads/binaries/

Скачать и установить codeblocks-20.03mingw-setup.exe

В CodeBlocks создать проект Console application, выбрать компилятор GNU GCC Compiler, удалить созданный файл main.c. Затем скопировать в каталог проекта все файлы из avra 1.4.2\src\  с расширением .c и .h. Добавить файлы в проект. Скомпилировать проект (Нажать в главном меню Build-Build). Исполняемый файл avra.exe будет лежать в каталоге проекта bin\Release.

 

6. Готово