Raspberry Pi:Аппаратные средства/Распиновка GPIO/ATmega 328p/Arduino через SPI: различия между версиями
Myagkij (обсуждение | вклад) Нет описания правки |
Нет описания правки |
||
Строка 3: | Строка 3: | ||
{{Myagkij-редактор}} | {{Myagkij-редактор}} | ||
==ATmega 328p/Arduino через SPI== | ==ATmega 328p/Arduino через SPI== |
Текущая версия от 13:08, 18 июня 2023
Содержание | Введение | Продукты | Операционная система | Настройка | Основы Linux | Аппаратные средства | Неисправности | Типовые проблемы | Часто возникающие вопросы | Библиотеки | Примеры |
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-контакта