Arduino отличный старт в изучении микроконтроллеров, но как обычно это бывает, хочется идти дальше, а для этого возникает другая ситуация, когда хочется уже прошить наконец свой микроконтроллер. Первый шаг бывает крайне тяжелым, даже не понимаешь, в какую сторону смотреть, не говоря уже про то, что именно надо делать. В основном речь идет о том, что надо бы использовать специальные устройства — программаторы, но так же в сети есть много сложных и не очень схем, в которых используются другие МК для прошивки и разной сложности способы. Но можно сказать с уверенностью, что самым простым способом является способ прошивки с платой Arduino. Нельзя сказать, что это самый лучший способ, но то, что он самый простой — это по праву.
Для начала давайте соберем не очень сложную схему. Нам будет помогать сама Arduino IDE. File->Examples->11.ArduinoISP->ArduinoISP этот пример является базовым, так что оттуда можно взять некоторую информацию
// 10: slave reset // 11: MOSI // 12: MISO // 13: SCK // Put an LED (with resistor) on the following pins: // 9: Heartbeat - shows the programmer is running // 8: Error - Lights up if something goes wrong (use red if that makes sense) // 7: Programming - In communication with the slave
Заливаем скетч ArduinoISP на Arduino и в общем программатор готов. Осталось подключить наш МК к программатору.
Подключаем согласно распиновке.
10 — RESET
11 — MOSI
12 — MISO
13 — SCK
на Atmega328 это 1, 17, 18, 19 пины соответственно
Кроме этого подключаем диоды
9 — зеленый, сигнальный, показывает когда программатор работает
8 — красный, горит, когда что-то пошло не так
7 — синий, моргает когда программатор работает в режиме закачки прошивки
а далее делает как написано тут Прошивка ATMEGA