Assembler Editor Plus: Добавление нового микроконтроллера
Эта статья немного забегает вперед, и поясняет каким образом можно добавить настройки в редактор для других ARM микроконтроллеров.
Перечень микроконтроллеров находится в файле inf\mculist.ini.
Открыть его для редактирования можно из самого редактора:
Если сопоставить то что написано с окно выбора микроконтроллера при создании проекта, то думаю понятно как строится дерево выбора микроконтроллеров:
Таким образом, модификация дерева под нового производителя микроконтроллера думаю не вызовет у вас особых затруднений:
И где-нибудь ниже описаний микроконтроллеров ST, добавим имя серии микроконтроллеров и имена конкретных микроконтроллеров, которые можно увидеть на сайте производителя:
Сохранив файл и заново запустив создание проекта, при выборе микроконтроллера получим новое содержание диалогового окна дерева микроконтроллеров:
Теперь нужно описать конкретный микроконтроллер из нашего списка, по запросу одного из участников проекта (Сергей привет!), будем описывать 1921ВК035.
Сначала создадим файловую структуру для хранения настроек новых микроконтроллеров в каталоге inf/ редактора, у меня получилось так:
Дополнительно нам понадобятся следующие файлы:
Для OpenOCD нужны target файлы под выбранные микроконтроллера, их можно "утащить" из настроек OpenOCD сервера сред предлагаемых производителем/разработчиком микроконтроллера и используемых для отладочного сервера, эти файлы нужно скопировать в папку openocd\scripts\target
Так же для интерфейса отладчика нужен .svd файл микроконтроллера, по которому редактор будет показывать состояние регистров настройки микроконтроллера, эти файлы так же можно найти в ПО от производителя/разработчика микроконтроллера или достать из из другой среды разработки, эти файлы я помещаю в папке микроконтроллера
Теперь опять вернемся к нашему настроечному файлу списка микроконтроллеров mculist.ini и пропишем и разберем настройки микроконтроллера
type=config указатель на то что описывается микроконтроллер, если этой строчки нет, то содержимое секции ini файла будет рассматриваться как названия субкатегорий микроконтроллеров
file=inf\niiet\1921VKx\1921VK035\k1921vk035.ini - файл описания модулей микроконтроллера, пока мы его не создали, сделаем это ниже
openocd=openocd\scripts\target\k1921vk035.cfg расположение target файла для openOCD
deviceinfo=inf\NIIET\1921VKx\1921VK035\K1921VK035.svd описатель микроконтроллера для отладчика редактора
targetadr=0x00000000 - адрес для размещения прошивки микроконтроллера, это значение нужно искать в документации по микроконтроллеру
syntax=unified - формат написания команд ассемблера, это опция компилятора которая указывается в каждом .asm файле проекта
cpu=cortex-m4 указание на ядро микроконтроллера, так же смотрим в документации по микроконтроллеру, спрашиваем на форумах и так далее, эта опция нужна и для компилятора, и для редактора, так на основании этого значения выбираются правила подсветки команд ассемблера в редакторе
thumb=.thumb указание компилятору на размер используемых команд
fpu= - указание на сопроцессор для операций с плавающей точкой (эту информацию я еще не нашел, оставим не заполненным)
Теперь можно переходить к созданию файла описания модулей микроконтроллера
Общий шаблон выглядит следующим образом
Сначала идет имя секции с именем микроконтроллера [К1921ВК035] и дальше идут пары параметров:
textX - текст показываемый в дереве списка модулей
linkX - ссылка на поддерево
Нумерация пар textX / linkX должна быть последовательна ! то есть сначала описываем нулевые элементы, потом первые, вторые и так далее... Если описать нулевой элемент, а потом сразу второй - обработки не произойдет!!
При необходимости запуска скрипта установки модуля в проект прописываются следующие параметры
textX - текст показываемый в дереве списка модулей
scriptX - указатель на файл скрипта модуля
Про то как сделать скрипт добавления модуля в проект будет написана дополнительная статья, а сейчас существует небольшое техническое видео с простыми примерами: