CraftDuino v2.0
  • - это CraftDuino - наш вариант полностью Arduino-совместимой платы.
  • CraftDuino - настоящий конструктор, для очень быстрого прототипирования и реализации идей.
  • Любая возможность автоматизировать что-то с лёгкостью реализуется с CraftDuino!
Просто добавьте CraftDuino!

Программирование Arduino при помощи Raspberry Pi



Чтобы программировать Arduino при помощи Raspberry Pi, достаточно установить Arduino IDE, а для этого достаточно выполнить команду:

sudo apt-get install arduino

После установки появляется каталог
/usr/share/arduino

Но для удобного программирования контроллера Arduino из-под командной строки можно использовать arduino-mk.

Пакет arduino-mk позволяет собирать и загружать скетчи Arduino на Raspberry Pi без использования Arduino IDE.

Установка пакета:
sudo apt-get install arduino-mk

Появится файл
/usr/share/arduino/Arduino.mk

Теперь можно тестировать.
Создадим каталог sketchbook и тестовый проект blink:

mkdir ~/sketchbook
cd ~/sketchbook
ln -s /usr/share/arduino/Arduino.mk
mkdir blink
cd blink
sudo nano blink.ino

// Blink

void setup(void) {
  pinMode(13, OUTPUT);
}

void loop() {
  digitalWrite(13, LOW);
  delay(1000);
  digitalWrite(13, HIGH);
  delay(1000);
}


создаём Makefile

sudo nano Makefile


BOARD_TAG = nano328
ARDUINO_PORT = /dev/ttyUSB1
ARDUINO_LIBS =
ARDUINO_DIR = /usr/share/arduino
include ../Arduino.mk


осталось выполнить
make
make upload


в результате выполнения команды
make
идёт сборка и появляется каталог build-cli, в котором содержится нужный .hex-файл

команда
make upload
вызывает avrdude, который заливает прошивку в МК.

доступны команды:

make — сборка без загрузки
make upload — собрать и загрузить
make clean — очистить
make depends — обновить зависимости
make reset — сброс Arduino передёргиванием DTR у последовательного порта
make raw_upload — загрузить без первоначального сброса
make show_boards — перечислить возможные типы плат, определённых в boards.txt

make show_boards


Tag          Board Name
atmega168    Arduino NG or older w/ ATmega168
atmega328    Arduino Duemilanove w/ ATmega328
atmega8      Arduino NG or older w/ ATmega8
bt           Arduino BT w/ ATmega168
bt328        Arduino BT w/ ATmega328
diecimila    Arduino Diecimila or Duemilanove w/ ATmega168
ethernet     Arduino Ethernet
fio          Arduino Fio
leonardo     Arduino Leonardo
lilypad      LilyPad Arduino w/ ATmega168
lilypad328   LilyPad Arduino w/ ATmega328
mega         Arduino Mega (ATmega1280)
mega2560     Arduino Mega 2560 or Mega ADK
mini         Arduino Mini w/ ATmega168
mini328      Arduino Mini w/ ATmega328
nano         Arduino Nano w/ ATmega168
nano328      Arduino Nano w/ ATmega328
pro          Arduino Pro or Pro Mini (3.3V, 8 MHz) w/ ATmega168
pro328       Arduino Pro or Pro Mini (3.3V, 8 MHz) w/ ATmega328
pro5v        Arduino Pro or Pro Mini (5V, 16 MHz) w/ ATmega168
pro5v328     Arduino Pro or Pro Mini (5V, 16 MHz) w/ ATmega328
uno          Arduino Uno


Видео по теме:


далее: Программы для взаимодействия Raspberry Pi с Arduino через последовательный порт

Ссылки:
Arduino IDE
Arduino from the command line
Arduino command line options

Пот теме:
Использование Raspberry Pi в стиле Arduino
Использование Raspberry Pi в роли Ethernet-шилда для Arduino

Питание для Raspberry Pi
Установка операционной системы для Raspberry Pi
Подключение модуля камеры к Raspberry Pi
Подключение Raspberry Pi к Wi-Fi
  • 0
  • 18 июля 2014, 11:25
  • admin

Комментарии (3)

RSS свернуть / развернуть
+
0
Попробовал. Получилось. Есть вопрос. Как прописать путь к подключаемым библиотекам? Чтоб не копировать их в папку /usr/share/arduino/libraries, а брать их из папки, например /home/pi/sketchbook/libraries
avatar

EL7617

  • 27 марта 2016, 09:58
+
0
Вопрос снимается. Оказывается, можно библиотеки класть в папку /home/pi/sketchbook/libraries. Главное, чтоб имя папки библиотеки совпадало с именем библиотеки
avatar

EL7617

  • 27 марта 2016, 14:42
+
0
Добрый!
Подскажите, как установить поддержку ARM? Нужно работать с DUE…
avatar

saer2

  • 18 августа 2016, 16:56

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.