Site Loader

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

Как ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ avrdude, быстрый старт | avr

НавСрняка Ρƒ Вас ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ макСтная ΠΏΠ»Π°Ρ‚Π° Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π΅ AVR (скорСС всСго Arduino Uno Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π΅ ATmega328P ΠΈΠ»ΠΈ какая-Π½ΠΈΠ±ΡƒΠ΄ΡŒ аналогичная), ΠΈ Π’Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ Π΅Ρ‘ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‚. Π΅. ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π² ΠΏΠ°ΠΌΡΡ‚ΡŒ кристалла ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°. Π•ΡΡ‚ΡŒ мноТСство Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… способов, здСсь Π±ΡƒΠ΄Π΅Ρ‚ рассмотрСн Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ использования Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ инструмСнта ΠΊΠ°ΠΊ avrdude.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ слСдуСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ avrdude? По ΠΌΠ½ΠΎΠ³ΠΈΠΌ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌ — ΠΎΠ½ бСсплатСн, Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π° Π»ΡŽΠ±Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСмах (Linux, Windows, MacOS), ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ всС популярныС ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹ программирования. Π’. Π΅. ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π»ΡŽΠ±Ρ‹ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠΌ (USBasp, AVR-mkII ΠΈ Ρ‚. Π΄. [3]), Π² Ρ‚ΠΎΠΌ числС ΠΈ с Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ°ΠΌΠΈ Arduino ΠΈ USBasp [4,5].

Avrdude это ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ для Π΅Ρ‘ использования придСтся ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ Π΅Ρ‘ ΠΎΠΏΡ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ настраиваСтся Ρ‚ΠΈΠΏ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π°, задаСтся ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ Ρ‡ΠΈΠΏ, Ρ„Π°ΠΉΠ» ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΈ Ρ„ΡŒΡŽΠ·Ρ‹. ΠŸΠΎΠ½Π°Ρ‡Π°Π»Ρƒ это ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ слоТным, Π½ΠΎ Ссли Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ, Ρ‚ΠΎ окаТСтся, Ρ‡Ρ‚ΠΎ командная строка это ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ прСдоставляСт ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΉ способ Ρ€Π°Π±ΠΎΡ‚Ρ‹ со ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ срСдами программирования. НапримСр, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ для AVR Π΄Π°ΠΆΠ΅ Π² срСдС Microsoft Visual Studio, запуская процСсс компиляции с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄ makefile, ΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° настройкой запуска внСшнСй ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ прямо ΠΈΠ· Visial Studio (ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ см. [6]). Π£Ρ‚ΠΈΠ»ΠΈΡ‚Ρƒ avrdude ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Ρ‚Π°ΠΊΠΆΠ΅ срСда программирования Arduino для ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ памяти ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° ΠΏΠ»Π°Ρ‚Ρ‹ Ρ‡Π΅Ρ€Π΅Π· Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ UART.

[Π“Π΄Π΅ Π²Π·ΡΡ‚ΡŒ avrdude]

Бсылки для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ AVRDUDE Π»ΡƒΡ‡ΡˆΠ΅ всСго Π½Π°ΠΉΡ‚ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Google. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ avrdude.exe находится Π² ΠΏΠ°ΠΊΠ΅Ρ‚Π΅ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° WinAVR, Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠ½Π° Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π² ΠΏΠ°ΠΊΠ΅Ρ‚ срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Arduino IDE. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ скачайтС ΠΈ установитС Π»ΠΈΠ±ΠΎ WinAVR, Π»ΠΈΠ±ΠΎ срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Arduino. Как Π²Π°Ρ€ΠΈΠ°Π½Ρ‚, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ Π°Ρ€Ρ…ΠΈΠ² [12], Ρ‚Π°ΠΌ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ всС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ΅ для этой ΡΡ‚Π°Ρ‚ΡŒΠΈ, Π² Ρ‚ΠΎΠΌ числС ΠΈ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ avrdude.

Π Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ вСрсии avrdude ΠΈ PDF-Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ ΠΏΠΎ ссылкС http://download.savannah.gnu.org/releases/avrdude/.

Онлайн-докумСнтация: http://www.nongnu.org/avrdude/user-manual/avrdude.html.

[Запуск avrdude]

Π’ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмС Windows трСбуСтся ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΎΠΊΠ½ΠΎ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Π° ΠΊΠΎΠΌΠ°Π½Π΄ cmd.exe. Для этого Π² Start Menu (ΠΊΠ½ΠΎΠΏΠΊΠ° ПУБК) Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Run… (Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ…), Π² ΠΎΠΊΠ½Π΅ ΠΏΡ€ΠΈΠ³Π»Π°ΡˆΠ΅Π½ΠΈΡ Π²Π²Π΅Π΄ΠΈΡ‚Π΅ cmd ΠΈ ΠΊΠ»ΠΈΠΊΠ½ΠΈΡ‚Π΅ ΠΏΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ΅ OK.

Π’ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмС MacOS X ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Terminal для получСния доступа ΠΊ интСрфСйсу Π²Π²ΠΎΠ΄Π° ΠΊΠΎΠΌΠ°Π½Π΄. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Terminal находится Π² ΠΏΠ°ΠΏΠΊΠ΅ Utilites.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π² ΠΎΠΊΠ½Π΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π° Π²Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ avrdude ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ Ender, Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° avrdude выдаст подсказку Π² Π²ΠΈΠ΄Π΅ списка основных ΠΎΠΏΡ†ΠΈΠΉ.

[ОписаниС ΠΎΠΏΡ†ΠΈΠΉ AVRDUDE]

ΠžΠΏΡ†ΠΈΠΉ довольно ΠΌΠ½ΠΎΠ³ΠΎ. НС ΠΏΡ‹Ρ‚Π°ΠΉΡ‚Π΅ΡΡŒ ΠΈΡ… всС Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Π½ΡƒΠΆΠ½ΠΎ просто ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΎΠ±Ρ‰Π΅Π΅ прСдставлСниС ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ эти ΠΎΠΏΡ†ΠΈΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π΄Π΅Π»Π°Ρ‚ΡŒ.

-p partno: эта опция просто Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π΅, ΠΊΠ°ΠΊΠΎΠΉ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ AVR Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ. НапримСр, Ссли Π’Ρ‹ ΡΠΎΠ±Ρ€Π°Π»ΠΈΡΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ATtiny2313, Ρ‚ΠΎ Π² качСствС partno Π²Π²Π΅Π΄ΠΈΡ‚Π΅ attiny2313.

-b baudrate: эта опция ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для настройки скорости ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… (Ρ‡Π΅Ρ€Π΅Π· RS-232, UART) для ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ², Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… ΠΏΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°ΠΌ Π½Π°ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅ STK200 ΠΈΠ»ΠΈ STK500 STK500. Часто эту ΠΎΠΏΡ†ΠΈΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ, настроСнная ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.

-B bitrate: эта опция мСняСт ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ слСдования Π±ΠΈΡ‚, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ общаСтся с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌ Ρ‡ΠΈΠΏΠΎΠΌ. Если Π’Π°Ρˆ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ тактируСтся ΠΎΡ‡Π΅Π½ΡŒ Π½ΠΈΠ·ΠΊΠΎΠΉ частотой, Ρ‚ΠΎ потрСбуСтся ΡΠ½ΠΈΠ·ΠΈΡ‚ΡŒ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ… программирования. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π° высокой частотС (8 ΠœΠ“Ρ† ΠΈ Π²Ρ‹ΡˆΠ΅, особСнно Ссли ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠ²Π°Ρ€Ρ†Π΅Π²Ρ‹ΠΉ Ρ€Π΅Π·ΠΎΠ½Π°Ρ‚ΠΎΡ€), Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ эта опция примСняСтся Ρ€Π΅Π΄ΠΊΠΎ.

-C config-file: это Ρ„Π°ΠΉΠ» ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ avrdude ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… способах, ΠΊΠ°ΠΊ Π΅ΠΌΡƒ ΠΎΠ±Ρ‰Π°Ρ‚ΡŒΡΡ с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠΌ. Π˜ΠΌΠ΅Π΅Ρ‚ΡΡ Ρ„Π°ΠΉΠ» ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π±Π΅Π· указания -C ΠΎΠΏΡ†ΠΈΠΈ, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ эта опция ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π½Π΅ Π½ΡƒΠΆΠ½Π°.

Если ΠΏΡƒΡ‚ΡŒ Π΄ΠΎ Ρ„Π°ΠΉΠ»Π° ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹, Ρ‚ΠΎ Π΅Π³ΠΎ слСдуСт Π±Ρ€Π°Ρ‚ΡŒ Π² Π΄Π²ΠΎΠΉΠ½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ. НапримСр: -C»C:\Program Files\Arduino1.0.6\hardware\tools\avr\etc\avrdude.conf».

-c programmer: эта опция Π·Π°Π΄Π°Π΅Ρ‚ Ρ‚ΠΈΠΏ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° (Π΅Π³ΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»). НапримСр, Ссли ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ STK500, Ρ‚ΠΎ ΡƒΠΊΠ°ΠΆΠΈΡ‚Π΅ stk500, Ссли ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ DT006, Ρ‚ΠΎ ΡƒΠΊΠ°ΠΆΠΈΡ‚Π΅ dt006, ΠΈ Ρ‚. Π΄.

-D: опция Π·Π°ΠΏΡ€Π΅Ρ‰Π°Π΅Ρ‚ очистку памяти Ρ‡ΠΈΠΏΠ° ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ. Π‘ΠΊΠΎΡ€Π΅Π΅ всСго, эта опция Π’Π°ΠΌ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ потрСбуСтся.

-P port: опция Π·Π°Π΄Π°Π΅Ρ‚ ΠΏΠΎΡ€Ρ‚ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠΌ ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠΌ. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ COM1, LPT1 ΠΈΠ»ΠΈ USB.

-F: опция отмСняСт ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ сигнатуры, которая позволяСт ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ Ρ‡ΠΈΠΏ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚ΠΎΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΡƒΠΆΠ΅Π½. ΠΠ°ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ рСкомСндуСтся Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ эту ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ для тСстирования соСдинСния, поэтому Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ эту ΠΎΠΏΡ†ΠΈΡŽ.

-e: опция очистки памяти Ρ‡ΠΈΠΏΠ°. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ Π΅Ρ‘ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ очистка FLASH выполняСтся автоматичСски ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ.

-U memtype:r|w|v:filename[:format]: Π° Π²ΠΎΡ‚ эта ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡƒΠΆΠ΅ ΠΏΠΎ-настоящСму Π²Π°ΠΆΠ½Π°. ИмСнно ΠΎΠ΄Π½Π° Π·Π°Π΄Π°Π΅Ρ‚, ΠΊΠ°ΠΊΠΎΠ΅ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΎ. Π—Π΄Π΅ΡΡŒ memtype ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ flash ΠΈΠ»ΠΈ eeprom для памяти, Π»ΠΈΠ±ΠΎ hfuse, lfuse ΠΈΠ»ΠΈ efuse для ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Ρ„ΡŒΡŽΠ·ΠΎΠ² Ρ‡ΠΈΠΏΠ°. Π‘ΡƒΠΊΠ²Ρ‹ r|w|v ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ Π½Π°Π΄ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ, Ρ‚. Π΅. r (read, Ρ‡Ρ‚Π΅Π½ΠΈΠ΅), w (write, запись) ΠΈΠ»ΠΈ v (verify, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° памяти). Π§Π°ΡΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ filename Π·Π°Π΄Π°Π΅Ρ‚ имя Ρ„Π°ΠΉΠ»Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π½ ΠΈΠ»ΠΈ записан Π²ΠΎ врСмя выполнСния ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. [:format] Π·Π°Π΄Π°Π΅Ρ‚ ΠΎΠΏΡ†ΠΈΡŽ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Ρ„Π°ΠΉΠ»Π°. Π§Π°Ρ‰Π΅ всСго ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Intel Hex [7], ΠΈ Ρ„Π°ΠΉΠ» Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ *.hex». Если Π’Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ„Π°ΠΉΠ» test.hex Π² ΠΏΠ°ΠΌΡΡ‚ΡŒ flash, Ρ‚ΠΎ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ -U flash:w:test.hex:i. Если Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΏΠ°ΠΌΡΡ‚ΡŒ eeprom Π² Ρ„Π°ΠΉΠ» «eedump.hex», Ρ‚ΠΎ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ -U eeprom:r:eedump.hex:i.

Если ΠΏΡƒΡ‚ΡŒ Π΄ΠΎ Ρ„Π°ΠΉΠ»Π° ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹, Ρ‚ΠΎ Π΅Π³ΠΎ слСдуСт Π±Ρ€Π°Ρ‚ΡŒ Π² Π΄Π²ΠΎΠΉΠ½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ.

-n: это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… дСйствий записи ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚. Команда ΠΏΠΎΠ»Π΅Π·Π½Π°, ΠΊΠΎΠ³Π΄Π° Π’Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π½ΠΈ ΠΎΠ΄Π½Π° ΠΈΠ· отправляСмых ΠΊΠΎΠΌΠ°Π½Π΄ Π½Π΅ ΠΏΠΎΠ²Ρ€Π΅Π΄ΠΈΡ‚ содСрТимоС памяти Ρ‡ΠΈΠΏΠ°. Π­Ρ‚ΠΎ Ρ€Π°Π·Π½ΠΎΠ²ΠΈΠ΄Π½ΠΎΡΡ‚ΡŒ ‘Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ бСзопасности’.

-V: Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ содСрТимого памяти ΠΏΡ€ΠΈ записи. НС ΡΠΎΠ²Π΅Ρ‚ΡƒΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ эту ΠΎΠΏΡ†ΠΈΡŽ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π΄Π°Π΅Ρ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΡƒΠ²Π΅Ρ€Π΅Π½Π½ΠΎΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΠ°ΠΌΡΡ‚ΡŒ записана ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ.

-u: Π·Π°ΠΏΡ€Π΅Ρ‚ Ρ€Π΅ΠΆΠΈΠΌΠ° бСзопасности. Π­Ρ‚ΠΎ установка ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, ΠΊΠΎΠ³Π΄Π° avrdude запускаСтся ΠΈΠ· скрипта. Если Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΈΡ‚Ρ‹ Ρ„ΡŒΡŽΠ·ΠΎΠ², Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ эту ΠΎΠΏΡ†ΠΈΡŽ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ явно ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€Π΄ΠΈΡ‚ΡŒ свои намСрСния (подавляСт Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ запрос подтвСрТдСния).

-t: запускаСт Ρ€Π΅ΠΆΠΈΠΌ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°, ΠΊΠΎΠ³Π΄Π° Π’Ρ‹ Π²Π²ΠΎΠ΄ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ строка Π·Π° строкой. НС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ этот Ρ€Π΅ΠΆΠΈΠΌ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ это добавляСт слоТности.

-E: Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ спСцификации ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π°, Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ эту ΠΎΠΏΡ†ΠΈΡŽ.

-v: опция Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹ΠΉ Π²Ρ‹Π²ΠΎΠ΄ сообщСний. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ для диагностики, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ эта опция Π½Π΅ Π½ΡƒΠΆΠ½Π°.

-q: дСйствиС этой ΠΎΠΏΡ†ΠΈΠΈ Π΄Π°Π΅Ρ‚ ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½Ρ‹ΠΉ эффСкт ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с ΠΎΠΏΡ†ΠΈΠ΅ΠΉ -v, Ρ‚. Π΅. количСство Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ΡΡ. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ эта опция Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ.

Π’ этом спискС красным Ρ†Π²Π΅Ρ‚ΠΎΠΌ Π²Ρ‹Π΄Π΅Π»Π΅Π½Ρ‹ Ρ‚Π΅ ΠΎΠΏΡ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ скорСС всСго Π’Π°ΠΌ понадобятся. Π”Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ использованиС этих ΠΎΠΏΡ†ΠΈΠΉ.

[-c programmer]

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ список ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ² (ΠΈ Π½Π°ΠΉΡ‚ΠΈ Ρ‚ΠΎΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρƒ Вас), Π²Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ avrdude -c qwerty (здСсь qwerty это ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ символов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ соотвСтствуСт Π½ΠΈ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΈΠ· ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ²). Как Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²Π΅Π΄Π΅Π½ список ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ².

НайдитС Π² этом спискС имя, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ Π’Π°ΡˆΠ΅ΠΌΡƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΌΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Ρƒ. Π­Ρ‚ΠΎ имя слСдуСт ΠΏΠΎΠ΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Π² ΠΎΠΏΡ†ΠΈΡŽ -c programmer.

[-p partno]

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ список ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² AVR, Π²Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ avrdude -c avrisp (ΠΏΡ€ΠΈ этом Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ значСния, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Π»ΠΈ Π’Ρ‹ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ avrisp) Π±Π΅Π· указания ΠΈΠΌΠ΅Π½ΠΈ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°. НС слСдуСт Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Ρ‚ΡŒ этот Π΄Π»ΠΈΠ½Π½Ρ‹ΠΉ список, ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ·Π½Π°Ρ‚ΡŒ Π½ΡƒΠΆΠ½ΠΎΠ΅ имя для ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ³ΠΎ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ слСдуСт ΠΏΠΎΠ΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡƒΡŽ строку вмСстС с ΠΎΠΏΡ†ΠΈΠ΅ΠΉ -p partno.

Π’ этом спискС ΡƒΠΊΠ°Π·Π°Π½Ρ‹ псСвдонимы всСх Ρ‡ΠΈΠΏΠΎΠ² ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ², ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π·Π½Π°Π΅Ρ‚ avrdude. Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΈΠ· Π½ΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΡŽΡ‚ΡΡ Ρ‡Π΅Ρ€Π΅Π· интСрфСйс ISP.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ названия ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ Ρ‡ΠΈΠΏΠΎΠ² t2313 ΠΈ 2313, m8 ΠΈ m88, c128 ΠΈ m128 выглядят ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠ΅, Π½ΠΎ Π½Π° самом Π΄Π΅Π»Π΅ это Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ Ρ€Π°Π·Π½Ρ‹Π΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ²! ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π²ΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°Π½ΠΈΠ΅ ошибки ΡΠΎΠ²Π΅Ρ‚ΡƒΡŽ Π’Π°ΠΌ вмСсто псСвдонима Ρ‡ΠΈΠΏΠ° ввСсти Π΅Π³ΠΎ ΠΏΠΎΠ»Π½ΠΎΠ΅ имя. Π’. Π΅. вмСсто t2313 ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ attiny2313, ΠΈΠ»ΠΈ вмСсто m8 ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ atmega8. Avrdude достаточно ΡƒΠΌΠ΅Π½, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°ΡΠΏΠΎΠ·Π½Π°Ρ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ Ρ‚ΠΈΠΏ Ρ‡ΠΈΠΏΠ° ΠΏΠΎ Π΅Π³ΠΎ ΠΏΠΎΠ»Π½ΠΎΠΌΡƒ ΠΈΠΌΠ΅Π½ΠΈ.

Π’Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ модСль ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ³ΠΎ Ρ‡ΠΈΠΏΠ° ΠΏΠΎ ΠΌΠ°Ρ€ΠΊΠΈΡ€ΠΎΠ²ΠΊΠ΅ Π½Π° Π΅Π³ΠΎ Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ сторонС корпуса. К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, Ρ‚Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ написано ATTINY2313 ΠΈ ATMEGA8, Буффиксы -20PI ΠΈ -16PC Π² ΠΌΠ°Ρ€ΠΊΠΈΡ€ΠΎΠ²ΠΊΠ΅ просто ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ скоростныС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°, ΠΈ ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π½Π° эти суффиксы Π½Π΅ стоит ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒ внимания.

[-P port]

Π­Ρ‚Π° опция Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ avrdude, Π³Π΄Π΅ ΠΈΡΠΊΠ°Ρ‚ΡŒ Π’Π°Ρˆ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€. Если Π’Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ устройство, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠ΅ Ρ‡Π΅Ρ€Π΅Π· USB, Ρ‚ΠΎ просто ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚Π΅ ΠΎΠΏΡ†ΠΈΡŽ -P usb ΠΈΠ»ΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΠΉΡ‚Π΅ Π΅Ρ‘. Π£Ρ‚ΠΈΠ»ΠΈΡ‚Π° avrdude автоматичСски распознаСт ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ для ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ являСтся устройством USB.

Если Π’Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹ΠΉ (LPTx) ΠΈΠ»ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ (COMx) ΠΏΠΎΡ€Ρ‚ для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° (Ρ‡Ρ‚ΠΎ сСйчас ΡƒΠΆΠ΅ ΠΏΠΎΡ‡Ρ‚ΠΈ Π½Π΅ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρ‹ с Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΏΠΎΡ€Ρ‚Π°ΠΌΠΈ ΡƒΠΆΠ΅ практичСски Π½Π΅ Π²Ρ‹ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ), Ρ‚ΠΎ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ эту ΠΎΠΏΡ†ΠΈΡŽ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΠΎΡ€Ρ‚, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€. На ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмС Windows Π² 99% случаСв это Π±ΡƒΠ΄Π΅Ρ‚ lpt1 (для ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡ€Ρ‚Π°) ΠΈΠ»ΠΈ com1 (для ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡ€Ρ‚Π°), Π½ΠΎ Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ всСгда ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ это Ρ‡Π΅Ρ€Π΅Π· просмотр Ρ€Π°Π·Π΄Π΅Π»Π° «Ports (COM & LPT)», ΠΏΠΎ-русски это Ρ€Π°Π·Π΄Π΅Π» «ΠŸΠΎΡ€Ρ‚Ρ‹ (COM ΠΈ LPT)» Π΄Π΅Ρ€Π΅Π²Π° Device Manager (ΠœΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ Устройств). ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΡƒΡŽ панСль System Properties (Бвойства БистСмы), ΠΈ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π·Π°ΠΊΠ»Π°Π΄ΠΊΡƒ Hardware (ΠžΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅):

ΠšΠ»ΠΈΠΊΠ½ΠΈΡ‚Π΅ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ΅ Device Manager (ΠœΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ Устройств), ΠΈ Ρ€Π°Π·Π²Π΅Ρ€Π½ΠΈΡ‚Π΅ ΠΏΡƒΠ½ΠΊΡ‚ Ports (ΠŸΠΎΡ€Ρ‚Ρ‹).

Π—Π΄Π΅ΡΡŒ Π±ΡƒΠ΄ΡƒΡ‚ пСрСчислСны всС ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ΡΡ Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠΎΡ€Ρ‚Ρ‹. ΠœΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ нСсколько ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠΎΡ€Ρ‚ΠΎΠ², Π½ΠΎ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΡ€Ρ‚ (Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ ΠΏΠΎΡ€Ρ‚ ΠΏΡ€ΠΈΠ½Ρ‚Π΅Ρ€Π°) Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½.

На ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°Ρ… Mac Π½Π΅ Π±Ρ‹Π²Π°Π΅Ρ‚ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠΎΡ€Ρ‚ΠΎΠ². Однако Ссли Π’Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Π°Π΄Π°ΠΏΡ‚Π΅Ρ€ USB-serial (Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Ρ‹ STK500 ΠΈΠ»ΠΈ AVRISP v1 вмСстС с ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠΌ Mac), Ρ‚ΠΎ для avrdude Π½ΡƒΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΡ€Ρ‚. НС ΠΏΠΎΠΊΠ° знаю Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠ³ΠΎ способа ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ ΠΏΠΎΡ€Ρ‚ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ для этого ΠΎΠΊΠ½ΠΎ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°, Π³Π΄Π΅ Π½ΡƒΠΆΠ½ΠΎ ввСсти ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ ls -l /dev/cu.* (скорСС всСго, Π½Π° Linux ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅ способ, ΠΈΠ»ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ dmesg). НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Π²Ρ‹Π²ΠΎΠ΄Π° этой ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.

/dev/cu.Bluetooth это встроСнный ΠΏΠΎΡ€Ρ‚ bluetooth, ΠΎΠ½ Π½Π΅ Π½ΡƒΠΆΠ΅Π½. /dev/cu.modem это ΠΌΠΎΠ΄Π΅ΠΌ (Ссли ΠΎΠ½ имССтся Π½Π° Π’Π°ΡˆΠ΅ΠΌ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅), Π΅Π³ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΡ€Ρ‚Ρ‹ Π½Π°ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅ /dev/cu.usbserial ΠΈΠ»ΠΈ /dev/cu.KeySerial1. Π’ ΠΌΠΎΠ΅ΠΌ случаС это ΠΏΠΎΡ€Ρ‚ /dev/cu.usbserial-FTCTYG5U.

[-U memtype:r|w|v:filename:format]

Π­Ρ‚ΠΎ опция, которая описываСт, ΠΊΠ°ΠΊ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎ Π±ΡƒΠ΄ΡƒΡ‚ Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒΡΡ Π΄Π°Π½Π½Ρ‹Π΅ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€. Команда выглядит довольно слоТной, Π½ΠΎ ΠΌΡ‹ рассмотрим Π΅Ρ‘ ΠΏΠΎ частям.

memtype ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π»ΠΈΠ±ΠΎ flash, Π»ΠΈΠ±ΠΎ eeprom, Π»ΠΈΠ±ΠΎ hfuse (ΡΡ‚Π°Ρ€ΡˆΠΈΠΉ Π±Π°ΠΉΡ‚ Ρ„ΡŒΡŽΠ·ΠΎΠ²), Π»ΠΈΠ±ΠΎ lfuse (младший Π±Π°ΠΉΡ‚ Ρ„ΡŒΡŽΠ·ΠΎΠ²) ΠΈΠ»ΠΈ efuse (Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ Π±Π°ΠΉΡ‚ Ρ„ΡŒΡŽΠ·ΠΎΠ²).

r|w|v ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π»ΠΈΠ±ΠΎ r (read, Ρ‡Ρ‚Π΅Π½ΠΈΠ΅), w (write, запись), v (verify, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°).

filename имя Π²Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ (для записи ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ) ΠΈΠ»ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ (для чтСния) Ρ„Π°ΠΉΠ»Π°.

[:format] Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ опция, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰Π°Ρ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Ρ„Π°ΠΉΠ»Π°. МоТно ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ эту ΠΎΠΏΡ†ΠΈΡŽ ΠΏΡ€ΠΈ записи, Π½ΠΎ для чтСния ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΠΉΡ‚Π΅ i, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠΉ Ρ„Π°ΠΉΠ» ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Intel Hex [7] (это Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ распространСнный Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Ρ„Π°ΠΉΠ»Π°).

Для ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» firmware.hex Π² ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ (flash), ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ -U flash:w:firmware.hex, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ содСрТимоС памяти eeprom Π½Π° соотвСтствиС Ρ„Π°ΠΉΠ»Ρƒ mydata.eep, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ -U eeprom:v:mydata.eep, ΠΈ для чтСния младшСго Π±Π°ΠΉΡ‚Π° Ρ„ΡŒΡŽΠ·ΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ -U lfuse:r:lfusefile.hex:i.

[Как ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ]

Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… Π½ΠΈΠΆΠ΅ я Π±ΡƒΠ΄Ρƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ mkII-slim [8] (это ΠΊΠ»ΠΎΠ½ Ρ„ΠΈΡ€ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ AVRISP-mkII ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Atmel) ΠΈ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ USBasp Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ программирования Ρ‡ΠΈΠΏΠΎΠ² ATmega328P ΠΈ ATmega32A Ρ‡Π΅Ρ€Π΅Π· интСрфСйс ISP ΠΈ Ρ‡Π΅Ρ€Π΅Π· интСрфСйс USB. Π‘Π°ΠΌΠΎ собой, Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π° Π’Π°Ρˆ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ Ρ‡ΠΈΠΏ ΠΈ Π΅Π³ΠΎ Ρ„ΡŒΡŽΠ·Ρ‹.

ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΡŒΡ‚Π΅ Π’Π°ΡˆΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρƒ, ΡƒΠ΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΊ Π½Π΅ΠΉ ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ (для программирования трСбуСтся Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ питания Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΠΎΠΌ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π΅). ΠŸΠ»Π°Ρ‚Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΈΡ‚Π°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΊ ΠΎΡ‚ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ внСшнСго источника питания, Ρ‚Π°ΠΊ ΠΈ ΠΎΡ‚ ΠΊΠΎΠ½Π½Π΅ΠΊΡ‚ΠΎΡ€Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π°, Ссли ΠΎΠ½ это позволяСт.

ΠŸΡ€ΠΎΡˆΠΈΠ²Π°Ρ‚ΡŒ я Π±ΡƒΠ΄Ρƒ тСстовый ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΠΈΠ³Π°ΡŽΡ‰ΠΈΠΉ свСтодиодом Π½Π° ΠΏΠ»Π°Ρ‚Π΅ (Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ Hello World для ΠΌΠΈΡ€Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ²). Если ΠΊΠΎΠΌΡƒ-Ρ‚ΠΎ интСрСсно, Ρ‚ΠΎ ΠΊΠΎΠ΄ этого ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ Π²ΠΎ Π²Ρ€Π΅Π·ΠΊΠ΅, ΠΈΠ»ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ AVR Studio ΠΏΠΎ ссылкС [12] (см. ΠΏΠ°ΠΏΠΊΡƒ HelloWorld Π°Ρ€Ρ…ΠΈΠ²Π°).

Π—Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ Ρ„Π°ΠΉΠ» ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ (Hello-World-Arduino-ATmega328.hex, Hello-World-metaboard-ATmega328.hex ΠΈΠ»ΠΈ Hello-World-ATmega32A.hex, ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠΉ, Π² зависимости ΠΎΡ‚ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ) Π² Π·Π°Ρ€Π°Π½Π΅Π΅ извСстный ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ Π½Π° дискС, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ C:\temp. Π­Ρ‚ΠΎΡ‚ ΠΏΡƒΡ‚ΡŒ Π΄ΠΎ Ρ„Π°ΠΉΠ»Π° Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ -U. Π“ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π²Π·ΡΡ‚ΡŒ ΠΈΠ· ΠΏΠ°ΠΏΠΊΠ΅ HEX Π°Ρ€Ρ…ΠΈΠ²Π° [12].

ВсС ΠΏΠ»Π°Ρ‚Ρ‹ Arduino ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎ, Ρ‡Π΅Ρ€Π΅Π· интСрфСйс USB. ΠŸΡ€ΠΈ этом ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ UART (интСрфСйс USB ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎ, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ‡ΠΈΠΏΠ°). Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π² ΠΏΠ»Π°Ρ‚Ρƒ Arduino Nano Π±ΡƒΠ΄Π΅Ρ‚ записана ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ° HEX\Hello-World-Arduino-ATmega328.hex. Π—Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ самопрограммирования памяти ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ AVR [9]. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Ρ„ΡŒΡŽΠ·Ρ‹ Ρ‚Π°ΠΊΠΈΠΌ способом Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ нСльзя (самопрограммированиС памяти ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° AVR Π½Π΅ распространяСтся Π½Π° Ρ„ΡŒΡŽΠ·Ρ‹).

ΠŸΡ€ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ Hello-World-Arduino-ATmega328.hex Π±Ρ‹Π»ΠΎ ΡƒΡ‡Ρ‚Π΅Π½ΠΎ, Ρ‡Ρ‚ΠΎ свСтодиод ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΊ ΠΏΠΎΡ€Ρ‚Ρƒ PB5 (Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ ΠΏΠΎΡ€Ρ‚ D13 Arduino).

#define LED    PB5      //Для ΠΏΠ»Π°Ρ‚ Arduino Uno ΠΈ metaboard.

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ ΠΏΠ»Π°Ρ‚Ρƒ Arduino Nano Ρ‡Π΅Ρ€Π΅Π· USB (ΠΏΡ€ΠΈ этом Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ ATmega328 Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ΄Π°Π½ΠΎ ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅), ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

avrdude -C"C:\Program Files\Arduino1.0.6\hardware\tools\avr\etc\avrdude.conf" -pm328p -carduino
 -PCOM20 -b57600 -Uflash:w:c:\temp\HEX\Hello-World-Arduino-ATmega328.hex:i

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: здСсь подразумСваСтся, Ρ‡Ρ‚ΠΎ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ COM-ΠΏΠΎΡ€Ρ‚, Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π° ΠΏΠ»Π°Ρ‚Π° Arduino, ΠΈΠΌΠ΅Π΅Ρ‚ имя COM20.

ΠŸΡ€ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ Hello-World-ATmega2560.hex Π±Ρ‹Π»ΠΎ ΡƒΡ‡Ρ‚Π΅Π½ΠΎ, Ρ‡Ρ‚ΠΎ свСтодиод ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΊ ΠΏΠΎΡ€Ρ‚Ρƒ PB7 (Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ ΠΏΠΎΡ€Ρ‚ D13 Arduino).

#define LED    PB7      //Для ΠΏΠ»Π°Ρ‚Ρ‹ Arduino MEGA 2560

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ ΠΏΠ»Π°Ρ‚Ρƒ Arduino MEGA 2560 Ρ‡Π΅Ρ€Π΅Π· USB (ΠΏΡ€ΠΈ этом Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ ΠΏΠ»Π°Ρ‚Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ΄Π°Π½ΠΎ ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅), ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

avrdude -C"C:\Program Files\Arduino1.0.6\hardware\tools\avr\etc\avrdude.conf"
 -patmega2560 -cwiring -P\\.\COM155 -b115200 -D -Uflash:w:c:\temp\Hello-World-ATmega2560.hex.hex

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: здСсь подразумСваСтся, Ρ‡Ρ‚ΠΎ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ COM-ΠΏΠΎΡ€Ρ‚, Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π° ΠΏΠ»Π°Ρ‚Π° Arduino, ΠΈΠΌΠ΅Π΅Ρ‚ имя COM155.

Π’ ΠΏΠ»Π°Ρ‚Ρƒ metaboard [11] записан Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ USBasp, ΡΠΌΡƒΠ»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° USBasp. Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ USB Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ V-USB. Как ΠΈ Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ с Arduino, Ρ„ΡŒΡŽΠ·Ρ‹ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ нСльзя, ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.

ΠŸΡ€ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ Hello-World-metaboard-ATmega328.hex Π±Ρ‹Π»ΠΎ ΡƒΡ‡Ρ‚Π΅Π½ΠΎ, Ρ‡Ρ‚ΠΎ свСтодиод ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΊ ΠΏΠΎΡ€Ρ‚Ρƒ PB5.

#define LED    PB5      //Для ΠΏΠ»Π°Ρ‚ Arduino Uno ΠΈ metaboard.

Для записи ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ ΠΏΠ»Π°Ρ‚Ρƒ metaboard Ρ‡Π΅Ρ€Π΅Π· USB, удСрТивая ΠΏΡ€ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΡƒ S1 Reset, послС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ USB ΠΊΠ½ΠΎΠΏΠΊΡƒ отпуститС (это Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ°), ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

avrdude -patmega328 -cusbasp -Uflash:w:c:\temp\Hello-World-metaboard-ATmega328.hex

Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ записанная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΈ свСтодиод ΠΌΠΈΠ³Π°Π΅Ρ‚, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ Π΅Π³ΠΎ Ρ‡Π΅Ρ€Π΅Π· рСзистор 330..470 ΠΎΠΌ ΠΊ ΠΏΠΎΡ€Ρ‚Ρƒ PB5 (Π½ΠΎΠΆΠΊΠ° 6 ΠΊΠΎΠ½Π½Π΅ΠΊΡ‚ΠΎΡ€Π° IP2 ΠΏΠ»Π°Ρ‚Ρ‹ metaboard), Ρ‡Ρ‚ΠΎ соотвСтствуСт Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΌΡƒ ΠΏΠΎΡ€Ρ‚Ρƒ D13 Arduino.

На ΠΏΠ»Π°Ρ‚Ρƒ AVR-USB-MEGA16 установлСн ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ ATmega32A, ΠΈ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ USBasp Π½Π° основС всС Ρ‚ΠΎΠΉ ΠΆΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ V-USB. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒΡΡ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ. ΠŸΠ΅Ρ€Π΅Π΄ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠ»Π°Ρ‚Ρ‹ AVR-USB-MEGA16 ΠΊ USB установитС ΠΏΠ΅Ρ€Π΅ΠΌΡ‹Ρ‡ΠΊΡƒ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π°ΠΌΠΈ 4 ΠΈ 6 ΠΊΠΎΠ½Π½Π΅ΠΊΡ‚ΠΎΡ€Π° U1 ISP, это Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ°:

И запуститС ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

avrdude -patmega32 -cusbasp -Uflash:w:c:\temp\Hello-World-ATmega32A.hex

ПослС программирования Π±ΡƒΠ΄Π΅Ρ‚ ΠΌΠΈΠ³Π°Ρ‚ΡŒ свСтодиод D1, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΉ ΠΊ Π½ΠΎΠΆΠΊΠ΅ PB1 ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°, см. схСму ΠΏΠ»Π°Ρ‚Ρ‹ Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ [10]. ΠŸΡ€ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ Hello-World-ATmega32A.hex Π±Ρ‹Π»ΠΎ ΡƒΡ‡Ρ‚Π΅Π½ΠΎ, Ρ‡Ρ‚ΠΎ свСтодиод ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΊ ΠΏΠΎΡ€Ρ‚Ρƒ PB0.

#define LED    PB0      //Для ΠΏΠ»Π°Ρ‚Ρ‹ AVR-USB-MEGA16.

Π—Π΄Π΅ΡΡŒ рассматриваСтся Π΄Ρ€ΡƒΠ³ΠΎΠΉ способ программирования — Ρ‡Π΅Ρ€Π΅Π· интСрфСйс ISP, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° mkII-slim [8]. Π­Ρ‚ΠΎΡ‚ способ позволяСт ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈ Ρ„ΡŒΡŽΠ·Ρ‹, ΠΎΠ΄Π½Π°ΠΊΠΎ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ наличия ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π°.

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ сначала ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρƒ ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Ρƒ Ρ‡Π΅Ρ€Π΅Π· интСрфСйс ISP. ΠŸΠ΅Ρ€Π΅ΠΌΡ‹Ρ‡ΠΊΠ° питания Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π΅ mkII-slim Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ установлСна Π² ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ «5V». ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π² Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρƒ подаСтся Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€, поэтому ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΏΠ»Π°Ρ‚Ρƒ AVR-USB-MEGA16 ΠΊ USB Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ.

Для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ‡Π΅Ρ€Π΅Π· ISP понадобится плоский кабСль ΠΈΠ· 6 ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠ² ΠΌΠ°ΠΌΠ°-ΠΌΠ°ΠΌΠ°:

1 ————-MISO———— 1
2 ————-VCC————- 2
3 ————-SCK————- 3
4 ————-MOSI———— 4
5 ————-~RST———— 5
6 ————-GND————- 6

ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ соСдинили ΠΊΠ°Π±Π΅Π»Π΅ΠΌ ISP ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρƒ ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ Ρ‡Π΅Ρ€Π΅Π· USB ΠΈ для программирования памяти ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

avrdude -p atmega32 -P usb -c avrispmkii -e -U flash:w:c:\temp\Hello-World-ATmega32A.hex

Как ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡŒΡŽΠ·Ρ‹:

avrdude -p atmega32 -P usb -c avrispmkii -U lfuse:w:0xCF:m -U hfuse:w:0x98:m

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠ»Π°Ρ‚Ρ‹ Arduino Uno, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ установлСн ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ ATmega168, ΠΏΠ»Π°Ρ‚Π° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π° ΠΊ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρƒ Ρ‡Π΅Ρ€Π΅Π· Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΡ€Ρ‚ COM4:

avrdude -F -v -pm168 -cstk500v1 -P\\.\COM4 -b19200 -D -Uflash:w:"firmware.hex":i

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ATtiny2313 с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° USBtiny [2]:

type in avrdude -c usbtiny -p attiny2313 -U flash:w:firmware.hex

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹ΠΉ bitbang-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ DT006 (Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ MiniPOV2):

avrdude -c dt006 -P lpt1 -p attiny2313 -U flash:w:firmware.hex

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‡Π΅Ρ€Π΅Π· ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ bitbang-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ DASA (Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ MiniPOV3):

avrdude -c dasa -P com1 -p attiny2313 -U flash:w:firmware.hex

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠ»Π°Ρ‚Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° STK500 (ΠΎΠ½Π° Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΊΠ°ΠΊ ΠΎΠ΄Π½ΠΎΠΈΠΌΠ΅Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€):

avrdude -c stk500 -P com1 -p attiny2313 -U flash:w:firmware.hex

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ AVRISP v2 USB:

avrdude -c avrispv2 -p attiny2313 -U flash:w:firmware.hex

[Бсылки]

1. Starting out with avrdude site:ladyada.net.
2. USBtiny site:dicks.home.xs4all.nl.
3. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Ρ‹ для AVR.
4. Arduino bootloader.
5. AVR-USB-MEGA16: USB bootloader USBasp для ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° ATmega32.
6. ИспользованиС MS Visual Studio IDE для программирования AVR/Arduino.
7. Intel HEX: описаниС Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Ρ„Π°ΠΉΠ»Π°.
8. AVR-USB162MU: ΠΌΠ°ΠΊΠ΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΈΠ·Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° AVRISP-MKII Π² Π΄ΠΎΠΌΠ°ΡˆΠ½ΠΈΡ… условиях.
9. AVR109: самопрограммированиС AVR.
10. ΠœΠ°ΠΊΠ΅Ρ‚Π½Π°Ρ ΠΏΠ»Π°Ρ‚Π° AVR-USB-MEGA16.
11. ΠœΠ°ΠΊΠ΅Ρ‚Π½Π°Ρ ΠΏΠ»Π°Ρ‚Π° metaboard.
12. 170305avrdude.zip.

AVRDudeR β€” встраиваСм avrdude Π² IDE / Habr


Arduino β€” Ρ…ΠΎΡ€ΠΎΡˆΠ°Ρ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° для самодСлкиных Π²Ρ€ΠΎΠ΄Π΅ мСня.
Удобная, всС Π² Π½Π΅ΠΉ ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ.
Π’ Ρ‡Π΅ΠΌ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°?

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ ΠΌΠ½Π΅ Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ всСм нравится. ОсобСнно уТасна Arduino IDE. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ„Π°ΠΉΠ» открываСтся Π² Π½ΠΎΠ²ΠΎΠΌ ΠΎΠΊΠ½Π΅, оставляя пустоС Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ IDE. И ΠΏΡ€ΠΎΡ‡ΠΈΠ΅ ΠΌΠ΅Π»ΠΊΠΈΠ΅ глупости, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΡˆΠΈΡ… ΠΊ удобству Visual Studio, Borland/Embarcadero RAD IDE Ρ€Π°ΡΡΡ‚Ρ€Π°ΠΈΠ²Π°ΡŽΡ‚ ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‚ Π½Π΅ΡƒΠ΄ΠΎΠ²ΠΎΠ»ΡŒΡΡ‚Π²ΠΈΠ΅.
К ΡΡ‡Π°ΡΡ‚ΡŒΡŽ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π»ΡŽΠ±ΡƒΡŽ IDE какая понравится. Для Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΏΡ€ΠΎΡˆΠΈΡ‚ΡŒ ΠΈΠ»ΠΈ собствСнных ΠΏΡ€ΠΎΠ±Π½Ρ‹Ρ… ΠΏΠΎΠ΄Π΅Π»ΠΎΠΊ Π²ΠΏΠΎΠ»Π½Π΅ годится Ρ‚ΠΎΡ‚ ΠΎΠ³Ρ€Ρ‹Π·ΠΎΠΊ Wiring, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ компилируСтся Arduino IDE.
Для удобства Ρ€Π°Π±ΠΎΡ‚Ρ‹ я ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ Visual Micro Arduino β€” удобство Visual Studio, быстрая компиляция, ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ° стандартными срСдствами.
Arduino Π±Π΅Π· Arduino IDE

Π‘Ρ‚ΡƒΠΏΠ΅Π½ΡŒΠΊΠΎΠΉ Π²Ρ‹ΡˆΠ΅ стоит прямая Ρ€Π°Π±ΠΎΡ‚Π° с ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠΌ, Ρ‚ΡƒΡ‚ ΡƒΠΆ Π² Π²ΠΎΠ»ΡŒΠ½Ρ‹ Π΄Π΅Π»Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ Π·Π°Ρ…ΠΎΡ‚ΠΈΡ‚Π΅. Часто это ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ Π² Π½Π°Ρ‡ΠΈΠ½ΠΊΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Arduino. Но приходится ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π»ΠΈΠ±ΠΎ AVR Studio Π»ΠΈΠ±ΠΎ ΡΡ‚ΠΎΡ€ΠΎΠ½Π½ΡŽΡŽ IDE ΠΈ компилятор ΠΎΡ‚ Atmel (Π±Π»Π°Π³ΠΎ, ΠΎΠ½ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ бСсплатный ΠΈ Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π² AVR Tools).
ВсС Π±Ρ‹ Ρ…ΠΎΡ€ΠΎΡˆΠΎ, Π½ΠΎ ΠΏΡ€ΠΎ Arduino ΠΎΠ½ΠΈ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π·Π½Π°ΡŽΡ‚ ΠΈ ΠΏΡ€ΠΎΡˆΠΈΡ‚ΡŒ Π΅Π΅ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚. И Π²ΠΎΡ‚ Ρ‚ΡƒΡ‚ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ нСудобства.

ΠšΠΎΠΌΡƒ нСинтСрСсны Π΄Π΅Ρ‚Π°Π»ΠΈ, ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚Π΅ сразу ΠΊ Π΄Π΅Π»Ρƒ, скачиваСм ΠΈ настраиваСм.

AVR Studio нСплохая срСда, ΠΏΡ€Π°Π²Π΄Π° вСрсия 4 довольно примитивная, Π° 5я тяТСловСсна. Ни Ρ‚Π° Π½ΠΈ другая ΠΊΡ€ΠΎΠΌΠ΅ ΠΊΠ°ΠΊ Ρ‡Π΅Ρ€Π΅Π· Ρ„ΠΈΡ€ΠΌΠ΅Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Ρ‚ΡŒ Π½Π΅ ΡƒΠΌΠ΅ΡŽΡ‚. Засада.
Π― взял ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π±ΡƒΡ‚Π»ΠΎΠ°Π΄Π΅Ρ€Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ совмСстим с AVR Studio, ΠΏΡ€ΠΈΡ‚Π²ΠΎΡ€ΡΡΡΡŒ AVRISP ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠΌ. Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ ΠΆΠ΅ с Π½ΠΈΠΌ Π² AVR Studio оказался Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ самым ΡƒΠ΄Π°Ρ‡Π½Ρ‹ΠΌ.

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ?

Π•ΡΡ‚ΡŒ AVRDUDE β€” бСсплатный ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Π»ΡŒΡ‰ΠΈΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΠΎΡ‡Ρ‚ΠΈ со всСми ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π°ΠΌΠΈ для ATMEL ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ². Но ΠΎΠ½ ΠΊΠΎΠ½ΡΠΎΠ»ΡŒΠ½Ρ‹ΠΉ. Π’Ρ€ΠΎΠ΄Π΅ Π±Ρ‹ Π½Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°, написал cmd ΠΈΠ»ΠΈ bat Ρ„Π°ΠΉΠ» ΠΈ всС Π΄Π΅Π»Π°, запускай Π΅Π³ΠΎ послС компиляции ΠΈ всСго Π΄Π΅Π»ΠΎΠ². Но Ρƒ мСня, ΠΊΠ°ΠΊ, Π½Π°Π²Π΅Ρ€Π½ΠΎΠ΅, Ρƒ ΠΌΠ½ΠΎΠ³ΠΈΡ…, Π½Π΅ ΠΎΠ΄Π½Π° ΠΏΠ»Π°Ρ‚Π°. А каТдая ΠΏΠ»Π°Ρ‚Π° Arduino видится Π² систСмС ΠΊΠ°ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ COM-ΠΏΠΎΡ€Ρ‚. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ Ρ‚ΠΎΠΆΠ΅. Π’ ΠΏΠ»Π°Ρ‚Π°Ρ… установлСны Ρ€Π°Π·Π½Ρ‹Π΅ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρ‹ (Atmega168P, Atmega328P). НС считая ΡΠ°ΠΌΠΎΠ΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Arduino-совмСстимых ΠΏΠ»Π°Ρ‚ ΠΈΠ»ΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅ с Π³ΠΎΠ»Ρ‹ΠΌ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠΌ ΠΈ обвязкой.
ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· Π»Π°Π·Π°Ρ‚ΡŒ Π² bat Ρ„Π°ΠΉΠ» ΠΈ ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ настройки ΠΏΠΎΠ΄ Ρ€Π°Π·Π½Ρ‹Π΅ ΠΏΠ»Π°Ρ‚Ρ‹ ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ Π² Π΄Ρ€ΡƒΠ³ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΅Π³ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ для ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΊΠΎΠ³Π΄Π° я помСнял ΠΏΠ°Ρ€Ρƒ Π±Π°ΠΉΡ‚ Π² ΠΊΠΎΠ΄Π΅, Π»ΠΈΡ‡Π½ΠΎ ΠΌΠ½Π΅ Π½Π°Π΄ΠΎΠ΅Π΄Π°Π΅Ρ‚, Π΄Π° ΠΈ ошибок Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π½Π΅ΠΌΠ°Π»ΠΎ, Ρ‚Π°ΠΊ ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ ΡƒΠ±ΠΈΡ‚ΡŒ Π½Π΅Π΄ΠΎΠ»Π³ΠΎ. Π₯ΡƒΠΆΠ΅ Ρ‚ΠΎΠ³ΠΎ, с FTBB ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Π°Ρ вСрсия avrdude, пропатчСнная ΠΏΠΎΠ΄ Π½Π΅Π³ΠΎ ΠΈ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π·Π½Π°ΡŽΡ‰Π°Ρ ΠΏΡ€ΠΎ arduino. А Π·Π½Π°Ρ‡ΠΈΡ‚, Ссли ΠΌΡ‹ ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Π΅ΠΌ Ρ‡Π΅Ρ€Π΅Π· Π½Π΅Π³ΠΎ, Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ bat Ρ„Π°ΠΉΠ».
Π’ Code::Blocks IDE, которая ΠΌΠ½Π΅ большС ΠΏΠΎΠ½Ρ€Π°Π²ΠΈΠ»Π°ΡΡŒ ΠΏΠΎ возмоТностям форматирования ΠΈ удобству Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΊΠΎΠ΄ΠΎΠΌ, ситуация Π½Π΅ΠΌΠ½ΠΎΠ³ΠΈΠΌ Π»ΡƒΡ‡ΡˆΠ΅, Ρ€Π°Π·Π²Π΅ Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ внСшнСй ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹.
Автоматизация запуска avrdude с Π½ΡƒΠΆΠ½Ρ‹ΠΌΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ


МнС эта ситуация Π½Π°Π΄ΠΎΠ΅Π»Π° ΠΈ я написал Π½Π΅Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΊΡƒ, которая ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС 2 ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°:
β€” имя ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π°
β€” имя Ρ„Π°ΠΉΠ»Π° ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ

Π£Ρ‚ΠΈΠ»ΠΈΡ‚Π° сама запускаСт avrdude с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌΠΈ Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅ (просто Ρ„Π°ΠΉΠ» с Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΌΠΈ настройками для ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Π½ΠΈΡ), доТидаСтся ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΈ закрываСтся. Π­Ρ‚ΠΎ позволяСт ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π² любой ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΉΡΡ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ Π² процСссС ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Π² 2 ΠΊΠ»ΠΈΠΊΠ° прямо ΠΈΠ· Code::Blocks.
Если Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ с ΠΎΠ΄Π½ΠΈΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ, ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π΅Ρ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Ρ„Π°ΠΉΠ» ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ, Ссли с двумя, попытаСтся автоматичСски Π·Π°Π»ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ ΠΈΠ· Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°.

Если заинтСрСсовало, ΠΊΠ°Ρ‡Π°Π΅ΠΌ AVRDudeR

ВстраиваСтся Π² IDE ΠΎΡ‡Π΅Π½ΡŒ просто (дольшС Ρ€Π°ΡΡΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ, Ρ‡Π΅ΠΌ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ):
ДобавляСм Π² мСню Tools Π΄Π²Π° ΠΏΡƒΠ½ΠΊΡ‚Π° мСню β€” для измСнСния настрСк ΠΈ для ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ

Для измСнСния настроСк прописываСм:

Для ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ:

По сути Π² настройках прописаны: ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ β€” Ρ„Π°ΠΉΠ» avrdude.ini, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ сохраняСм ΠΏΡ€ΠΈ настройкС Π² ΠΏΠ°ΠΏΠΊΡƒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ β€” имя Ρ„Π°ΠΉΠ»Π° ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ.

ΠŸΡ€ΠΎΡ†Π΅ΡΡ настройки выглядит Ρ‚Π°ΠΊ:

  • ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ ΠΈΠ»ΠΈ ΠΏΠ»Π°Ρ‚Ρƒ Arduino с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±ΡƒΠ΄Π΅ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π² систСмС появился Π½ΡƒΠΆΠ½Ρ‹ΠΉ COM ΠΏΠΎΡ€Ρ‚.
  • ЗапускаСм Tools->R AVRduder: Setup, Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ настройки ΠΈ сохраняСм Ρ„Π°ΠΉΠ» с настройками Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ своСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΏΠΎΠ΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ avrduder.ini (ΠΈΠ»ΠΈ Ρ‚ΠΎ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΡƒΠΊΠ°Π·Π°Π»ΠΈ Π² настройках). Π—Π°ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ΠΊΡƒ

Π’Π΅ΠΏΠ΅Ρ€ΡŒ скомпилировав ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ Π² мСню Tools->R AVRDudeR: Flash ΠΈ Π³ΠΎΡ‚ΠΎΠ²ΠΎ.

ОбС вСрсии avrdude ΡƒΠΆΠ΅ Π»Π΅ΠΆΠ°Ρ‚ Π² Π°Ρ€Ρ…ΠΈΠ²Π΅, Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ ΠΈ ΠΏΡ€ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ Π² AVRDudeR Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ.

НСмного ΠΎ настройках:


MCU β€” ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ (понятноС имя ΠΈ ΠΊΠΎΠ΄ для ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки avrdude ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π±Π΅Ρ€Π΅Ρ‚ ΠΈΠ· mcu.lst)
Programmer β€” ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€. FTBB, Arduino с ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΎΠΉ Π² качСствС ISP ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° (ArduinoISP), ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Π°Ρ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ Arduino. (ВСкст ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ² мСню ΠΈ ΠΊΠΎΠ΄Ρ‹ для строки ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° Π² Ρ„Π°ΠΉΠ»Π΅ programmers.lst)
Port: Π½Ρƒ собствСнно COM ΠΏΠΎΡ€Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° ΠΈΠ»ΠΈ Arduino (поэтому Π½ΡƒΠΆΠ½ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠ»Π°Ρ‚Π° Π±Ρ‹Π»Π° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π° Π²ΠΎ врСмя настройки).
Baud rate: ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΏΠΎΡ€Ρ‚Π°. Для Arduino Π΄ΠΎ UNO β€” 57600, UNO β€” 115200. Π’ вашСм Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ΅ сами Π·Π½Π°Π΅Ρ‚Π΅ ΠΊΠ°ΠΊΡƒΡŽ настроили, Π° для FTBB Ρ€Π΅ΠΆΠΈΠΌΠ° этот ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ игнорируСтся.
Dude type: ΠΊΠ°ΠΊ Ρ€Π°Π· Ρ‚ΡƒΡ‚ ΠΈ Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ ΠΊΠ°ΠΊΠΎΠΉ avrdude β€” ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ ΠΈΠ»ΠΈ для FTBB ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ.
Π“Π°Π»ΠΊΠ° Show Result β€” ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ΅ ΠΎΠΊΠ½ΠΎ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π²ΠΈΠ΄Π΅Π½ процСсс ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ, Ссли Π²Π°ΠΌ нСинтСрСсно ΠΈ Π²Ρ‹ ΡƒΠ²Π΅Ρ€Π΅Π½Ρ‹ Ρ‡Ρ‚ΠΎ всС Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π²Π΅Ρ€Π½ΠΎ, Π½Π΅ ΡΡ‚Π°Π²ΡŒΡ‚Π΅ Π΅Π΅, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° просто Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ сообщСниС, ΠΊΠΎΠ³Π΄Π° avrdude Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΡ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΈ сама закроСтся.

Π‘Π°ΠΌΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для Π·Π°Π»ΠΈΠ²ΠΊΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ, Π½Π΅ встраивая.
просто Π΄Π²Π°ΠΆΠ΄Ρ‹ Ρ‰Π΅Π»ΠΊΠ°Π΅ΠΌ Π² ΠΏΠΎΠ»Π΅ Firmware, Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ Ρ„Π°ΠΉΠ» ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ (ΠΈΠ»ΠΈ просто вставляСм ΠΏΡƒΡ‚ΡŒ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ Ρ€ΡƒΠΊΠ°ΠΌΠΈ) ΠΈ ΠΆΠΌΠ΅ΠΌ Flash Firmware. Π€Π°ΠΉΠ» ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΈ Π² этом случаС.

Если смСнился ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠ»ΠΈ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΠΎΡ€Ρ‚, Ρ‡Π΅Ρ€Π΅Π· Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€, просто Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ Tools->R AVRDuder: Setup ΠΈ открываСтся Ρ„Π°ΠΉΠ» с настройками этого ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° (ΠΈΠ»ΠΈ настройками ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, Ссли Π² ΠΏΠ°ΠΏΠΊΠ΅ с ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ avrduder.ini отсутствуСт). МСняСм ΠΏΠΎΡ€Ρ‚ ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ ΠΈΠ»ΠΈ Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΌ Ρƒ нас помСнялось ΠΈ сохраняСм ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ avrduder.ini Π² ΠΏΠ°ΠΏΠΊΡƒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. ВсС.

Π”Π°, avrdude.ini ΠΌΠΎΠΆΠ½ΠΎ просто Ρ‚Π°ΡΠΊΠ°Ρ‚ΡŒ ΠΈΠ· ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, Ссли Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π΅ с ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΌΠΈ ΠΏΠ»Π°Ρ‚Π°ΠΌΠΈ/ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π°ΠΌΠΈ. ΠŸΡ€ΠΎΡΡ‚ΠΎ скопируйтС Π΅Π³ΠΎ Π² ΠΏΠ°ΠΏΠΊΡƒ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ Π²ΠΎΠΎΠ±Ρ‰Π΅.
Ах Π΄Π°, Ρ‡ΡƒΡ‚ΡŒ Π½Π° Π·Π°Π±Ρ‹Π», Π² Code:Blocks я Π²Ρ‹Π±Ρ€Π°Π» GNU AVR GCC Compiler ΠΈ ΡƒΠΊΠ°Π·Π°Π» Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠ°ΠΏΠΊΡƒ ΠΊ AVR Tools. А ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ настроил Π²ΠΎΡ‚ Ρ‚Π°ΠΊ:

Π’ΠΎΠ³Π΄Π° компилятор создаСт Ρ„Π°ΠΉΠ» .elf.hex, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ ΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Π΅ΠΌ. Если Ρƒ вас ΠΏΠΎ-Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ, ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€, ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹ΠΉ Π² AVRDudeR, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π» имя Ρ„Π°ΠΉΠ»Π° ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ.

НадСюсь, ΠΊΠΎΠΌΡƒ-Ρ‚ΠΎ это сбСрСТСт Π½Π΅Ρ€Π²Ρ‹, повысит ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΡΠΎΡΡ€Π΅Π΄ΠΎΡ‚ΠΎΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° собствСнно Ρ€Π°Π±ΠΎΡ‚Π΅ Π½Π°Π΄ ΠΈΠ΄Π΅Π΅ΠΉ, Π° Π½Π΅ Π²ΠΎΠ·ΠΈΡ‚ΡŒΡΡ с ΠΊΡƒΡ‡Π΅ΠΉ ΠΏΡ€ΠΈΠ±Π»ΡƒΠ΄ ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ компиляции ΠΈ Π·Π°Π»ΠΈΠ²ΠΊΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.
Если ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° окаТСтся ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ, ΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ Π½Π° Π·Π΄ΠΎΡ€ΠΎΠ²ΡŒΠ΅.
UPD Π£Ρ‚ΠΈΠ»ΠΈΡ‚Π° всС-Ρ‚Π°ΠΊΠΈ ΠΏΡ€ΠΈΠ³ΠΎΠ΄ΠΈΠ»Π°ΡΡŒ.
Новая вСрсия доступна Π½Π° google code

Avrdude β€” ВикипСдия

ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» ΠΈΠ· Π’ΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ β€” свободной энциклопСдии

ВСкущая вСрсия страницы ΠΏΠΎΠΊΠ° Π½Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΠ»Π°ΡΡŒ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΌΠΈ участниками ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ вСрсии, ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Π½ΠΎΠΉ 22 августа 2019; ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ 1 ΠΏΡ€Π°Π²ΠΊΠ°. ВСкущая вСрсия страницы ΠΏΠΎΠΊΠ° Π½Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΠ»Π°ΡΡŒ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΌΠΈ участниками ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ вСрсии, ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Π½ΠΎΠΉ 22 августа 2019; ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ 1 ΠΏΡ€Π°Π²ΠΊΠ°.

AVRDude (AVR Downloader-Uploader)Β β€” кросплатформСнная свободная консольная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, прСдназначСнная для ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² Ρ„ΠΈΡ€ΠΌΡ‹ Atmel сСрии AVR, ΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰Π°ΡΡΡ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒΡŽ.

ΠžΡ‚Π»ΠΈΡ‡Π°Π΅Ρ‚ΡΡ ΡˆΠΈΡ€ΠΎΠΊΠΈΠΌ спСктром ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ² ΠΈ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ². ΠšΡ€ΠΎΠΌΠ΅ Β«Ρ€ΠΎΠ΄Π½Ρ‹Ρ…Β» устройств ΠΎΡ‚ Atmel сюда входят ΡΠ°ΠΌΠΎΠ΄Π΅Π»ΡŒΠ½Ρ‹Π΅ Π»ΡŽΠ±ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ устройства, Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Π΅ AVR Studio, ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ популярный ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ USBAsp. Π Π°Π½Π΅Π΅ Π±Ρ‹Π» извСстСн ΠΏΠΎΠ΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ AVRprog[3].

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΡ†ΠΈΠΈ -c Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ Π²Ρ‹Π±ΠΎΡ€ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ²[источник Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½ 1347 Π΄Π½Π΅ΠΉ]:

ΠžΠΏΡ†ΠΈΡΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅
abcminiABCmini Board, aka Dick Smith HOTCHIP
alfNightshade ALF-PgmAVR, https://web.archive.org/web/20100820024744/http://nightshade.homeip.net/
arduinoArduino board, protocol similar to STK500 1.x
atispAT-ISP V1.1 programming cable for AVR-SDK1 from, http://micro-research.co.th/
avr109Atmel AppNote AVR109 Boot Loader
avr910Atmel Low Cost Serial Programmer
avr911Atmel AppNote AVR911 AVROSP (an alias for avr109)
avrftdiFTDI MPSSE (FT2232 etc.) bitbang support
avrispAtmel AVR ISP (an alias for stk500)
avrisp2Atmel AVR ISP mkII (alias for stk500v2)
avrispmkIIAtmel AVR ISP mkII (alias for stk500v2)
avrispv2Atmel AVR ISP, running a version 2.x firmware (an alias for stk500v2)
bascomBascom SAMPLE programming cable
blasterAltera ByteBlaster
bsdBrian Dean’s Programmer, https://web.archive.org/web/20100209215720/http://www.bsdhome.com/avrdude/
butterflyAtmel Butterfly Development Board
c2n232iC2N232I, reset=dtr sck=!rts mosi=!txd miso=!cts, описаниС
dapaDirect AVR Parallel Access cable
dasaserial port banging, reset=rts sck=dtr mosi=txd miso=cts, описаниС
dasa3serial port banging, reset=!dtr sck=rts mosi=txd miso=cts, описаниС
dragon_dwAVR Dragon in debugWire mode
dragon_hvspAVR Dragon in high-voltage serial programming mode
dragon_ispAVR Dragon in ISP mode
dragon_jtagAVR Dragon in JTAG mode
dragon_ppAVR Dragon in (high-voltage) parallel programming mode
dt006Dontronics DT006
ere-isp-avrERE ISP-AVR, https://web.archive.org/web/20060603224029/http://www.ere.co.th/download/sch050713.pdf
frank-stk200Frank’s STK200 clone, http://electropol.free.fr/spip/spip.php?article15
futurlecFuturlec.com programming cable
jtag1Atmel JTAG ICE mkI, running at 115200 Bd
jtag1slowAtmel JTAG ICE mkI, running at 19200 Bd
jtag2slowAtmel JTAG ICE mkII (default speed 19200 Bd)
jtag2,jtag2fastAtmel JTAG ICE mkII, running at 115200 Bd
jtag2ispAtmel JTAG ICE mkII in ISP mode.
jtag2dwAtmel JTAG ICE mkII in debugWire mode.
jtagmkIAtmel JTAG ICE mkI, running at 115200 Bd
jtagmkIIAtmel JTAG ICE mkII (default speed 19200 Bd)
mib510Crossbow MIB510 programming board
pavrJason Kyle’s pAVR Serial Programmer
picowebPicoweb Programming Cable, http://www.picoweb.net/
pony-stk200Pony Prog STK200
ponyserdesign ponyprog serial, reset=!txd sck=rts mosi=dtr miso=cts
siprogLancos SI-Prog, http://www.lancos.com/siprogsch.html
sp12Steve Bolt’s Programmer
stk200STK200
stk500Atmel STK500, probing for either version 1.x or 2.x firmware
stk500hvspAtmel STK500 in high-voltage serial programming mode(version 2.x firmware only)
stk500ppAtmel STK500 in parallel programming mode (version 2.xfirmware only)
stk500v1Atmel STK500, running a version 1.x firmware
stk500v2Atmel STK500, running a version 2.x firmware
stk600Atmel STK600 in ISP mode, or in PDI mode for ATxmega devices
stk600hvspAtmel STK600 in high-voltage serial programming mode
stk600ppAtmel STK600 in parallel programming mode
usbaspUSBasp, http://www.fischl.de/usbasp/ , http://easyelectronics.ru/usb-programmator-avr-usbasp.html
usbtinyUSBtiny simple USB programmer, http://www.ladyada.net/make/usbtinyisp/
xilXilinx JTAG cable

Π‘Ρ‡ΠΈΡ‚Ρ‹Π²Π°Π΅ΠΌ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Flash-памяти ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° ATmega8 ΠΈ сохраняСм ΠΈΡ… Π² Ρ„Π°ΠΉΠ» /home/nixuser/m8_flash_dump.hex, Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π΄Π°Π½Π½Ρ‹Ρ… для сохранСния — Intel HEX. Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ USB-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ USBAsp, Ρ‚Π°ΠΊΠΆΠ΅ просим ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ большС ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ:

avrdude -p m8 -c usbasp -P usb -v -U flash:r:/home/nixuser/m8_flash_dump.hex:i

Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΠΌ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· памяти EEPROM ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° ATmega32, сохраним эти Π΄Π°Π½Π½Ρ‹Π΅ Π² Ρ„Π°ΠΉΠ» c:\temp\m32_eeprom.raw ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π΄Π°Π½Π½Ρ‹Ρ…Β β€” RAW. Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ USBTiny:

avrdude -p m32 -c usbtiny -U eeprom:r:"c:\temp\m32_eeprom.raw":r

Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΠΌ запись Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· Ρ„Π°ΠΉΠ»Π° /home/nixuser/dump_m8.hex Π²ΠΎ Flash-ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° ATtiny13, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ STK500:

avrdude -p t13 -c stk500 -U flash:w:/home/nixuser/dump_m8.hex

Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΠΌ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ запись Π΄Π°Π½Π½Ρ‹Ρ… Π²ΠΎ Flash ΠΈ EEPROM ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° ATtiny13 ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΊΠ°ΠΊ источники Π΄Π°Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»Ρ‹ flash_dada.hex ΠΈ eeprom_data.hex, для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ USBasp:

avrdude -p t13 -c usbasp -U flash:w:"c:\temp\flash_dada.hex" -U eeprom:w:"c:\temp\eeprom_data.hex"

Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΠΌ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Fuse-Π±ΠΈΡ‚ΠΎΠ² ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° ATtiny13 с ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈ сохранСниСм Π΄Π°Π½Π½Ρ‹Ρ… Π² Ρ„Π°ΠΉΠ»Ρ‹ hfuse.txt ΠΈ lfuse.txt, Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Ρ„Π°ΠΉΠ»Π° для сохранСния — Intel HEX. Для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ USBasp:

avrdude -p t13 -c usbasp -U hfuse:r:hfuse.txt:h -U lfuse:r:lfuse.txt:h

Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΠΌ установку Fuse-Π±ΠΈΡ‚ΠΎΠ² Π² ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π΅ ATmega16 ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° USBasp. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ младшСго fuse-Π±Π°ΠΉΡ‚Π° = 0xe1, Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΡΡ‚Π°Ρ€ΡˆΠ΅Π³ΠΎ fuse-Π±Π°ΠΉΡ‚Π° = 0x99:

avrdude -p m16 -c usbasp  -U lfuse:w:0xe1:m -U hfuse:w:0x99:m
  • Trevennor, Alan. Practical AVR Microcontrollers: Games, Gadgets, and Home Automation with the Microcontroller Used in the Arduino.Β β€” Apress, 2012.Β β€” 416 с.Β β€” (Technology in Action).Β β€” ISBN 978-1430244462.
  • Williams, Elliot. Make: AVR Programming.Β β€” Maker Media, Inc, 2014.Β β€” 472 с.Β β€” ISBN 978-1449355784.

SinaProg β€” графичСская ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ° для AVRDude

Π’ΠΎΡ‚ ΡƒΠΆΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ Π»Π΅Ρ‚ я ΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡΡŒ ΠΌΠΎΡ‰Π½Π΅ΠΉΡˆΠ΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ для ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ β€” avrdude. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° эта ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΏΠΎΡ‡Ρ‚ΠΈ всС Π²ΠΈΠ΄Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ², Π° Ρ‚Π΅ Ρ‡Ρ‚ΠΎ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ Π² Π½Π΅Π΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ΡΡ.
Но Π΅ΡΡ‚ΡŒ Ρƒ Π½Π΅ΠΉ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ которая сильно ΠΎΡ‚ΠΏΡƒΠ³ΠΈΠ²Π°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΈΡ… β€” ΠΎΠ½Π° консольная. И всС ΡˆΠ°ΠΌΠ°Π½ΡΡ‚Π²Π° с Π½Π΅ΠΉ Π·Π°ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ Π² Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки.

Π‘ ΠΎΠ΄Π½ΠΎΠΉ стороны это Ρ…ΠΎΡ€ΠΎΡˆΠΎ β€” консольная ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° позволяСт ΠΎΡ‡Π΅Π½ΡŒ сильно ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ процСсс ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ. Один Ρ€Π°Π· написал Π±Π°Ρ‚Π½ΠΈΡ‡Π΅ΠΊ ΠΈ для ΠΏΠ΅Ρ€Π΅ΡˆΠΈΠ²ΠΊΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΈ всС.

ΠžΡΡ‚Π°Π΅Ρ‚ΡΡ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ Ρ€Π°Π·Π½Ρ‹Ρ… устройств, вСдь ΠΏΠΎΠ΄ ΠΊΠ°ΠΆΠ΄ΡƒΡŽ придСтся Π΄Π΅Π»Π°Ρ‚ΡŒ свой Π±Π°Ρ‚Π½ΠΈΠΊ. И Π»Π°Π΄Π½ΠΎ Π±Ρ‹ ΠΊΠ»ΡŽΡ‡ΠΈ ΠΏΡ€ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ, Π΄Π° Ρ„Π°ΠΉΠ» с ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΎΠΉ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ. Бамая засада начинаСтся с fuse Π±ΠΈΡ‚Π°ΠΌΠΈ (Π²ΠΏΡ€ΠΎΡ‡Π΅ΠΌ, ΠΊΠ°ΠΊ ΠΈ Π²Π΅Π·Π΄Π΅ Π² ΠΌΠΈΡ€Π΅ AVR πŸ˜‰ ) Π’ΡƒΡ‚ ΠΈΡ… Π½Π°Π΄ΠΎ Π²Π½Π°Ρ‡Π°Π»Π΅ Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΡˆΡ‚ΡƒΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² Π΄Π°Ρ‚Π°ΡˆΠΈΡ‚Π΅, Π²Ρ‹ΠΏΠΈΡΠ°Ρ‚ΡŒ Π² Π²ΠΈΠ΄Π΅ Π±Π°ΠΉΡ‚ΠΎΠ², Π²ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡƒΡŽ строку ΠΈ ΠΌΠΎΠ»ΠΈΡ‚ΡŒΡΡ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½ΠΈΠ³Π΄Π΅ Π½Π΅ ΠΎΡˆΠΈΠ±ΠΈΡ‚ΡŒΡΡ.
Π”Π°, для avrdude написано ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±ΠΎΠ»ΠΎΡ‡Π΅ΠΊ, Π½ΠΎ всС Ρ‡Ρ‚ΠΎ ΠΌΠ½Π΅ Π²ΡΡ‚Ρ€Π΅Ρ‡Π°Π»ΠΈΡΡŒ Ρ€Π°Π½ΡŒΡˆΠ΅ Ρ€Π΅ΡˆΠ°Π»ΠΈ лишь ΠΌΠ°Π»ΠΎΠ·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ Π²Ρ‹Π±ΠΎΡ€Π° Π½ΡƒΠΆΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π° Ρ„Π°ΠΉΠ»Π° ΠΈ/ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π°, Π° Ρ„ΡƒΠ·Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ Π±Ρ‹Π»ΠΎ Π½Π°Π΄ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ числом.

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Ρ€Π΅ΡˆΠΈΠ»Π°ΡΡŒ с появлСниСм Π½ΠΎΠ²ΠΎΠΉ вСрсии ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ SinaProg ΠΎΡ‚ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ программистов-тСррористов ΠΈΠ· Аль-ΠΊΠ°ΠΈΠ΄Ρ‹ иранских AVR ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅Ρ€ΠΎΠ².

ЗапускаСм… Если Π½Π΅ Π·Π°ΠΏΡƒΡΡ‚ΠΈΠ»Π°ΡΡŒ, Ρ‚ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ потрСбуСтся ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ ΠΎΡ‚ NI β€” LabView RunTime Library


ΠœΠΎΡ€Π΄Π° выглядит ΠΏΡ€ΠΎΡΡ‚Π΅Π½ΡŒΠΊΠΎ ΠΈ со вкусом. НичСго лишнСго. Π’Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ Π² ΠΏΠ΅Ρ€Π²ΠΎΠΉ строкС хСкс Ρ„Π°ΠΉΠ»Π° ΠΈ зашиваСм Π΅Π³ΠΎ Π² Π½ΡƒΠΆΠ½ΡƒΡŽ ΠΏΠ°ΠΌΡΡ‚ΡŒ β€” flash ΠΈΠ»ΠΈ eeprom.

Π‘Π»Π΅Π΄ΠΎΠΌ ΠΈΠ΄Π΅Ρ‚ прогрСсс Π±Π°Ρ€ ΠΈ ΠΊΠ½ΠΎΠΏΠΊΠ° открытия консольного Π»ΠΎΠ³Π° β€” ошибки ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ.

НиТС Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ Ρ‚ΠΈΠΏ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°, Ρ‚Π°ΠΊΠΆΠ΅ Π΅ΡΡ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΎΡ‡ΠΊΠ° поиска β€” ΠΏΠΎΠ»Π΅Π·Π½ΠΎ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π°.

ΠžΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ стоит ΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΡ€ΠΎ ΡΠ΅ΠΊΡ†ΠΈΡŽ Fuses.
ΠžΡΡ‚ΠΎΡ€ΠΎΠΆΠ½Π΅ΠΉ с Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΌ списком. Π‘ Π²ΠΈΠ΄Ρƒ Ρ‚Π°ΠΌ всС просто, Π½ΠΎ это Π½Π° самом Π΄Π΅Π»Π΅ прСдустановки, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ ΠΎΠ½ΠΈ Ρ„Π°ΠΉΠ»Π΅ Fuse.txt Π²ΠΎΡ‚ Π΅Π³ΠΎ Π΄Π΅Ρ„ΠΎΠ»Ρ‚Π½ΠΎΠ΅ содСрТаниС:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Default.
[]
Β 
ATmega8.ATmega16.
[Int. 1 MHz	d9e1
Int. 2 MHz	d9e2
Int. 4 MHz	d9e3
Int. 8 MHz	d9e4
Ext. Crys.	d9ff]
Β 
ATmega32.
[Int. 1 MHz	d9e1
Int. 2 MHz	d9e2
Int. 4 MHz	d9e3
Int. 8 MHz	d9e4
Ext. Crys.	d9ff]

Default. [] ATmega8.ATmega16. [Int. 1 MHz d9e1 Int. 2 MHz d9e2 Int. 4 MHz d9e3 Int. 8 MHz d9e4 Ext. Crys. d9ff] ATmega32. [Int. 1 MHz d9e1 Int. 2 MHz d9e2 Int. 4 MHz d9e3 Int. 8 MHz d9e4 Ext. Crys. d9ff]

Π’ΠΈΠ΄ΠΈΡˆΡŒ, Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ ΠΎΡ‡Π΅Π½ΡŒ прост. Π‘Ρ‚Ρ€ΠΎΠΊΠ° ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° (ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ с Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ!) ΠΈ Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Ρ… скобаках Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ (ΠΎΡ‚Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ табуляциСй) с Π±Π°ΠΉΡ‚Π°ΠΌΠΈ Ρ‚Π΅Ρ… самых Ρ„ΡƒΠ·ΠΎΠ². ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Ρ‚ΡƒΡ‚ мСняСтся БРАЗУ ΠžΠ‘Π БАЙВА Fuse Π±ΠΈΡ‚ΠΎΠ². Π’.Π΅. ΠΊΠ°ΡΠ°ΡŽΡ‚ΡΡ Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π°ΠΊΡ‚ΠΎΠ²ΠΎΠΉ частоты. А Π΅Ρ‰Π΅ всСго ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎ конфигурируСтся Π² FUSE. Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ я Π±Ρ‹ сразу ΠΏΠ΅Ρ€Π΅Π½Π°Π·Π²Π°Π» ΠΈΡ… ΠΈΠ½Π°Ρ‡Π΅. Π‘ΠΊΠ°ΠΆΠ΅ΠΌ ΠΊΠ°ΠΊ
All Default,but 1MHZ
All Default,but 2MHZ
All Default,but 4MHZ

Π§Ρ‚ΠΎΠ±Ρ‹ Π±Ρ‹Π»ΠΎ понятнСй. Но это ΠΊΠ°ΠΊ Π±Ρ‹ быстрыС ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ ΠΈ Π½Π΅ ΠΏΡ€Π΅Ρ‚Π΅Π½Π΄ΡƒΡŽΡ‚ Π½Π° Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ.

Π›ΡƒΡ‡ΡˆΠ΅ сразу Π½Π°ΠΆΠ°Ρ‚ΡŒ Advanced ΠΈ ΡƒΠ·Ρ€Π΅Ρ‚ΡŒ … Ρ‚ΠΎΡ‚ самый Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ Π²Π²ΠΎΠ΄.

Но Π½Π΅ стоит Π½Π°ΠΏΡ€ΡΠ³Π°Ρ‚ΡŒΡΡ, достаточно Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΎΡ‡ΠΊΡƒ Β«Π‘Β» (Π²ΠΈΠ΄ΠΈΠΌΠΎ Π°Π²Ρ‚ΠΎΡ€Ρ‹ ΠΈΠΌΠ΅Π»ΠΈ Π²Π²ΠΈΠ΄Ρƒ Calculator) ΠΈ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ ΡƒΠ΄ΠΎΠ±Π½Π΅ΠΉΡˆΠΈΠ΅ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠ΅ списки с чСловСчСским описаниСм. ΠŸΡ€ΡΠΌ ΠΊΠ°ΠΊ Π² STK500.

Но Π½ΠΈ Π² ΠΊΠΎΠ΅ΠΌ случаС Π½Π΅ Π·Π°Π±Ρ‹Π²Π°ΠΉΡ‚Π΅ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΎΡ‡ΠΊΡƒ READ ΠΏΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ ΠΊΠ°ΠΊ Ρ‡Ρ‚ΠΎ Π»ΠΈΠ±ΠΎ ΠΌΠ΅Π½ΡΡ‚ΡŒ. ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅, нСустановлСнныС fuse это Ρ‚ΠΎΠΆΠ΅ ΠΊΠ°ΠΊΠΎΠ΅ Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ записано ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ WRITE

ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹
Π’ΠΏΡ€ΠΎΡ‡Π΅ΠΌ, всС ΠΆΠ΅ Π³Π»Π°Π²Π½Ρ‹ΠΌ достоинством этой ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ являСтся Π΅Π΅ лСгкая Π·Π°Ρ‚ΠΎΡ‡ΠΊΠ° ΠΏΠΎΠ΄ любой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹ΠΉ Ρ‡Π΅Ρ€Π΅Π· AVRDUDE.

ΠŸΠΎΠΊΠ°ΠΆΡƒ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° встроСнного Π² Pinboard (На Π±Π°Π·Π΅ FTDI, Π½ΠΎ распиновка Π²Ρ‹Π²ΠΎΠ΄ΠΎΠ² Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ отличная ΠΎΡ‚ FTBB описанного Ρ€Π°Π½Π΅Π΅).

Π—Π°ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ мСшалась ΠΈ Π½Π΅ Π΄Π΅Ρ€ΠΆΠ°Π»Π° Ρ„Π°ΠΉΠ»Ρ‹.

ΠŸΡ€ΠΎΠΏΠΈΡΡ‹Π²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ FTBB Π² Ρ„Π°ΠΉΠ»Π΅ avrdude.conf я ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ Π½Π΅ Π±ΡƒΠ΄Ρƒ, ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅ΠΉ я ΠΎΠ± этом ΡƒΠΆΠ΅ писал Ρ€Π°Π½Π΅Π΅.

Π‘Ρ‡ΠΈΡ‚Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ это ΡƒΠΆΠ΅ сдСлано ΠΈ Π² Ρ„Π°ΠΉΠ»Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΠΎΠ² avrdude Ρƒ нас Π΅ΡΡ‚ΡŒ нуТная сСкция. Π― Π½Π°Π·Π²Π°Π» Π΅Π΅ pinb, Π²ΠΏΡ€ΠΎΡ‡Π΅ΠΌ, Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΌ.

ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ Π΄Π΅Π»ΠΎΠΌ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Ρ„Π°ΠΉΠ» Programmer.txt ΠΈ Π²ΠΈΠ΄ΠΈΠΌ Ρ‚Π°ΠΌ список:

1
2
3
4
5
6
7
8
9
10
11
ABCmini
ALF
Arduino
AT ISP
AVR109
AVR910
AVR911
AVRISP
AVRISP 2
AVRISP mkII
AVRISP v2

ABCmini ALF Arduino AT ISP AVR109 AVR910 AVR911 AVRISP AVRISP 2 AVRISP mkII AVRISP v2

ΠΈ Π΅Ρ‰Π΅ ΠΏΠΎΠ»Ρ‚ΠΎΡ€Ρ‹ страницы всС извСстных ΠΈ Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ Ρ‚ΠΈΠΏΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ². ВписываСм Ρ‚Π°ΠΌ ΠΏΠ΅Ρ€Π²ΠΎΠΉ строкой наш pinb

1
2
3
4
5
6
7
8
9
10
11
12
ABCmini
pinb
ALF
Arduino
AT ISP
AVR109
AVR910
AVR911
AVRISP
AVRISP 2
AVRISP mkII
AVRISP v2

ABCmini pinb ALF Arduino AT ISP AVR109 AVR910 AVR911 AVRISP AVRISP 2 AVRISP mkII AVRISP v2

ВсС, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΎΠ½ Π² спискС, Π½ΠΎ Π΅ΠΌΡƒ Π΅Ρ‰Π΅ Π½Π°Π΄ΠΎ ΡΠΎΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΏΠΎΡ€Ρ‚. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΠΉ Ρ„Π°ΠΉΠ» Port.txt
Π’ΠΎΡ‚ Π΅Π³ΠΎ Π΄Π΅Ρ„ΠΎΠ»Ρ‚Π½ΠΎΠ΅ содСрТимоС:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Default.
[COM1	com1
COM2	com2
COM3	com3
COM4	com4
COM5	com5
COM6	com6
COM7	com7
COM8	com8
COM9	com9
LPT1	lpt1
LPT2	lpt2
LPT3	lpt3]
Β 
STK500 v2.
[USB	avrdoper]
Β 
AVRISP mkII.
[USB	usb]
Β 
USBasp.
[USB	x]

Default. [COM1 com1 COM2 com2 COM3 com3 COM4 com4 COM5 com5 COM6 com6 COM7 com7 COM8 com8 COM9 com9 LPT1 lpt1 LPT2 lpt2 LPT3 lpt3] STK500 v2. [USB avrdoper] AVRISP mkII. [USB usb] USBasp. [USB x]

Как видишь, Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Ρ‚ΡƒΡ‚ сходный. НазваниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° (с Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ Π² ΠΊΠΎΠ½Ρ†Π΅!), Π° Π² скобках Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹. ΠŸΡ€ΠΈΡ‡Π΅ΠΌ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ Π΄Π΅Π»ΠΎΠΌ пишСм ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΏΠΎΡ€Ρ‚Π°, Π° ΠΏΠΎΡ‚ΠΎΠΌ Ρ‚ΠΎ Π² ΠΊΠ°ΠΊΠΎΠΌ Π²ΠΈΠ΄Π΅ ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΠ΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒΡΡ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡƒΡŽ строку avrdude. ΠœΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ табуляция.

ΠŸΠΎΡ€Ρ‚ FTDI bitbang Π² консоли называСтся ft# ΠΈ Π½ΠΎΠΌΠ΅Ρ€ ΠΎΡ‚ нуля Π΄ΠΎ бСсконСчности. Π’ зависимости ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ сколько Ρ‡ΠΈΠΏΠΎΠ² FTDI навСшано Π½Π° Ρ‚Π²ΠΎΠΉ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚. ΠŸΡ€ΠΈΡ‡Π΅ΠΌ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Π΅, Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Π΅, Ρ‡ΠΈΠΏΡ‹. И Π½Π΅ стоит ΠΏΡƒΡ‚Π°Ρ‚ΡŒ этот Π½ΠΎΠΌΠ΅Ρ€ с Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ COM ΠΏΠΎΡ€Ρ‚Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ этот Ρ‡ΠΈΠΏ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΡƒΠ΅Ρ‚. Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ Ссли Ρƒ тСбя Π² систСмС всСго ΠΎΠ΄ΠΈΠ½ Π°Π΄Π°ΠΏΡ‚Π΅Ρ€ USB-COM Π½Π° Π±Π°Π·Π΅ FTDI, Ρ‚ΠΎ ΠΊΠ°ΠΊΠΎΠΉ Π±Ρ‹ Ρ‚Π°ΠΌ COM ΠΏΠΎΡ€Ρ‚ Π½ΠΈ Π±Ρ‹Π», для bitbang ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° ΠΎΠ½ зовСтся ft0 ΠΈ Π½ΠΈΠΊΠ°ΠΊ ΠΈΠ½Π°Ρ‡Π΅. На всякий случай добавляСм нСсколько Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ².

ДобавляСм Ρ‚ΡƒΠ΄Π° Π½Π°ΡˆΡƒ ΡΠ΅ΠΊΡ†ΠΈΡŽ

1
2
3
4
5
pinb.
[FTDI	ft0
FTDI1	ft1
FTDI2	ft2
FTDI3	ft3]

pinb. [FTDI ft0 FTDI1 ft1 FTDI2 ft2 FTDI3 ft3]

ΠžΡΡ‚Π°Π»Π°ΡΡŒ Π΅Ρ‰Π΅ ΠΎΠ΄Π½Π° малСнькая Π΄Π΅Ρ‚Π°Π»ΡŒ. ΠžΠΏΡ†ΠΈΡ скорости. Для ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ² Π²ΠΏΠΎΠ»Π½Π΅ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ‚ ΠΈ дСфолтная настройка, Π½ΠΎ Π²ΠΎΡ‚ Π½Π΅Π·Π°Π΄Π°Ρ‡Π° β€” Ρ‚Π°ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠ»ΡŽΡ‡ -b, Π° ΠΎΠ½ мСняСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π±ΠΈΡ‚Ρ€Π΅ΠΉΡ‚ БОМ ΠΏΠΎΡ€Ρ‚Π°. А Ссли Π½Π°ΠΌ Π½Π°Π΄ΠΎ ΠΌΠ΅Π½ΡΡ‚ΡŒ Π±ΠΈΡ‚ΠΊΠ»ΠΎΠΊ FTDI Π±ΠΈΡ‚Π±Π°Π½Π³ эмуляции ΠΏΠΎΡ€Ρ‚Π°? Π’ΡƒΡ‚ Π² avrdude Π·Π° это ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ ΠΊΠ»ΡŽΡ‡ -B, Π½ΠΎ Sina Π΅Π³ΠΎ Π½Π΅ Π·Π½Π°Π΅Ρ‚. ΠŸΡ€ΠΈΠ΄Π΅Ρ‚ΡΡ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ. Π—Π° ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Ρ„Π°ΠΉΠ» speed.txt

ВписываСм Ρ‚ΡƒΠ΄Π° Π½Π°ΡˆΡƒ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Π² Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ ΠΊ ΡƒΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‰Π΅ΠΉΡΡ Π² Ρ‚Π°ΠΊΠΎΠΌ Π²ΠΈΠ΄Π΅:

1
2
3
4
5
6
7
8
9
10
11
12
13
1200	x -B 1200
2400	x -B 2400
4800	x -B 4800
9600	x -B 9600
14400	x -B 14400
19200	x -B 19200
38400	x -B 38400
57600	x -B 57600
115200	x -B 115200
230400	x -B 230400 
460800	x -B 460800
921600	x -B 921600
3000000	x -B 3000000

1200 x -B 1200 2400 x -B 2400 4800 x -B 4800 9600 x -B 9600 14400 x -B 14400 19200 x -B 19200 38400 x -B 38400 57600 x -B 57600 115200 x -B 115200 230400 x -B 230400 460800 x -B 460800 921600 x -B 921600 3000000 x -B 3000000

Π― ΠΆΠ΅, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ послСднСС врСмя ΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ FTDI BB ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠΌ, ΡƒΠ΄Π°Π»ΠΈΠ» Π²ΠΎΠΎΠ±Ρ‰Π΅ ΠΈΠ· этого Ρ„Π°ΠΉΠ»Π° всС ΠΈ оставил Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π» Π²Ρ‹ΡˆΠ΅.

ΠžΡ‚Π»ΠΈΡ‡Π½ΠΎ, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ ΠΌΡ‹ прописали ΠΈ ΠΏΠΎΡ€Ρ‚ ΠΌΡ‹ сопоставили. Π”Π°ΠΆΠ΅ скорости Π²Ρ‹ΠΏΡ€Π°Π²ΠΈΠ»ΠΈ. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π°Π΄ΠΎ сину Π·Π°ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ это Π΄Π΅Π»ΠΎ всС ΠΏΡ€ΠΎΠΆΠ΅Π²Π°Ρ‚ΡŒ. Для этого Π±Π΅Ρ€Π΅ΠΌ ΠΈ удаляСм Ρ„Π°ΠΉΠ» SinaProg.sav НС знаю ΠΊΠ°ΠΊ построСна Π»ΠΎΠ³ΠΈΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π½ΠΎ ΠΏΠΎΡ‡Π΅ΠΌΡƒ Ρ‚ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ это дСйствиС заставляСт Π΅Π΅ ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ собствСнныС ΠΊΠΎΠ½Ρ„ΠΈΠ³ΠΈ ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ наши строки Π² списки.

ВсС! Π“ΠΎΡ‚ΠΎΠ²ΠΎ β€” ΠΌΠΎΠΆΠ½ΠΎ ΡˆΠΈΡ‚ΡŒ! Π£Π΄Π°Ρ‡Π½ΠΎΠΉ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ!

Π‘Π°ΠΉΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² SinaProg (ΡƒΠ²Ρ‹ сдох πŸ™ )
Моя сборка SinaProg с ΡƒΠΆΠ΅ настроСнными ΠΊΠΎΠ½Ρ„ΠΈΠ³Π°ΠΌΠΈ ΠΏΠΎΠ΄ Pinboard ΠΈ FTBB

AVRDUDE_PROG


По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Π΅ МК (список МК постоянно Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅Ρ‚ΡΡ, см. Ρ„ΠΎΡ€ΡƒΠΌ):

AT90CAN128, AT90CAN32, AT90CAN64, ATmega128, ATmega1280, ATmega1281, ATmega1284p, ATmega128RFA1, ATmega16, ATmega162, ATmega164p, ATmega168, ATmega169, ATmega2560, ATmega2561, ATmega32, ATmega324p, ATmega325, ATmega3250, ATmega328p, ATmega329, ATmega3290, ATmega329p, ATmega3290p, ATmega32U4, ATmega48, ATmega8, ATmega8515, ATmega8535, ATmega88, ATtiny13, ATtiny2313, ATtiny261.

Β 


По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Ρ‹ (список ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ€Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ, Π»ΠΈΠ±ΠΎ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ с Ρ„ΠΎΡ€ΡƒΠΌΠ°):

USBasp, USBtiny, AVR ISP mkII,SI-Prog, AVR910, AVR910, STK200, STK500, STK500 2.X, JTAG ICE mkII, JTAG ICE mkII ISP, JTAG ICE mkII PDI.

Β 

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ отличия ΠΎΡ‚ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ :

1. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ добавлСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ², настройки скорости программирования ΠΈ Ρ‚.ΠΏ;
2. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ добавлСния МК;
3. РСдактирования ΠΈ настройка отобраТСния Fuses Π±ΠΈΡ‚ΠΎΠ²;
4. Π’Ρ‹Π±ΠΎΡ€ инвСрсных ΠΈΠ»ΠΈ прямых Fuses Π±ΠΈΡ‚ΠΎΠ²;
5. Окна Π²Ρ‹Π²ΠΎΠ΄Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Fuses Π±ΠΈΡ‚ΠΎΠ² Π² HEX Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅;
6. Π‘ΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ настроСк программирования ΠΏΡ€ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Ρ‚.Π΅. ΠΏΡ€ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ всС настройки восстановятся;
7. «Π΄ΡƒΠ±Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ» — данная функция Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π½Π° экран ΠΊΠ½ΠΎΠΏΠΊΡƒ «ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ», которая являСтся ΠΏΠΎΠ»Π½Ρ‹ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ Π°Π½Π°Π»ΠΎΠ³ΠΎΠΌ ΠΊΠ½ΠΎΠΏΠΊΠΈ «ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ всё» ΠΈ всСгда Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ ΠΏΠΎ Π²Π΅Ρ€Ρ… всСх ΠΎΠΊΠΎΠ½. ΠšΠ½ΠΎΠΏΠΊΡƒ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π² ΡƒΠ΄ΠΎΠ±Π½ΡƒΡŽ для вас Π·ΠΎΠ½Ρƒ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π°, свСрнув AVRDUDE_PROG. Π£Π΄ΠΎΠ±Π½Π° ΠΏΡ€ΠΈ многочислСнном ΠΏΠ΅Ρ€Π΅ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ МК.

Β 

Β 

Установка.

Π Π°Π·Π°Ρ€Ρ…ΠΈΠ²ΠΈΡ€ΡƒΠΉΡ‚Π΅ Ρ„Π°ΠΉΠ» usbprog.rar Π² Π»ΡŽΠ±ΡƒΡŽ ΡƒΠ΄ΠΎΠ±Π½ΡƒΡŽ ΠΏΠ°ΠΏΠΊΡƒ. ΠŸΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚Π΅ ярлык ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Β«AVRDUDE_PROGΒ» Π½Π° Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ стол. Установка Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π°. МоТно Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ.

Β 

ВозмоТности ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Настройки ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ «AVRDUDE_PROG» Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Π² «ini» Ρ„Π°ΠΉΠ»Π°Ρ…. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ «ini» Ρ„Π°ΠΉΠ»Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ‚ΡƒΡ‚.
Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ список ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ², ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ², ΠΏΠΎΡ€Ρ‚ΠΎΠ², Fuses Π±ΠΈΡ‚, Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ языки ΠΈ ΠΏΡ€.
Бписок ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² ΠΈ состояний Fuses Π±ΠΈΡ‚, рСдактируСтся Π² Ρ„Π°ΠΉΠ»Π΅ «atmel.ini», список ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ² ΠΈ ΠΏΠΎΡ€Ρ‚ΠΎΠ² Π² Ρ„Π°ΠΉΠ»Π΅ «programm.ini», список ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… языков Π² Ρ„Π°ΠΉΠ»Π΅ «language.ini».

Π’ Ρ„Π°ΠΉΠ»Π΅ «atmel.ini», всС значСния Π²Π²Π΅Π΄Π΅Π½Ρ‹ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π² соотвСтствии с datasheet Π½Π° МК, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΏΠΎ Π’Π°ΡˆΠ΅ΠΌΡƒ ΡƒΡΠΌΠΎΡ‚Ρ€Π΅Π½ΠΈΡŽ. Никаких инвСрсий Π½Π΅ трСбуСтся, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² соотвСтствии с datasheet Π½Π° МК. Π’ Ρ‚ΠΎΠΌ случаС, Ссли МК Π½Π΅Ρ‚ Π² спискС, ΠΈΠ»ΠΈ ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ МК Π²ΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Fuses Π²Π΅Π·Π΄Π΅ «error», Ρ‚ΠΎ Π’Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ввСсти значСния Π² Ρ„Π°ΠΉΠ» «atmel.ini» Π² соотвСтствии с datasheet ΠΈ ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½Π½Ρ‹ΠΌ Π½ΠΈΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ. Π›ΠΈΠ±ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π° Ρ„ΠΎΡ€ΡƒΠΌΠ΅. Π€Π°ΠΉΠ» «atmel.ini» находится Π² ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π’ Ρ„Π°ΠΉΠ»Π΅ «programm.ini», Π²Π²Π΅Π΄Π΅Π½Ρ‹ значСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ² для ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки avrdude. Π’ Ρ‚ΠΎΠΌ случаС, Ссли ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ Π’Π°ΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ отсутствуСт Π² спискС, Π»ΠΈΠ±ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ установлСнныС ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ввСсти/Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ значСния ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ Π² соотвСтствии с ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½Π½Ρ‹ΠΌ Π½ΠΈΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ. Π›ΠΈΠ±ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π° Ρ„ΠΎΡ€ΡƒΠΌΠ΅. Π€Π°ΠΉΠ» «programm.ini» находится Π² ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π’ Ρ„Π°ΠΉΠ»Π΅ «language.ini», Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° «ΡΠ²ΠΎΠΉ вкус» Ρ‚Π΅ΠΊΡΡ‚ΠΎΠ²ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ, Π»ΠΈΠ±ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ язык ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ AVRDUDE_PROG. Π’ΡƒΡ‚ Ρ€Π°ΡΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π±ΡƒΠ΄Ρƒ, Π΄ΡƒΠΌΠ°ΡŽ Π² Ρ„Π°ΠΉΠ»Π΅ «language.ini» всё понятно.

Β 

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅/Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ списка МК. Π Π°Π±ΠΎΡ‚Π° с Ρ„Π°ΠΉΠ»ΠΎΠΌ «atmel.ini».

ΠžΠΊΡ€ΠΎΠΉΡ‚Π΅ Π² любом тСкстовом Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ (Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ Notepad++) Ρ„Π°ΠΉΠ» «atmel.ini». ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ ΠΊΠ°ΠΊ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π²Π²ΠΎΠ΄ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² МК, Ρ„ΡƒΠ·Π΅ Π±ΠΈΡ‚ΠΎΠ² ΠΈ ΠΏΡ€. НиТС ΠΏΡ€ΠΈΠ²ΠΎΠΆΡƒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΈ описаниС ΠΏΠ°Ρ€ΠΌΠ΅Ρ‚Ρ€ΠΎΠ².

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π½Π° ΠΌΠΊ AT90CAN128

Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Ρ€Π°Π·Π΄Π΅Π»Π°
[AT90CAN128] — имя МК ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ Π² Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅ΠΌ спискС, «[» ΠΈ «]» ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС «AT90CAN128».

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ для Ρ‚ΠΈΠΏΠ° МК
mcuavrdude=c128 // Ρ‚ΠΈΠΏ ΠΌΠΊ Π² avrdude


Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈ описаниС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Ρ€Π°Π·Π΄Π΅Π»Π° для Fuse Π±ΠΈΡ‚ΠΎΠ²

Lock Π±Π°ΠΉΡ‚
lockbytebit*enabled=0 // «*» — Π½ΠΎΠΌΠ΅Ρ€ Π±ΠΈΡ‚Π° Π² Lock Π±Π°ΠΉΡ‚Π΅, «**enabled=0» — Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ состояния Π±ΠΈΡ‚Π°, «**enabled=1» — Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ состояния Π±ΠΈΡ‚Π°. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π±ΠΈΡ‚Π° Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. ИзмСнСниС Π±ΠΈΡ‚Π° Π±ΡƒΠ΄Π΅Ρ‚ нСдоступно.
lockbytebit*name=NOT USED // «*» — Π½ΠΎΠΌΠ΅Ρ€ Π±ΠΈΡ‚Π° Π² Lock Π±Π°ΠΉΡ‚Π΅, «**name = NOT USED» — Π±ΠΈΡ‚ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ. Если Π±ΠΈΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π΅Π³ΠΎ имя Π² соотвСтствии с datasheet.
lockbytebit*def=1 // «*» — Π½ΠΎΠΌΠ΅Ρ€ Π±ΠΈΡ‚Π° Π² Lock Π±Π°ΠΉΡ‚Π΅, «**def=» — Ссли имя Π±ΠΈΡ‚ Π±ΠΈΡ‚Π° = «NOT USED», Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ вводится Π² соотвСтствии с datasheet. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС «1».

High Π±Π°ΠΉΡ‚
highbytebit*enabled=1 // «*» — Π½ΠΎΠΌΠ΅Ρ€ Π±ΠΈΡ‚Π° Π² High Π±Π°ΠΉΡ‚Π΅, «**enabled=0» — Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ состояния Π±ΠΈΡ‚Π°, «**enabled=1» — Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ состояния Π±ΠΈΡ‚Π°. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π±ΠΈΡ‚Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. ИзмСнСниС Π±ΠΈΡ‚Π° Π±ΡƒΠ΄Π΅Ρ‚ доступно.
highbytebit*name=OCDEN // «*» — Π½ΠΎΠΌΠ΅Ρ€ Π±ΠΈΡ‚Π° Π² High Π±Π°ΠΉΡ‚Π΅, «**name = OCDEN» — имя Π±ΠΈΡ‚Π° Π² соотвСтствии с datasheet.
highbytebit*def=1 // «*» — Π½ΠΎΠΌΠ΅Ρ€ Π±ΠΈΡ‚Π° Π² High Π±Π°ΠΉΡ‚Π΅, «**def=1» — Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π±ΠΈΡ‚Π° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² соотвСтствии с datasheet. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ «1».

Low Π±Π°ΠΉΡ‚
lowbytebit*enabled=1 // «*» — Π½ΠΎΠΌΠ΅Ρ€ Π±ΠΈΡ‚Π° Π² Low Π±Π°ΠΉΡ‚Π΅, «**enabled=0» — Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ состояния Π±ΠΈΡ‚Π°, «**enabled=1» — Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ состояния Π±ΠΈΡ‚Π°. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π±ΠΈΡ‚Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. ИзмСнСниС Π±ΠΈΡ‚Π° Π±ΡƒΠ΄Π΅Ρ‚ доступно.
lowbytebit*name=CKDIV8 // «*» — Π½ΠΎΠΌΠ΅Ρ€ Π±ΠΈΡ‚Π° Π² Low Π±Π°ΠΉΡ‚Π΅, «**name = CKDIV8» — имя Π±ΠΈΡ‚Π° Π² соотвСтствии с datasheet.
lowbytebit*def=0 //»*» — Π½ΠΎΠΌΠ΅Ρ€ Π±ΠΈΡ‚Π° Π² Low Π±Π°ΠΉΡ‚Π΅, «**def=0» — Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π±ΠΈΡ‚Π° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² соотвСтствии с datasheet. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ «0».

Extended/Fuse/Fuse Π±Π°ΠΉΡ‚
extendedbytebit*enabled=0 // «*» — Π½ΠΎΠΌΠ΅Ρ€ Π±ΠΈΡ‚Π° Π² Extended/Fuse/Fuse Π±Π°ΠΉΡ‚Π΅, «enabled=0» — Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ состояния Π±ΠΈΡ‚Π°, «enabled=1» — Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ состояния Π±ΠΈΡ‚Π°. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π±ΠΈΡ‚Π° Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. ИзмСнСниС Π±ΠΈΡ‚Π° Π±ΡƒΠ΄Π΅Ρ‚ нСдоступно.
extendedbytebit*name=NOT USED //»*» — Π½ΠΎΠΌΠ΅Ρ€ Π±ΠΈΡ‚Π° Π² Extended/Fuse/Fuse Π±Π°ΠΉΡ‚Π΅, «name = NOT USED» — Π±ΠΈΡ‚ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ. Если Π±ΠΈΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π΅Π³ΠΎ имя Π² соотвСтствии с datasheet.
extendedbytebit*def=1 // «*» — Π½ΠΎΠΌΠ΅Ρ€ Π±ΠΈΡ‚Π° Π² Lock Π±Π°ΠΉΡ‚Π΅, «**def=» — Ссли имя Π±ΠΈΡ‚ Π±ΠΈΡ‚Π° = «NOT USED», Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ вводится Π² соотвСтствии с datasheet. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС «1».

Β 

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅/Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ списка ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ². Π Π°Π±ΠΎΡ‚Π° с Ρ„Π°ΠΉΠ»ΠΎΠΌ «programm.ini».

ΠžΠΊΡ€ΠΎΠΉΡ‚Π΅ Π² любом тСкстовом Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ (Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ Notepad++) Ρ„Π°ΠΉΠ» «programm.ini». ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ ΠΊΠ°ΠΊ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π²Π²ΠΎΠ΄ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ². НиТС ΠΏΡ€ΠΈΠ²ΠΎΠΆΡƒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΈ описаниС ΠΏΠ°Ρ€ΠΌΠ΅Ρ‚Ρ€ΠΎΠ².

ОписаниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»Π°.

[Name programmator] – имя ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° Π° Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅ΠΌ спискС
progisp – ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ для ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки avrdude
portprog – ΠΏΠΎΡ€Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° для ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки avrdude (Usb, com, lpt ΠΈ ΠΏΡ€.)
portenabled – ΠΎΠΊΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΡ€Ρ‚Π° Β«1Β»-доступно, Β«0Β» — нСдоступно

Β 

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ AVR STK200 с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ LPT.

Для добавлСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° AVR STK200 с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ LPT Π² Ρ„Π°ΠΉΠ» Β«programm.iniΒ» ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

[STK200LPT]
progisp=stk200
portprog=lpt1
portenabled=0

Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅ Ρ„Π°ΠΉΠ» Β«programm.iniΒ»

Π’ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅ΠΌ спискС «ΠΠ°ΡΡ‚Ρ€ΠΎΠΉΠΊΠΈ» -> «ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€» ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ Β« STK200LPT Β» с Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ ΠΎΡ‚ lpt1 ΠΏΠΎΡ€Ρ‚Π°.
Всё Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ для Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ², ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… avrdude.

Β 

AVRDUDE_PROG 3.3 (24.02.2014)

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ отличия ΠΎΡ‚ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ вСрсии:
— Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ ΠΊΡƒΡ‡Π° ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ², исправлСны ошибки Ρ„Π°ΠΉΠ»ΠΎΠ² «atmel.ini»,»avrdude.conf» — ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ΅ спасибо ΠΌΠΎΠ΄Π΅Ρ€Π°Ρ‚ΠΎΡ€Ρƒ Ρ„ΠΎΡ€ΡƒΠΌΠ° dmibr Π·Π° ΠΏΡ€ΠΎΠ΄Π΅Π»Π°Π½Π½ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ!
— исправлСны ΠΌΠ΅Π»ΠΊΠΈΠ΅ ошибки.
Если Ρƒ Вас установлСна ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° вСрсии 3.1 ΠΈ Π²Ρ‹ΡˆΠ΅, Ρ‚ΠΎ достаточно Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ» — «AVRDUDEPROG.exe»,»avrdude.exe»,»avrdude.conf»,»atmel.ini» . Π’ этом случаС всС Ρ€Π°Π½Π΅Π΅ сохранённыС настройки Π² Ρ„Π°ΠΉΠ»Π°Ρ… «ini» Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ.

Π Π°Π·ΠΌΠ΅Ρ€ Ρ„Π°ΠΉΠ»Π°: 690ΠšΠ‘
Бтатус ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹: бСсплатная
ОБ: Windows NT/2000/XP/VISTA/WINDOWS 7
Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ: русский, english
Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ: yourdevice
ВСрсия: 3.3 (24.02.2014)

Β 

AVRDUDE_PROG 3.2

Π’ΠΠ˜ΠœΠΠΠ˜Π•!!! ΠΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎ для вСрсии 3.2 — ссылка Π½Π° Ρ„ΠΎΡ€ΡƒΠΌ

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ отличия ΠΎΡ‚ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ вСрсии:
— исправлСно зависаниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случая;
— исправлСна ΡˆΠΈΡ€ΠΈΠ½Π° Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ списка ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ²;
— Π² Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌ ΠΎΠΊΠ½Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ состояниС avrdude Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΎΠ½Π»Π°ΠΉΠ½, Π° Π½Π΅ Π² ΠΊΠΎΠ½Ρ†Π΅ программирования;
— исправлСны ΠΌΠ΅Π»ΠΊΠΈΠ΅ ошибки.
Если Ρƒ Вас установлСна ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° вСрсии 3.1, Ρ‚ΠΎ достаточно Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Β«exeΒ» Ρ„Π°ΠΉΠ». Π’ этом случаС всС Ρ€Π°Π½Π΅Π΅ сохранённыС настройки Π² Ρ„Π°ΠΉΠ»Π°Ρ… «ini» Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ.

Π Π°Π·ΠΌΠ΅Ρ€ Ρ„Π°ΠΉΠ»Π°: 558ΠšΠ‘
Бтатус ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹: бСсплатная
ОБ: Windows NT/2000/XP/VISTA/WINDOWS 7
Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ: русский, english
Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ: yourdevice
ВСрсия: 3.2 (03.08.2013)

download_manager Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ.

Β 

AVRDUDE_PROG 3.1

Π Π°Π·ΠΌΠ΅Ρ€ Ρ„Π°ΠΉΠ»Π°: 558ΠšΠ‘
Бтатус ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹: бСсплатная
ОБ: Windows NT/2000/XP/VISTA/WINDOWS 7
Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ: русский, english
Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ: yourdevice
ВСрсия: 3.1 (18.10.2012)

download_manager Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ.

Β 

AVRDUDE_PROG 3.0

Π Π°Π·ΠΌΠ΅Ρ€ Ρ„Π°ΠΉΠ»Π°: 558ΠšΠ‘
Бтатус ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹: бСсплатная
ОБ: Windows NT/2000/XP/VISTA/WINDOWS 7
Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ: русский
Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ: yourdevice
ВСрсия: 3.0

download_manager Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ.

AVRDUDE

Консольная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° для считывания, измСнСния ΠΈ записи содСрТимого памяти ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ AVR, ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‰Π°Ρ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΡŽ внутрисхСмного программирования.

AVRDUDE (сокращСниС ΠΎΡ‚ AVR Downloader-Uploader) прСдставляСт собой ΠΌΠΎΡ‰Π½ΡƒΡŽ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΡƒΡŽ посрСдством консольного интСрфСйса Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ ΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Ρ‚ΡŒ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρ‹ ΠΎΡ‚ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Atmel. AVRDUDE основана Π½Π° распространСнном интСрфСйсС ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ с микросхСмами – SPI. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° позволяСт ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Ρ‚ΡŒ FLASH- ΠΈ EEPROM-ΠΏΠ°ΠΌΡΡ‚ΡŒ, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡŒΡŽΠ·Ρ‹, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ FLASH-памяти с Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΌ HEX-Ρ„Π°ΠΉΠ»ΠΎΠΌ, Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ΅.
Π”Π°Π½Π½Ρ‹ΠΉ софт ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» ΠΎΠ³Ρ€ΠΎΠΌΠ½ΡƒΡŽ ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ вслСдствиС ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ ΡˆΠΈΡ€ΠΎΡ‡Π°ΠΉΡˆΠ΅Π³ΠΎ спСктра ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ² (FT2232, Atmel AVR ISP, Altera ByteBlaster, Atmel STK500 ΠΈ STK600, USBasp, Brian Dean’s Programmer, Dontronics DT006, Pony Prog STK200, Bascom SAMPLE programming cable ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΡ…-ΠΌΠ½ΠΎΠ³ΠΈΡ… Π΄Ρ€ΡƒΠ³ΠΈΡ…), Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… Ρ‡Π΅Ρ€Π΅Π· интСрфСйсы ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡ€Ρ‚ΠΎΠ². ΠšΡ€ΠΎΠΌΠ΅ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ… срСдств ΠΎΡ‚ Atmel Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π° Ρ€Π°Π±ΠΎΡ‚Π° с Π»ΡŽΠ±ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠΌΠΈ издСлиями, Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹ΠΌΠΈ AVR Studio.

Π“Π»Π°Π²Π½ΠΎΠΉ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ являСтся ΠΊΠΎΠ½ΡΠΎΠ»ΡŒΠ½Ρ‹ΠΉ интСрфСйс, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰ΠΈΠΉ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Π½Π°Π²Ρ‹ΠΊΠΎΠ² Ρ€Π°Π±ΠΎΡ‚Ρ‹. Однако сторонними Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ для AVRDUDE Π±Ρ‹Π» создан ряд ΡƒΠ΄ΠΎΠ±Π½Ρ‹Ρ… графичСских ΠΎΠ±ΠΎΠ»ΠΎΡ‡Π΅ΠΊ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… ΠΏΡ€ΠΈ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠΈ содСрТимого памяти ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ², измСнСния ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Π±Π°ΠΉΡ‚ΠΎΠ² EEPROM, Lock- ΠΈ Fuse-Π±ΠΈΡ‚ΠΎΠ². ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΆΠ΅ всю ΠΏΠ°ΠΌΡΡ‚ΡŒ кристалла ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки AVRDUDE.

Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ AVR Studio, ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ лишь Π² процСссС создания ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, AVRDUDE большС ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для сСрийного ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Π½ΠΈΡ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ². Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с повсСднСвными ΠΎΠ΄Π½ΠΎΡ‚ΠΈΠΏΠ½Ρ‹ΠΌΠΈ Π·Π°Π΄Π°Ρ‡Π°ΠΌΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π½Π΅ трСбуСтся ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· Π½Π°Π±ΠΈΡ€Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΏΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΌΠΈ Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ. Для этого Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ bat-Ρ„Π°ΠΉΠ» ΠΈ ΠΏΡ€ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ Π² Π½Π΅ΠΌ ΠΊΠ»ΡŽΡ‡ΠΈ, ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» с ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΎΠΉ ΠΈ, самоС Π³Π»Π°Π²Π½ΠΎΠ΅, Π²Π΅Ρ€Π½ΠΎ внСсти Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡƒΡŽ строку Fuse-Π±ΠΈΡ‚Ρ‹. Π’ дальнСйшСм Π±ΡƒΠ΄Π΅Ρ‚ достаточно лишь Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ bat-Ρ„Π°ΠΉΠ» Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅. Для Ρ€Π°Π·Π½Ρ‹Ρ… устройств Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ свой Π±Π°Ρ‚Π½ΠΈΠΊ.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС AVRDUDE ΠΈΠΌΠ΅Π΅Ρ‚ статус GNU GPL, Ρ‡Ρ‚ΠΎ Π΄Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ свободно ΡΠΊΠ°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ Π΅Π΅, ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΏΠΎ собствСнному ТСланию ΠΈ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡ‚ΡŒ дальшС. Благодаря этому AVRDUDE вошла Π² состав Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… срСд для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² AVR, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ WinAVR.

Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹ΠΉ софт ΠΌΠΎΠΆΠ½ΠΎ вмСстС с ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠΌ WinAVR (для запуска Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС: avrdude) ΠΈΠ»ΠΈ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ всС Π½ΡƒΠΆΠ½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ исходный ΠΊΠΎΠ΄, с ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ сайта ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹: http://download.savannah.gnu.org/releases/avrdude/.

ΠŸΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ AVRDUDE Π±Ρ‹Π» создан английским программистом Π‘Ρ€Π°ΠΉΠ΅Π½ΠΎΠΌ Π”ΠΈΠ½ΠΎΠΌ (http://www.bsdhome.com/). ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π±Ρ‹Π»Π° написана для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы FreeBSD ΠΈ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΠ»Π°ΡΡŒ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ AVRprog. Π’ связи с растущим интСрСсом ΠΊ Π΄Π°Π½Π½ΠΎΠΌΡƒ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Ρƒ Π‘Ρ€Π°ΠΉΠ°Π½ Ρ€Π΅ΡˆΠΈΠ» ΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы ΠΈ Π²Ρ‹Π»ΠΎΠΆΠΈΡ‚ΡŒ Π² свободном доступС. ИзмСнСниС названия Π½Π° AVRDUDE ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Π±Ρ‹Π»ΠΎ ΠΏΡƒΡ‚Π°Π½ΠΈΡ†Ρ‹ с ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ΠΎΠΉ AVRprog, распространяСмой ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Atmel Π² составС AVR Studio.

ΠšΠΎΠ½ΡΠΎΠ»ΡŒΠ½Ρ‹ΠΉ интСрфСйс AVRDUDE прСдставлСн Π½Π° английском языкС, ΠΎΠ΄Π½Π°ΠΊΠΎ Π² Π‘Π΅Ρ‚ΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ русифицированныС графичСскиС ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ рассматриваСмой ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ AVRDUDE_PROG.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° AVRDUDE прСдставлСна Π² Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°Ρ… для Windows ΠΈ Linux. Windows-вСрсия ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ всС извСстныС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы Microsoft, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Vista ΠΈ 7. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π² Windows 2000 ΠΈ Windows XP Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ с ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΠΎΡ€Ρ‚ΠΎΠΌ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½Π°, для Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ функционирования AVRDUDE потрСбуСтся ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ giveio.sys, поставляСмый с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ. Π’ Windows 98 Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ настройки Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ΡΡ.

РаспространСниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹: Freeware (бСсплатная)

ΠžΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ сайт ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ «AVRDUDE»: http://download.savannah.gnu.org/releases/avrdude/

Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ AVRDUDE

ΠžΠ±ΡΡƒΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Ρ„ΠΎΡ€ΡƒΠΌΠ΅

Avrdude β€” консольная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² β€” IST Knowledge

Avrdude (AVR Downloader-Uploader) β€” бСсплатная кросплатформСнная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, прСдназначСнная для ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Π½ΠΈΡ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ATMEL. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ практичСски всС ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ΡΡ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ², Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ сторонниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Ρ‹.

Π‘Π°ΠΉΡ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹:Β http://www.nongnu.org/avrdude/ ЛицСнзия: GPL ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Π°Ρ систСма: ΠšΡ€ΠΎΡΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½Π½Ρ‹ΠΉ ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹Β Avrdude являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° ΠΈΠΌΠ΅Π΅Ρ‚ ΠΊΠΎΠ½ΡΠΎΠ»ΡŒΠ½Ρ‹ΠΉ интСрфСйс ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΡ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΎΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Π½Π°Π²Ρ‹ΠΊΠΎΠ². Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ для Π»ΡŽΠ±ΠΈΡ‚Π΅Π»Π΅ΠΉ графичСского интСрфСйса имССтся ряд сторонних графичСских ΠΎΠ±ΠΎΠ»ΠΎΡ‡Π΅ΠΊ для этой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π₯отя графичСский интСрфСйс являСтся Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΌ ΠΈ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ, для выполнСния повсСднСвных ΠΎΠ΄Π½ΠΎΡ‚ΠΈΠΏΠ½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ всС ΠΆΠ΅ Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ из скриптов cmd, Ρ‡Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ рассмотрСно Π² Π΄Π°Π½Π½ΠΎΠΌ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π΅. ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌ способом ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Π½ΠΈΡ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² ΡΠ²Π»ΡΡŽΡ‚ΡΡ встроСнныС срСдства, входящиС Π² состав срСдств Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ AVR Studio. Но ΠΎΠ½ΠΈ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² процСссС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.Β Avrdude большС ΠΏΠΎΠ»Π΅Π·Π΅Π½ Π² процСссС сСрийного ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Π½ΠΈΡ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… ΠΈΠ·Π΄Π΅Π»ΠΈΠΉ, Ρ‚.ΠΊ. Π½Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ установки срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Π° для ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° достаточно Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π²Π°ΠΆΠ΄Ρ‹ Ρ‰Π΅Π»ΠΊΠ½ΡƒΡ‚ΡŒ ΠΌΡ‹ΡˆΡŒΡŽ ΠΏΠΎ Π·Π°Ρ€Π°Π½Π΅Π΅ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½ΠΎΠΌΡƒ ярлыку (СстСствСнно с ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ запуска ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹).

Π˜Ρ‚Π°ΠΊ, для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ потрСбуСтся:

  1. Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ;
  2. Π Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки ΠΈ ΡΡ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ запуска ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

ПослС Ρ‡Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π³ΠΎΡ‚ΠΎΠ²Π° ΠΊ использованию.

Установка Avrdude

Avrdude Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π² состав ΠΏΠ°ΠΊΠ΅Ρ‚Π°Β WinAVR, поэтому установка сводится ΠΊ установкС Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚Π°. Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒΒ WinAVR ΠΌΠΎΠΆΠ½ΠΎ здСсь:Β http://sourceforge.net/projects/winavr/. ПослС установки ΠΏΠ°ΠΊΠ΅Ρ‚Π°Β WinAVR ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒΒ Avrdude, для Ρ‡Π΅Π³ΠΎ ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡƒΡŽ строку ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ: avrdude ПослС Ρ‡Π΅Π³ΠΎ Π½Π° экранС Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ ΠΊΡ€Π°Ρ‚ΠΊΡƒΡŽ ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

Бинтаксис ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹Β Avrdude: AvrdudeΒ [ΠΎΠΏΡ†ΠΈΠΈ] Π“Π΄Π΅Β [ΠΎΠΏΡ†ΠΈΠΈ]Β Π·Π°Π΄Π°ΡŽΡ‚ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅Β -ΠΊΠ»ΡŽΡ‡_Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Рассмотрим Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π·Π½Π°Ρ‡ΠΈΠΌΡ‹Π΅ ΠΎΠΏΡ†ΠΈΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.

Π—Π°Π΄Π°Π΅ΠΌ Ρ‚ΠΈΠΏ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° (-p)

Avrdude -p <partno>

Π³Π΄Π΅Β <partno>Β β€” Ρ‚ΠΈΠΏ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°. Данная ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΊΠ°ΠΊΠΎΠΉ Ρ‚ΠΈΠΏ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ. НапримСр, для ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° Atmega32Β <partno>Β Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π²Π΅Π½Β m32.

Π—Π°Π΄Π°Π΅ΠΌ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΏΠΎΡ€Ρ‚Π° для ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° (-b)

Avrdude -b <baudrate>Β 

Π³Π΄Π΅Β <baudrate> пСрСопрСдСляСт ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠΌ ΠΏΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΌΡƒ интСрфСйсу (относится Π½Π΅ ΠΊΠΎ всСм Ρ‚ΠΈΠΏΠ°ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ²). НС рСкомСндуСтся ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Π±Π΅Π· особых ΠΏΡ€ΠΈΡ‡ΠΈΠ½, Ρ‚.ΠΊ. ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Ρ‹ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ Π½Π° ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.

Π—Π°Π΄Π°Π΅ΠΌ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΎΠ±ΠΌΠ΅Ρ€Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° с ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠΌ (-B)

Avrdude -B <bitclock>Β 

Π³Π΄Π΅Β <Β bitclock> пСрСопрСдСляСт ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° с ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠΌ. Π”Π°Π½Π½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ссли частота ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° слишком низкая ΠΈ Π½Π΅ позволяСт ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° скорости ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. Π’ Ρ‚Π°ΠΊΠΎΠΌ случаС с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ программирования ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ сниТСна.

Π—Π°ΠΏΡ€Π΅Ρ‰Π°Π΅ΠΌ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ очистку памяти ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ (-D)

Avrdude -D Если Π½Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ очистку flash-памяти ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡƒΡŽ ΠΏΠ΅Ρ€Π΅Π΄ Π΅Π΅ ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Π΅Π½ΠΈΠ΅ΠΌ, Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Π΄Π°Π½Π½ΡƒΡŽ ΠΎΠΏΡ†ΠΈΡŽ.

Π£ΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ ΠΏΠΎΡ€Ρ‚, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ (-P)

Avrdude -PΒ <port> УказываСтся ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ ΠΏΠΎΡ€Ρ‚ ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΊ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρƒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€. Π‘Ρ€Π΅Π΄ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒΒ COM1 для ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ интСрфСйса ΠΈΠ»ΠΈ LPT1 для ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ USB.

ΠžΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ сигнатуры ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° (-F)

Avrdude -F ΠžΠΏΡ†ΠΈΡ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ сигнатуры ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ΅. НС рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½ΡƒΡŽ ΠΎΠΏΡ†ΠΈΡŽ, Ρ‚.ΠΊ. ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° сигнатуры позволяСт ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Ρ‚ΠΎΡ‚ Π»ΠΈ Ρ‚ΠΈΠΏ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΠΌ ΠΈΠ»ΠΈ Π½Π΅Ρ‚.

ΠžΡ‡ΠΈΡΡ‚ΠΊΠ° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° (-e)

Avrdude -e ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ очистку flash-памяти ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°. Данная опСрация производится автоматичСски ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Π½ΠΈΠΈ.

ΠœΠ°Π½ΠΈΠΏΡƒΠ»ΡΡ†ΠΈΠΈ с ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° (-U)

Avrdude -U <memtype>:r|w|v:<filename>[:format] НаиболСС значимая опция ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, которая нСпосрСдствСнно ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°. ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Β memtypeΒ Π·Π°Π΄Π°Π΅Ρ‚ ΠΊΠ°ΠΊΠΎΠΉ Ρ‚ΠΈΠΏ памяти Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Ρ‚Ρ€ΠΎΠ½ΡƒΡ‚ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:

  • flash β€” Ρ„Π»Π΅Ρˆ ΠΏΠ°ΠΌΡΡ‚ΡŒΒ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°;
  • eeprom β€” энСргонСзависимая ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°;
  • hfuse β€” ΡΡ‚Π°Ρ€ΡˆΠΈΠΉ Π±Π°ΠΉΡ‚ Ρ„ΡŒΡŽΠ·ΠΎΠ² ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°;
  • lfuse β€”Β  младший Π±Π°ΠΉΡ‚ Ρ„ΡŒΡŽΠ·ΠΎΠ² ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°;
  • efuse β€” Β Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ Π±Π°ΠΉΡ‚ Ρ„ΡŒΡŽΠ·ΠΎΠ² ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° (Ссли поддСрТиваСтся ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠΌ).

Π§Ρ‚ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ с ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ опрСдСляСт ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π·Π°Β memtypeΒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Ρ‡Π΅Ρ€Π΅Π· Π΄Π²ΠΎΠ΅Ρ‚ΠΎΡ‡ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ запись Π² ΠΏΠ°ΠΌΡΡ‚ΡŒ (r), Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ содСрТимого памяти ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° (w) ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° памяти (v). Π”Π°Π»Π΅Π΅ послС Π΄Π²ΠΎΠ΅Ρ‚ΠΎΡ‡Π΅Π³ΠΎ слСдуСт имя Ρ„Π°ΠΉΠ»Π°Β <filename>Β (ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»Π½Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ с ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ диска Π² ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠ°Ρ…) ΠΊΡƒΠ΄Π° слСдуСт ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΈΠ»ΠΈ ΠΎΡ‚ΠΊΡƒΠ΄Π° Π½Π°Π΄ΠΎ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ содСрТимоС памяти. ΠΠ΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Β format опрСдСляСт Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Ρ„Π°ΠΉΠ»Π°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ хранится участок памяти. НаиболСС Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹ΠΌ для flash памяти Π±ΡƒΠ΄Π΅Ρ‚ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Β«Intel HexΒ», ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Π΅ΠΌΡ‹ΠΉ символом i. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΊΠΎΠΌΠ°Π½Π΄Π° Π½Π° запись Π² ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ, содСрТащСйся Π² Ρ„Π°ΠΉΠ»Π΅Β test.hexΒ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ: Avrdude -U flash:w:test.hex:iΒ 

Команда Π½Π° Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ содСрТимого энСргонСзависимой памяти ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° Π² Ρ„Π°ΠΉΠ»Β Β eedump.hexΒ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ:Avrdude -U eeprom:r:eedump.hex:i

Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π»ΡŽΠ±ΡƒΡŽ запись Π² ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ (-n)

Avrdude -n ΠžΠΏΡ†ΠΈΡ Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΡƒΠ΅Ρ‚ Π»ΡŽΠ±Ρ‹Π΅ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠΈ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Π»ΠΈΠ±ΠΎ Π² ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€. ΠœΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ссли Π²Ρ‹ ΡΠΎΠ±ΠΈΡ€Π°Π΅Ρ‚Π΅ΡΡŒ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ, Π½ΠΎ ΠΏΠΎΠΊΠ° Π² Ρ‡Π΅ΠΌ-Ρ‚ΠΎ Π½Π΅ ΡƒΠ²Π΅Ρ€Π΅Π½Ρ‹ ΠΈ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ сначала Π΅Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, Ρ‚.ΠΊ. Π±ΠΎΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ испортитС ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€.

Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ„ΡŒΡŽΠ·ΠΎΠ² (-u)

Avrdude -u Если Π²Ρ‹ ΡΠΎΠ±ΠΈΡ€Π°Π΅Ρ‚Π΅ΡΡŒ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ„ΡŒΡŽΠ·Ρ‹ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°, Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€Π΄ΠΈΡ‚ΡŒ это Π½Π°ΠΌΠ΅Ρ€Π΅Π½ΠΈΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄Π°Π½Π½ΠΎΠΉ ΠΎΠΏΡ†ΠΈΠΈ.

ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° (-t)

Avrdude -t Данная опция позволяСт Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠΌ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°. Π­Ρ‚Π° опция ΠΏΠΎΠ»Π΅Π·Π½Π° для ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ.

Π’Ρ‹ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ записи (-V)

Avrdude -V ΠžΠΏΡ†ΠΈΡ Π·Π°ΠΏΡ€Π΅Ρ‰Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈ записи.

Π—Π°Π΄Π°Π΅ΠΌ Ρ‚ΠΈΠΏ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° (-c)

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΡ†ΠΈΠΈΒ -c <programmer>Β Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ Π²Ρ‹Π±ΠΎΡ€ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ²:

2232HIOFT2232H based generic programmer
4232hFT4232H based generic programmer
89ispAtmel at89isp cable
abcminiABCmini Board, aka Dick Smith HOTCHIP
alfNightshade ALF-PgmAVR, http://nightshade.homeip.net/
arduinoArduino
arduino-ft232rArduino: FT232R connected to ISP
atispAT-ISP V1.1 programming cable for AVR-SDK1 from <http://micro-research.co.th/&gt;
avr109Atmel AppNote AVR109 Boot Loader
avr910Atmel Low Cost Serial Programmer
avr911Atmel AppNote AVR911 AVROSP
avrftdiFT2232D based generic programmer
avrispAtmel AVR ISP
avrisp2Atmel AVR ISP mkII
avrispmkIIAtmel AVR ISP mkII
avrispv2Atmel AVR ISP V2
bascomBascom SAMPLE programming cable
blasterAltera ByteBlaster
bsdBrian Dean’s Programmer, http://www.bsdhome.com/avrdude/
buspirateThe Bus Pirate
buspirate_bbThe Bus Pirate (bitbang interface, supports TPI)
butterflyAtmel Butterfly Development Board
butterfly_mkMikrokopter.de Butterfly
bwmegaBitWizard ftdi_atmega builtin programmer
c2n232iserial port banging, reset=dtr sck=!rts mosi=!txd miso=!cts
dapaDirect AVR Parallel Access cable
dasaserial port banging, reset=rts sck=dtr mosi=txd miso=cts
dasa3serial port banging, reset=!dtr sck=rts mosi=txd miso=cts
diecimilaalias for arduino-ft232r
dragon_dwAtmel AVR Dragon in debugWire mode
dragon_hvspAtmel AVR Dragon in HVSP mode
dragon_ispAtmel AVR Dragon in ISP mode
dragon_jtagAtmel AVR Dragon in JTAG mode
dragon_pdiAtmel AVR Dragon in PDI mode
dragon_ppAtmel AVR Dragon in PP mode
dt006Dontronics DT006
ere-isp-avrERE ISP-AVR <http://www.ere.co.th/download/sch050713.pdf&gt;
frank-stk200Frank STK200
ft232rFT232R Synchronous BitBang
ft245rFT245R Synchronous BitBang
futurlecFuturlec.com programming cable.
jtag1Atmel JTAG ICE (mkI)
jtag1slowAtmel JTAG ICE (mkI)
jtag2Atmel JTAG ICE mkII
jtag2avr32Atmel JTAG ICE mkII im AVR32 mode
jtag2dwAtmel JTAG ICE mkII in debugWire mode
jtag2fastAtmel JTAG ICE mkII
jtag2ispAtmel JTAG ICE mkII in ISP mode
jtag2pdiAtmel JTAG ICE mkII PDI mode
jtag2slowAtmel JTAG ICE mkII
jtag3Atmel AVR JTAGICE3 in JTAG mode
jtag3dwAtmel AVR JTAGICE3 in debugWIRE mode
jtag3ispAtmel AVR JTAGICE3 in ISP mode
jtag3pdiAtmel AVR JTAGICE3 in PDI mode
jtagkeyAmontec JTAGKey, JTAGKey-Tiny and JTAGKey2
jtagmkIAtmel JTAG ICE (mkI)
jtagmkIIAtmel JTAG ICE mkII
jtagmkII_avr32Atmel JTAG ICE mkII im AVR32 mode
lm3s811Luminary Micro LM3S811 Eval Board (Rev. A)
mib510Crossbow MIB510 programming board
mkbutterflyMikrokopter.de Butterfly
nibobeeNIBObee
o-linkO-Link, OpenJTAG from http://www.100ask.net
openmokoOpenmoko debug board (v3)
pavrJason Kyle’s pAVR Serial Programmer
pickit2MicroChip’s PICkit2 Programmer
picowebPicoweb Programming Cable, http://www.picoweb.net/
pony-stk200Pony Prog STK200
ponyserdesign ponyprog serial, reset=!txd sck=rts mosi=dtr miso=cts
siprogLancos SI-Prog <http://www.lancos.com/siprogsch.html&gt;
sp12Steve Bolt’s Programmer
stk200STK200
stk500Atmel STK500
stk500hvspAtmel STK500 V2 in high-voltage serial programming mode
stk500ppAtmel STK500 V2 in parallel programming mode
stk500v1Atmel STK500 Version 1.x firmware
stk500v2Atmel STK500 Version 2.x firmware
stk600Atmel STK600
stk600hvspAtmel STK600 in high-voltage serial programming mode
stk600ppAtmel STK600 in parallel programming mode
usbaspUSBasp, http://www.fischl.de/usbasp/
usbasp-cloneAny usbasp clone with correct VID/PID
usbtinyUSBtiny simple USB programmer, http://www.ladyada.net/make/usbtinyisp/
wiringWiring
xilXilinx JTAG cable

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹: C:>avrdude -cΒ avrisp ...

Π‘ΠΊΡ€ΠΈΠΏΡ‚ для автоматичСской ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°

Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠ»Π°ΡΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹Β avrdude автоматичСски ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ нСбольшой скрипт. Π”Π°Π»Π΅Π΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Ρƒ нСбольшой ΠΏΡ€ΠΈΠΌΠ΅Ρ€, написанный для ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π°Β AVR-JTAG-USB. К Π΄Π°Π½Π½ΠΎΠΌΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Ρƒ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ Ρ‡Π΅Ρ€Π΅Π· COM-ΠΏΠΎΡ€Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ создаСтся ΠΏΡ€ΠΈ установкС Π΅Π³ΠΎ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°, поэтому скрипт ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ Π΄Π΅Π»ΠΎΠΌ ΡΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚ Π½ΠΎΠΌΠ΅Ρ€ ΠΏΠΎΡ€Ρ‚Π°, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€, Π΄Π°Π»Π΅Π΅ пытаСтся с Π½ΠΈΠΌ ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒΡΡ. Если Π½Π΅ удаСтся, Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° возвращаСтся ΠΊ Π²Ρ‹Π±ΠΎΡ€Ρƒ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡ€Ρ‚Π°. Π˜Π½Π°Ρ‡Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ ΠΏΠ»Π°Ρ‚Ρ‹.

set AVRDUDECMD="<ΠΏΡƒΡ‚ΡŒ ΠΊ ΠΏΠ°ΠΏΠΊΠ΅ с avrdude>avrdude.exe"
set FIRMWARESOURCEDIR=<ΠΏΡƒΡ‚ΡŒ ΠΊ ΠΏΠ°ΠΏΠΊΠ΅ с Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΎΠΉ>
set FIRMWAREDIR=%TMP%firmware

:SELECTPORT
set /P port="Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π½ΠΎΠΌΠ΅Ρ€ ΠΏΠΎΡ€Ρ‚Π° COM"
echo %AVRDUDECMD%

echo ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ...
%AVRDUDECMD% -c jtagmkI -p m32 -P COM%port%
IF %ERRORLEVEL% EQU 9009 GOTO SELECTPORT

echo УдаляСм Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹
rmdir /S /Q %FIRMWAREDIR%
echo ΠšΠΎΠΏΠΈΡ€ΡƒΠ΅ΠΌ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ Π²ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΠΏΠ°ΠΏΠΊΡƒ
mkdir %FIRMWAREDIR%
xcopy "%FIRMWARESOURCEDIR%*.*"  "%FIRMWAREDIR%"

echo ΠŸΡ€ΠΎΡˆΠΈΠ²Π°Π΅ΠΌ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€
@echo on
%AVRDUDECMD% -c jtagmkI -p m32 -P COM%port% -U flash:w:"%FIRMWAREDIR%firmware.hex":i -U hfuse:w:^<0x91^>:m -U lfuse:w:^<0xFF^>:m
@echo off

pause

Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ скрипт?

Π’ самом Π½Π°Ρ‡Π°Π»Π΅ скрипта ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ΡΡ значСния Ρ‚Ρ€Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌ:

  • AVRDUDECMDΒ β€” ΠΏΠΎΠ»Π½Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ avrdude.exe
  • FIRMWARESOURCEDIRΒ β€” ΠŸΠΎΠ»Π½Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ ΠΊ ΠΏΠ°ΠΏΠΊΠ΅ с ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΎΠΉ
  • FIRMWAREDIRΒ β€” ΠΏΡƒΡ‚ΡŒ ΠΊ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅, Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π±ΡƒΠ΄ΡƒΡ‚ скопированы Ρ„Π°ΠΉΠ»Ρ‹ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ. Данная ΠΏΠ°ΠΏΠΊΠ° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ° для ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠ³ΠΎ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ avrdude Π½Π° случай, Ссли FIRMWARESOURCEDIR окаТСтся сСтСвой ΠΏΠ°ΠΏΠΊΠΎΠΉ. Π’ случаС, Ссли ΠΏΠ°ΠΏΠΊΠ° с ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΎΠΉ окаТСтся сСтСвой, Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° avrdude выдаст ΠΎΡˆΠΈΠ±ΠΊΡƒ.

Имя Ρ„Π°ΠΉΠ»Π° с ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΎΠΉ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒΒ firmware.hexΒ ΠΈ Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°Ρ‚ΡŒΡΡ Π² ΠΏΠ°ΠΏΠΊΠ΅Β FIRMWARESOURCEDIR. Π‘Ρ‚Ρ€ΠΎΠΊΠ° с ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ Π½Π° ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ: %AVRDUDECMD% -c jtagmkI -p m32 -P COM%port% -U flash:w:Β»%FIRMWAREDIR%firmware.hexΒ»:i -U hfuse:w:^<0x91^>:m -U lfuse:w:^<0xFF^>:m Π—Π΄Π΅ΡΡŒ указываСтся, Ρ‡Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ использован ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Β AVR-JTAG-USB,Β ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Β Atmega32, ΠΏΠΎΡ€Ρ‚ COM[Π½ΠΎΠΌΠ΅Ρ€ ΠΏΠΎΡ€Ρ‚Π° вводится ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ с ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹]. Π’ строкС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ значСния Ρ„ΡŒΡŽΠ·ΠΎΠ² β€”Β hfuse=0x91Β ΠΈlfuse=0xFFΒ Π² ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚ΠΈΡ€ΠΈΡ‡Π½ΠΎΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅. ЗначСния Ρ„ΡŒΡŽΠ·ΠΎΠ² Π² ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚ΠΈΡ€ΠΈΡ‡Π½ΠΎΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ встроСнных инструмСнтов AVR-Studio, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Ρ… для ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Π½ΠΈΡ ΠΌΠΈΠΊΡ‚Ρ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ². Π”Π°Π½Π½Ρ‹ΠΉ скрипт ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π² сСтСвой ΠΏΠ°ΠΏΠΊΠ΅ вашСй локальной сСти ΠΈ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ с любого ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° прямо ΠΈΠ· сСтСвой ΠΏΠ°ΠΏΠΊΠΈ. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ скрипта Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊΠΈΠΌ:

Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π½ΠΎΠΌΠ΅Ρ€ ΠΏΠΎΡ€Ρ‚Π° COM2
"\centerΠŸΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ для ΠΏΠ»Π°Ρ‚avrdudeavrdude.exe"
ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ...
avrdude.exe: jtagmkI_open(): failed to synchronize to ICE
avrdude.exe: jtagmkI_close(): unsupported baudrate -1

avrdude.exe done.  Thank you.

УдаляСм Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹
ΠšΠΎΠΏΠΈΡ€ΡƒΠ΅ΠΌ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ Π²ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΠΏΠ°ΠΏΠΊΡƒ
\centerΠŸΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ для ΠΏΠ»Π°Ρ‚ΠœΠžΠ‘-Π£Π½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΉrevision01.00version01.00MOS.hex
Π‘ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΎ Ρ„Π°ΠΉΠ»ΠΎΠ²: 1.
ΠŸΡ€ΠΎΡˆΠΈΠ²Π°Π΅ΠΌ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€

C:WINDOWS>"\centerΠŸΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ для ΠΏΠ»Π°Ρ‚avrdudeavrdude.exe" -c jtagmkI -p m32 -P COM2 -U flash:w:"C:DOCUME~1valeyevLOCALS~
1TempfirmwareMOS.hex":i -U hfuse:w:<0x91>:m -U lfuse:w:<0xFF>:m

avrdude.exe: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.05s

avrdude.exe: Device signature = 0x1e9502
avrdude.exe: NOTE: FLASH memory has been specified, an erase cycle will be performed
             To disable this feature, specify the -D option.
avrdude.exe: erasing chip
avrdude.exe: reading input file "C:DOCUME~1valeyevLOCALS~1TempfirmwareMOS.hex"
avrdude.exe: writing flash (19104 bytes):

Writing | ################################################## | 100% 7.19s

avrdude.exe: 19104 bytes of flash written
avrdude.exe: verifying flash memory against C:DOCUME~1valeyevLOCALS~1TempfirmwareMOS.hex:
avrdude.exe: load data flash data from input file C:DOCUME~1valeyevLOCALS~1TempfirmwareMOS.hex:
avrdude.exe: input file C:DOCUME~1valeyevLOCALS~1TempfirmwareMOS.hex contains 19104 bytes
avrdude.exe: reading on-chip flash data:

Reading | ################################################## | 100% 4.11s

avrdude.exe: verifying ...
avrdude.exe: 19104 bytes of flash verified
avrdude.exe: reading input file "<0x91>"
avrdude.exe: invalid byte value (<0x91>) specified for immediate mode
avrdude.exe: write to file '<0x91>' failed

avrdude.exe: safemode: Fuses OK

avrdude.exe done.  Thank you.

Для продолТСния Π½Π°ΠΆΠΌΠΈΡ‚Π΅ Π»ΡŽΠ±ΡƒΡŽ ΠΊΠ»Π°Π²ΠΈΡˆΡƒ . . .

ΠŸΠΎΠ½Ρ€Π°Π²ΠΈΠ»ΠΎΡΡŒ это:

Нравится Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ°…

ΠŸΠΎΡ…ΠΎΠΆΠ΅Π΅

alexxlab

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *