Как предусмотреть дополнительные командные строки для сборки скетча, под некоторую плату (board type)

Voodoo Doll
Voodoo Doll аватар
Offline
Зарегистрирован: 18.09.2016

Интересует для любой из двух версий среды:

- новая (1.8.1 и старше);

- 1.0.5

AFAIK, при нажатии кнопки Verify/Upload выполняется некий набор команд, которые прописаны где-то там в конф файлах Arduino IDE. Одинаковый для сборки, и возможно ещё команда загрузки если жали Upload. Чуть иная команда если нажали Upload via programmer.

Первый вопрос, который меня интересует - где конкретно находятся эти команды? Дабы посмотреть, что вообще там возможно подправить.

Второй вопрос: существуют ли некоторые директивы/ифдефы, дающие возможность определить, что именно выбрано в Tools->Board, Tools-Port. Ежу понятно что ответ на этот вопрос - да - оно же как-то отличает сборку под atmega8 от сборки под atmega328. Интересует, на чём оно написано (MAKE-сценарий, .bat файлы или что), как разобраться в синтаксисе, если кто работал с этим.

Мне надо дописать в boards.txt новые типы платы с сетью, с возможностью удалённой загрузки, и дописать три команды:

1. запуск avr-objcopy чтобы сделать из Intel HEX файла BIN

2. [возможно] запуск моей софтины, подающей принудительную перезагрузку всех ардуин, соединённых с сетью - через TCP, через USB - не важно

3. запуск tftp чтобы загрузить этот BIN файл на некий IP.

НА КАКОЙ IP???7771! Ответ: не знаю. Возможно жёсткий. Возможно boards.txt позволяет насобачить ещё какие-то подменю в Tools->Board, как это сделано в версии среды 1.8.1 и старше - там же есть Processor, есть тактовая частота и ещё что-то. Сделаю тогда себе список IP 192.168.1.10-25 в особом меню, чтобы выбиралось как com-порт.

Нафига это надо? Ответ: чтобы грузить скетч в удалённую марахайку одной кнопкой. Специфика проектов, платы смонтированы под грязной лестницей, куда встать можно только раком. А сеть там есть. А заказчику надо тут подкрутить, там подменять. Маленькие переделки по 2 цифры в одной строке и всё, и лезть ради этого с ноутом под грязную лестницу не хочется. Хочется сидеть попой на мягком кресле за просторным столом из ЛДСП и жрать бургеры, в перерыве меняя те самые 2 циферки, нажимая их жирными пальцами на обблёваной клавиатуре видавшего виды и поплавленного сигаретными бычками ноута. Который боится пыли и не любит находиться в руках стоящего в позе раком владельца, под грязной лестницей.

Клапауций 112
Клапауций 112 аватар
Offline
Зарегистрирован: 01.03.2017

Voodoo Doll пишет:

чтобы грузить скетч в удалённую марахайку одной кнопкой.

ну, подключи себе OneDrive по протоколу WebDav и создавай скетчи на нём - будешь подключаться с любого компа с любой точки земного шара, а не только из под сраной лесницы в сраной Рашке.

или установи в хром удалённый рабочий стол и рули сраным компом из под сраной лестницы в сраной Рашке из ячейки ИГИЛ в Сирии.

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017
для всех процов из боард.тхт определены дефайны, например
 
#ifdef ARDUINO_AVR_MEGA2560
 ....
#else
 ....
#endif
wdrakula
wdrakula аватар
Offline
Зарегистрирован: 15.03.2016

по аглицки ведь читаешь?

Тут почти все есть, даже больше чем надо.

Тебе же проще всего uploader  свой добавить, а в нем уже написать, все что тебе нравится.

Это проще всего. Посмотри как добавляют другой тип аплоадера, например, для СТМ32 в качестве ардуинки.

Кстати, там есть и пример меню.

Трай энд вин! Короче.

Voodoo Doll
Voodoo Doll аватар
Offline
Зарегистрирован: 18.09.2016

Merci beacoup.