Перед тим як почати перетворення Raspberry Pi в AVR-програматор. треба переконатися що SPI на вашому Raspberry Pi працює. Перевіряємо файл /etc/modprobe.d/raspi-blacklist.conf
Рядки що стосуються SPI, має бути заремлени. Приклад файлу / etc / modprobe.d / raspi-blacklist.conf:
Клонуємо проект avrdude:
Для того, щоб його скомпілювати avrdude встановлюємо такі пакети:
Можливо доведеться встановити make і gcc якщо у Вас ще немає:
Запустимо bootstrap. Якщо йому чогось не буде вистачати, він скаже:
Якщо все в порядку, компілюємо і встановлюємо avrdude:
Після інсталяції avrdude подивимося що він вміє:
У списку программаторов повинні побачити linuxspi - це те, що нам потрібно.
Підключаємо мікроконтролер до Raspberry Pi за наступною схемою:
Vcc -> +3.3
GND -> GND
Reset -> GPIO25
SCK -> SCLK
MISO -> MISO
MOSI -> MOSI
Тут треба зауважити, що мікроконтролери, які Ви збираєтеся програмувати, повинні працювати від живлення напругою 3.3 В. НЕ ТРЕБА підключати мікроконтролери до +5. Якщо це зробити, можна спалити Raspberry Pi. Тому дуже уважно перевірте чи не підключили Ви випадково Ваш контролер до +5. І тільки після того, як переконаєтеся в тому, що все зробили правильно, включайте харчування Raspberry Pi.
Програмуємо мікроконтролер ATMega8. заливаємо в нього dump.hex: