В данной заметке я хочу описать действия, необходимые для настройки системы, в нашем случае Arch Linux, для программирования под Arduino. Для этого требуется:
- Установить пакеты для сборки программ и загрузки/выгрузки данных из микроконтроллера. К таким пакетам относятся: avr-binutils, avr-gcc, avr-libc, avrdude. Также, можно установить отладчик avr-gdb. Все эти пакеты доступны в репозитории community дистрибутива Arch Linux;
- Установить пакет arduino, содержащий Platform SDK. Пакет доступен в репозиториях AUR. Установить можно, воспользовавшись утилитой yaourt;
- Согласно рекомендациям в archwiki, а также рекомендациям, выданным системой после установки вышеуказанных пакетов, пользователю необходимо добавиться в группы tty, uucp, lock;
- При разработке программ нам здорово облегчит жизнь makefile, написанный одним добрым человеком. Скачать файл и почитать рекомендации по работе с ним можно ЗДЕСЬ.
И если у вас установлен emacs, то все готово для разработки. А если у вас любимым является другой редактор, то... его тоже можно использовать ) Мало того, я более чем уверен, что хуже IDE, идущей в составе пакета arduino, может быть только блокнот в виндовс.
Хорошо. Если все готово, то самое время провести тест. За базу возьмем код одного из простейших примеров, идущих в составе SDK.
- Создайте каталог для проекта. Пусть это будет blink.
- Создайте файл main.cpp следующего содержания.
#include <Arduino.h> int led = 13; void setup() { pinMode(led, OUTPUT); } void loop() { digitalWrite(led, HIGH); delay(1000); digitalWrite(led, LOW); delay(1000); } int main(void) { init(); setup(); while (1) { loop(); } return 0; }
- Поместите в каталог проекта файл arduino.mk, скачанный по ссылке из п. 4 описания настройки системы.
- Создайте Makefile следующего содержания.
Разумеется, что если у вас плата, отличная от моей, то измените значение параметра BOARD. Кроме того, если вы разместили файл arduino.mk в более удобном месте для использования в разных проектах, то последнюю строчку Makefile тоже необходимо откорректировать соответствующим образом.TARGET := blink SOURCES := main.cpp #LIBRARIES := BOARD := mega include arduino.mk
- Сборка проекта. Для этого необходимо выполнить команду make target в каталоге проекта. В результате будет создан hex файл.
- Загрузите программу в микроконтроллер. Для этого, также в каталоге проекта, необходимо выполнить команду make upload.
Это все. Наслаждайтесь разработкой под Arduino в любимой OS и в любимом редакторе!
Комментариев нет:
Отправить комментарий