Raspberry Pi:Аппаратные средства/Распиновка GPIO/ATmega 328p/Arduino через SPI

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.



ATmega 328p/Arduino через SPI

Знаете ли вы, что при помощи вашей Pi можно напрямую питать и программировать ATmega 328p/Arduino? Причем для этого нужны всего несколько проводов, макетная плата (она же бридборд), кварцевый резонатор на 16 МГц и немного конденсаторов на 22 пикафарад.

Если хотите попробовать, то можно начать, к примеру, с этого урока.

Вам надо будет установить AVRDude, модифицированный Гордоном Хендерсоном (Gordon Henderson).

Теперь подключите BCM 8 (CE0; на Raspberry Pi) к Reset (RST; на Arduino), BCM 9 (MISO) — к D12 (MISO), BCM 10 (MOSI) — к D11 (MOSI), BCM 11 (SCLK) — к D13 (SCLK).

Затем запитайте ATmega от контактов 3v3 и GND на Pi, после чего убедитесь, не запущено ли у вас лишних SPI-драйверов и правильно ли все подключено:

avrdude -p m328p -c gpio

Чтобы компилировать скетчи Arduino, введите следующую команду:

sudo apt-get install arduino arduino-mk

Этого базового мейк-файла для начала должно хватить. Создаем базовый скетч, называем его mysketch.ino и запускаем:

export BOARD=atmega328
make
avrdude -p m328p -c gpio -e -U flash:w:build-cli/Arduino.hex
  • Использует четыре GPIO-контакта


См.также

Внешние ссылки