Arduino Nano ISP: распиновка ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² ΠΈ схСма ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ

Π Π°Π±ΠΎΡ‚Π° с ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°ΠΌΠΈ сСмСйства ATmega часто Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ нСстандартных Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ, особСнно ΠΊΠΎΠ³Π΄Π° стандартный USB-Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ ΠΏΠΎΠ²Ρ€Π΅ΠΆΠ΄Π΅Π½ ΠΈΠ»ΠΈ отсутствуСт. Π’ Ρ‚Π°ΠΊΠΈΡ… случаях Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΏΡ€ΠΈΠ±Π΅Π³Π°ΡŽΡ‚ ΠΊ использованию Ρ€Π΅ΠΆΠΈΠΌΠ° ISP (In-System Programming), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ Π² Ρ‡ΠΈΠΏ, минуя стандартныС ΠΏΠΎΡ€Ρ‚Ρ‹. Для ΠΏΠ»Π°Ρ‚Ρ‹ Arduino Nano этот ΠΌΠ΅Ρ‚ΠΎΠ΄ становится спасСниСм ΠΏΡ€ΠΈ "ΠΎΠΊΠΈΡ€ΠΏΠΈΡ‡ΠΈΠ²Π°Π½ΠΈΠΈ" устройства ΠΈΠ»ΠΈ ΠΏΡ€ΠΈ нСобходимости ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π°Π²Ρ‚ΠΎΠ½ΠΎΠΌΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€.

ПониманиС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ распиновка Π² этом Ρ€Π΅ΠΆΠΈΠΌΠ΅, критичСски Π²Π°ΠΆΠ½ΠΎ для ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠ³ΠΎ восстановлСния ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ‡Π΅Ρ€Π΅Π· UART, здСсь Π·Π°Π΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‚ΡΡ прямыС Π»ΠΈΠ½ΠΈΠΈ связи SPI (Serial Peripheral Interface), Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰ΠΈΠ΅ Ρ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ соСдинСния ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ². Ошибка Π² ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ нСвозмоТности записи ΠΊΠΎΠ΄Π°, Π° Π² Ρ…ΡƒΠ΄ΡˆΠ΅ΠΌ случаС β€” ΠΊ Π²Ρ‹Ρ…ΠΎΠ΄Ρƒ оборудования ΠΈΠ· строя.

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠΈΠ½Π° Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Arduino Nano ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π°. Π’Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‚ Π·Π° ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‚Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ сброс, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ Π³ΠΎΡ‚ΠΎΠ²ΡƒΡŽ схСму для сборки ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ инструмСнта для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Π²Π°ΡˆΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° Π±Π°Π·Π΅ AVR.

ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ€Π΅ΠΆΠΈΠΌΠ° ISP Π½Π° Π±Π°Π·Π΅ ATmega328P

Π‘Π΅Ρ€Π΄Ρ†Π΅ΠΌ ΠΏΠ»Π°Ρ‚Ρ‹ Arduino Nano Ρ‡Π°Ρ‰Π΅ всСго являСтся ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ ATmega328P. Для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ€Π΅ΠΆΠΈΠΌΠ° ISP Π² этом Ρ‡ΠΈΠΏΠ΅ Π·Π°Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Π½ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ ΠΏΠΈΠ½ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ, Π±Π΅Π· участия USB-ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π΅Ρ€Π° (Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΊΠ°ΠΊ CH340 ΠΈΠ»ΠΈ FT232). Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ прямой доступ ΠΊ памяти Flash ΠΈ EEPROM устройства.

ΠŸΡ€ΠΎΡ†Π΅ΡΡ программирования осущСствляСтся ΠΏΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρƒ SPI, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Π²Π΅Π΄ΡƒΡ‰Π΅Π³ΠΎ (Master) ΠΈ Π²Π΅Π΄ΠΎΠΌΠΎΠ³ΠΎ (Slave) устройств. Π’ нашСм сцСнарии ΠΎΠ΄Π½Π° ΠΏΠ»Π°Ρ‚Π° Arduino Nano (ΠΈΠ»ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€) выступаСт Π² Ρ€ΠΎΠ»ΠΈ Master, пСрСдавая Π±Π°ΠΉΡ‚Ρ‹ ΠΊΠΎΠ΄Π°, Π° цСлСвая ΠΏΠ»Π°Ρ‚Π° Nano β€” Π² Ρ€ΠΎΠ»ΠΈ Slave, принимая ΠΈΡ…. Бвязь обСспСчиваСтся Ρ‡Π΅Ρ‚Ρ‹Ρ€ΡŒΠΌΡ основными линиями, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ соСдинСны кросс-ΠΊΠ°Π±Π΅Π»Π΅ΠΌ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΠ΅Ρ€Π΅Π΄ Π½Π°Ρ‡Π°Π»ΠΎΠΌ Π»ΡŽΠ±Ρ‹Ρ… манипуляций с ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π°ΠΌΠΈ ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ напряТСниС Π½Π° линиях Π½Π΅ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Π΅Ρ‚ 5 Π’ΠΎΠ»ΡŒΡ‚. ΠŸΠΎΠ΄Π°Ρ‡Π° 3.3Π’ Π½Π° Π²Ρ…ΠΎΠ΄, ΠΎΠΆΠΈΠ΄Π°ΡŽΡ‰ΠΈΠΉ 5Π’, ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ ΠΏΠΎΠ²Ρ€Π΅Π΄ΠΈΡ‚ΡŒ Ρ‡ΠΈΠΏ, Π½ΠΎ обратная ситуация (5Π’ Π½Π° 3.3Π’ Π»ΠΎΠ³ΠΈΠΊΡƒ) Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ΡΠ³ΠΎΡ€Π°Π½ΠΈΡŽ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°.

Π’Π°ΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π΅ Π² Ρ€Π΅ΠΆΠΈΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° стандартная Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΈΠ½ΠΎΠ² D10-D13 мСняСтся. Они ΠΏΠ΅Ρ€Π΅ΡΡ‚Π°ΡŽΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌΠΈ Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹ΠΌΠΈ Π²Ρ…ΠΎΠ΄Π°ΠΌΠΈ/Π²Ρ‹Ρ…ΠΎΠ΄Π°ΠΌΠΈ ΠΈ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ Π»ΠΈΠ½ΠΈΠΈ управлСния SPI-интСрфСйсом. Π­Ρ‚ΠΎ Π½Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°Π΅Ρ‚ ограничСния Π½Π° использованиС этих ΠΏΠΎΡ€Ρ‚ΠΎΠ² Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ, Ссли ΠΎΠ½ΠΈ задСйствованы Π² вашСй схСмС.

Π”Π΅Ρ‚Π°Π»ΡŒΠ½Π°Ρ распиновка ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² для программирования

Для ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠ³ΠΎ соСдинСния Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‡Π΅Ρ‚ΠΊΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠΉ физичСский ΠΏΠΈΠ½ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ соотвСтствуСт ΠΊΠ°ΠΊΠΎΠΉ логичСской Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° SPI. На ΠΏΠ»Π°Ρ‚Π°Ρ… Arduino Nano эти ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ располоТСны Π½Π° стандартном Π³Ρ€Π΅Π±Π΅Π½Ρ‡Π°Ρ‚ΠΎΠΌ Ρ€Π°Π·ΡŠΠ΅ΠΌΠ΅. НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΎ описаниС ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ², ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π² процСссС.

ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ ΠΈ самым Π²Π°ΠΆΠ½Ρ‹ΠΌ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠΌ являСтся MISO (Master In Slave Out). На ΠΏΠ»Π°Ρ‚Π΅ Nano ΠΎΠ½ соотвСтствуСт ΠΏΠΈΠ½Ρƒ D12. ИмСнно Ρ‡Π΅Ρ€Π΅Π· Π½Π΅Π³ΠΎ Ρ†Π΅Π»Π΅Π²ΠΎΠ΅ устройство "ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚" ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Ρƒ, подтвСрТдая ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ отправляя содСрТимоС памяти ΠΏΡ€ΠΈ Ρ‡Ρ‚Π΅Π½ΠΈΠΈ. ΠΠ΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ этой Π»ΠΈΠ½ΠΈΠΈ β€” самая частая ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° ошибок Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ.

Π’Ρ‚ΠΎΡ€ΠΎΠΉ критичСский ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ β€” MOSI (Master Out Slave In), располоТСнный Π½Π° ΠΏΠΈΠ½Π΅ D11. По этой Π»ΠΈΠ½ΠΈΠΈ пСрСдаСтся основной ΠΏΠΎΡ‚ΠΎΠΊ Π΄Π°Π½Π½Ρ‹Ρ…: сам ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ (скСтч) ΠΈΠ»ΠΈ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ. Π”Π°Π»Π΅Π΅ ΠΈΠ΄Π΅Ρ‚ линия тактирования SCK (Serial Clock), которая находится Π½Π° ΠΏΠΈΠ½Π΅ D13. Она синхронизируСт ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ Π±ΠΈΡ‚ΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρƒ устройствами.

И, Π½Π°ΠΊΠΎΠ½Π΅Ρ†, линия RESET. Для Π²Ρ…ΠΎΠ΄Π° Π² Ρ€Π΅ΠΆΠΈΠΌ программирования Ρ†Π΅Π»Π΅Π²ΠΎΠΉ Ρ‡ΠΈΠΏ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΡΠ±Ρ€ΠΎΡˆΠ΅Π½. На ΠΏΠ»Π°Ρ‚Π΅ Nano этот ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π²Ρ‹Π²Π΅Π΄Π΅Π½ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ ΠΈΠ»ΠΈ совмСщСн с ΠΏΠΈΠ½ΠΎΠΌ D10 (Π² зависимости ΠΎΡ‚ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ SPI Π½Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅). Π’Π°ΠΊΠΆΠ΅ Π½Π΅ стоит Π·Π°Π±Ρ‹Π²Π°Ρ‚ΡŒ ΠΎ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π°Ρ… питания VCC (5V) ΠΈ GND, Π±Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ†Π΅ΠΏΡŒ Π½Π΅ замкнСтся.

  • πŸ”Œ D11 (MOSI): Основная линия ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΡ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° ΠΊ Ρ‡ΠΈΠΏΡƒ.
  • πŸ“‘ D12 (MISO): Линия ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ связи, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Ρ‡ΠΈΠΏ сообщаСт ΠΎ статусС.
  • ⏱️ D13 (SCK): Π’Π°ΠΊΡ‚ΠΎΠ²Ρ‹ΠΉ сигнал, Π·Π°Π΄Π°ΡŽΡ‰ΠΈΠΉ Ρ€ΠΈΡ‚ΠΌ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ.
  • πŸ”„ RESET: ΠšΠΎΠ½Ρ‚Π°ΠΊΡ‚ для ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ пСрСзапуска ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° Π² Ρ€Π΅ΠΆΠΈΠΌ Π±ΡƒΡ‚Π»ΠΎΠ°Π΄Π΅Ρ€Π°.
  • ⚑ VCC/GND: ΠŸΠΈΡ‚Π°Π½ΠΈΠ΅ ΠΈ зСмля, ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ схСмы.
πŸ“Š Какой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ Π²Ρ‹ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ?
Arduino Uno/Nano
USBasp
Arduino as ISP
Π”Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€

Π‘Ρ…Π΅ΠΌΠ° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ: Arduino Nano ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€

Π‘Π°ΠΌΡ‹ΠΉ доступный способ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ISP-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ β€” ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ‚ΠΎΡ€ΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρƒ Arduino (Nano ΠΈΠ»ΠΈ Uno) с Π·Π°ΡˆΠΈΡ‚Ρ‹ΠΌ скСтчСм ArduinoISP. Π’ этом случаС ваша основная ΠΏΠ»Π°Ρ‚Π° Nano становится Π²Π΅Π΄ΠΎΠΌΡ‹ΠΌ устройством, Π° Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ β€” Π²Π΅Π΄ΡƒΡ‰ΠΈΠΌ. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ осущСствляСтся Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ, ΠΏΠΈΠ½-Π²-ΠΏΠΈΠ½, Π½ΠΎ с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ пСрСкрСстной Π»ΠΎΠ³ΠΈΠΊΠΈ SPI.

Для сборки Ρ‚Π°ΠΊΠΎΠΉ схСмы Π²Π°ΠΌ понадобятся ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° Ρ‚ΠΈΠΏΠ° "ΠΏΠ°ΠΏΠ°-ΠΏΠ°ΠΏΠ°". Π‘ΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚Π΅ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ GND ΠΎΠ±Π΅ΠΈΡ… ΠΏΠ»Π°Ρ‚ ΠΌΠ΅ΠΆΠ΄Ρƒ собой β€” это Π±ΡƒΠ΄Π΅Ρ‚ общая зСмля. Π—Π°Ρ‚Π΅ΠΌ соСдинитС 5V (ΠΈΠ»ΠΈ 3.3V, Ссли Ρ†Π΅Π»Π΅Π²ΠΎΠ΅ устройство Π½ΠΈΠ·ΠΊΠΎΠ²ΠΎΠ»ΡŒΡ‚Π½ΠΎΠ΅, Π½ΠΎ для Nano это ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ 5V) ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° с ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠΌ VCC Ρ†Π΅Π»Π΅Π²ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ‹. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Ссли цСлСвая ΠΏΠ»Π°Ρ‚Π° Π·Π°ΠΏΠΈΡ‚Π°Π½Π° ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ источника, линию VCC ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡ‚ΡŒ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ.

Π”Π°Π»Π΅Π΅ слСдуСт самая отвСтствСнная Ρ‡Π°ΡΡ‚ΡŒ β€” соСдинСниС Π»ΠΈΠ½ΠΈΠΉ SPI. Пин 10 (RESET) ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΊ ΠΏΠΈΠ½Ρƒ RESET Ρ†Π΅Π»Π΅Π²ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ‹. ΠŸΠΈΠ½Ρ‹ 11, 12, 13 Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π΅ ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ΡΡ с Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ΠΌΠΈ ΠΏΠΈΠ½Π°ΠΌΠΈ Π½Π° Ρ†Π΅Π»Π΅Π²ΠΎΠΉ ΠΏΠ»Π°Ρ‚Π΅. Π’Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π² SPI-ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π΅ Master Out соСдиняСтся с Slave In, Π° Master In с Slave Out, Π½ΠΎ ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΌΡ‹ соСдиняСм ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Π΅ ΠΏΠ»Π°Ρ‚Ρ‹, нумСрация ΠΏΠΈΠ½ΠΎΠ² Π½Π° Ρ€Π°Π·ΡŠΠ΅ΠΌΠ°Ρ… совпадаСт.

Ѐункция SPI Пин Π½Π° ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π΅ (Nano/Uno) Пин Π½Π° Π¦Π΅Π»Π΅Π²ΠΎΠΉ ΠΏΠ»Π°Ρ‚Π΅ (Nano) Π¦Π²Π΅Ρ‚ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° (Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄.)
VCC (ΠŸΠΈΡ‚Π°Π½ΠΈΠ΅) 5V 5V (ΠΈΠ»ΠΈ Vin) ΠšΡ€Π°ΡΠ½Ρ‹ΠΉ
GND (ЗСмля) GND GND Π§Π΅Ρ€Π½Ρ‹ΠΉ
RESET D10 RESET ΠžΡ€Π°Π½ΠΆΠ΅Π²Ρ‹ΠΉ
MOSI D11 D11 (MOSI) Π—Π΅Π»Π΅Π½Ρ‹ΠΉ
MISO D12 D12 (MISO) Π‘ΠΈΠ½ΠΈΠΉ
SCK D13 D13 (SCK) Π–Π΅Π»Ρ‚Ρ‹ΠΉ
⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: НС ΠΏΠ΅Ρ€Π΅ΠΏΡƒΡ‚Π°ΠΉΡ‚Π΅ Π»ΠΈΠ½ΠΈΠΈ MOSI ΠΈ MISO. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ UART, Π³Π΄Π΅ RX ΠΈΠ΄Π΅Ρ‚ ΠΊ TX, Π² SPI Π»ΠΈΠ½ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… часто ΠΈΠ΄ΡƒΡ‚ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎ (MOSI ΠΊ MOSI) ΠΏΡ€ΠΈ соСдинСнии Π΄Π²ΡƒΡ… ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Ρ… ΠΏΠ»Π°Ρ‚ Arduino, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Ρ€ΠΎΠ»ΠΈ Master/Slave ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ, Π° физичСски ΠΏΠΈΠ½Ρ‹ Π½Π° Ρ‡ΠΈΠΏΠ΅ ТСстко Π·Π°ΠΊΡ€Π΅ΠΏΠ»Π΅Π½Ρ‹.

ПослС физичСского соСдинСния Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π² ΠΏΠ»Π°Ρ‚Ρƒ-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ скСтч ArduinoISP, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ находится Π² стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ IDE (File β†’ Examples β†’ ArduinoISP). ПослС Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ скСтча Π½Π° ΠΏΠ»Π°Ρ‚Π΅-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π΅ Π½Π°Ρ‡Π½Π΅Ρ‚ ΠΌΠΈΠ³Π°Ρ‚ΡŒ свСтодиод, сигнализируя ΠΎ готовности ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅.

β˜‘οΈ ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ISP

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ: 0 / 4

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ Bootloader ΠΈ скСтчСй Ρ‡Π΅Ρ€Π΅Π· ISP

Когда схСма собрана, ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ части. Π’ срСдС Arduino IDE Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹. Π—Π°ΠΉΠ΄ΠΈΡ‚Π΅ Π² мСню Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ ΠΈ Π² ΠΏΡƒΠ½ΠΊΡ‚Π΅ ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ (Programmer) Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Arduino as ISP. Π­Ρ‚ΠΎ критичСски Π²Π°ΠΆΠ½Ρ‹ΠΉ шаг, Π±Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ IDE Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ стандартный USB-ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ».

Π”Π°Π»Π΅Π΅ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΏΠ»Π°Ρ‚Ρƒ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π²Ρ‹ ΡΠΎΠ±ΠΈΡ€Π°Π΅Ρ‚Π΅ΡΡŒ ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Ρ‚ΡŒ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Arduino Nano), ΠΈ ΠΏΠΎΡ€Ρ‚, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ (Π° Π½Π΅ цСлСвая ΠΏΠ»Π°Ρ‚Π°, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π°ΠΆΠ΅ Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒΡΡ ΠΊΠ°ΠΊ COM-ΠΏΠΎΡ€Ρ‚). Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ любой скСтч, Π²Ρ‹Π±Ρ€Π°Π² ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ (Upload Using Programmer) вмСсто ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΉ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ.

Одной ΠΈΠ· самых частых Π·Π°Π΄Π°Ρ‡ ΠΏΡ€ΠΈ использовании ISP являСтся восстановлСниС Bootloader. Если ваш Nano пСрСстал ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒΡΡ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠΌ ΠΈΠ»ΠΈ ΠΏΡ€ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ Π½Π΅ ΠΌΠΈΠ³Π°Π΅Ρ‚ свСтодиод L, Π·Π½Π°Ρ‡ΠΈΡ‚, Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ ΠΏΠΎΠ²Ρ€Π΅ΠΆΠ΄Π΅Π½. Π’ мСню Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΎΠΏΡ†ΠΈΡŽ Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ (Burn Bootloader). ΠŸΡ€ΠΎΡ†Π΅ΡΡ Π·Π°ΠΉΠΌΠ΅Ρ‚ нСсколько сСкунд, послС Ρ‡Π΅Π³ΠΎ Ρ‡ΠΈΠΏ Π±ΡƒΠ΄Π΅Ρ‚ снова Π³ΠΎΡ‚ΠΎΠ² ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅ Ρ‡Π΅Ρ€Π΅Π· USB.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ Π³ΠΎΡ€ΠΈΡ‚ красный свСтодиод Π½Π° ΠΏΠ»Π°Ρ‚Π΅-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π΅?

Если Π½Π° ΠΏΠ»Π°Ρ‚Π΅, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰Π΅ΠΉ Ρ€ΠΎΠ»ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π°, постоянно Π³ΠΎΡ€ΠΈΡ‚ красный свСтодиод (ΠΈΠ»ΠΈ быстро ΠΌΠΈΠ³Π°Π΅Ρ‚ Π² Ρ€ΠΈΡ‚ΠΌΠ΅, ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎΠΌ ΠΎΡ‚ "сСрдцСбиСния"), это ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ·Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ связи ΠΈΠ»ΠΈ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎΠ΅ Π·Π°ΠΌΡ‹ΠΊΠ°Π½ΠΈΠ΅ Π² Π»ΠΈΠ½ΠΈΠΈ питания. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, Π½Π΅ Π·Π°ΠΌΡ‹ΠΊΠ°ΡŽΡ‚ Π»ΠΈ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ рядом с RESET.

ΠŸΡ€ΠΈ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΉ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ΅ Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ сообщСниС Π² Π»ΠΎΠ³Π΅ IDE. Если ΠΆΠ΅ процСсс Π·Π°Π²Π΅Ρ€ΡˆΠΈΠ»ΡΡ ошибкой, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ². Часто ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° кроСтся Π² ΠΏΠ»ΠΎΡ…ΠΎΠΌ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π΅ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π° с ΠΏΠΈΠ½ΠΎΠΌ RESET ΠΈΠ»ΠΈ нСдостаточном ΠΏΠΈΡ‚Π°Π½ΠΈΠΈ Ρ†Π΅Π»Π΅Π²ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ‹.

Диагностика ошибок ΠΈ Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹

Π Π°Π±ΠΎΡ‚Π° с Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Ρ€Π΅Π΄ΠΊΠΎ обходится Π±Π΅Π· трудностСй. Бамая распространСнная ошибка β€” avrdude: stk500_recv(): programmer is not responding. Она ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ "Π΄ΠΎΡΡ‚ΡƒΡ‡Π°Ρ‚ΡŒΡΡ" Π΄ΠΎ Ρ†Π΅Π»Π΅Π²ΠΎΠ³ΠΎ Ρ‡ΠΈΠΏΠ°. Π’ 90% случаСв это ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° физичСского ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ: ΠΏΠ΅Ρ€Π΅ΠΏΡƒΡ‚Π°Π½Ρ‹ MOSI/MISO ΠΈΠ»ΠΈ ΠΏΠ»ΠΎΡ…ΠΎ вставлСн ΠΏΡ€ΠΎΠ²ΠΎΠ΄ Π² Ρ€Π°Π·ΡŠΠ΅ΠΌ.

Π•Ρ‰Π΅ ΠΎΠ΄Π½Π° частая ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° связана с кондСнсатором. ΠŸΡ€ΠΈ использовании Arduino Uno Π² качСствС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° часто ΡΠΎΠ²Π΅Ρ‚ΡƒΡŽΡ‚ ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ кондСнсатор 10ΠΌΠΊΠ€ ΠΌΠ΅ΠΆΠ΄Ρƒ RESET ΠΈ GND Π½Π° ΠΏΠ»Π°Ρ‚Π΅-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½Π° Π½Π΅ ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠΆΠ°Π»Π°ΡΡŒ сама. Для Nano это ΠΌΠ΅Π½Π΅Π΅ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎ, Π½ΠΎ Ссли Π²Ρ‹ ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°Π΅Ρ‚Π΅ΡΡŒ с Π½Π΅ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ, ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ этот элСмСнт ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ автосброс.

Π’Π°ΠΊΠΆΠ΅ стоит ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚ΡŒ ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ΅ с Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°ΠΌΠΈ. Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Π΄Π΅ΡˆΠ΅Π²Ρ‹Π΅ ΠΊΠΎΠΏΠΈΠΈ Nano с Ρ‡ΠΈΠΏΠΎΠΌ CH340, ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π² диспСтчСрС устройств Π½Π΅Ρ‚ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ². Π₯отя ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ΅ Ρ‡Π΅Ρ€Π΅Π· ISP USB-ΠΏΠΎΡ€Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΎΠ½ всС Ρ€Π°Π²Π½ΠΎ Π½ΡƒΠΆΠ΅Π½ для питания ΠΈ связи с IDE, Ссли ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ Ρ‡Π΅Ρ€Π΅Π· USB.

  • πŸ›‘ Ошибка связи: ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Ρ†Π΅Π»ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΎΠ² ΠΈ отсутствиС ΠΏΠ΅Ρ€Π΅ΠΌΡ‹Ρ‡Π΅ΠΊ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π°ΠΌΠΈ.
  • πŸ”‹ ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ΠΌ: USB-ΠΏΠΎΡ€Ρ‚ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ Π²Ρ‹Π΄Π°Π²Π°Ρ‚ΡŒ достаточный Ρ‚ΠΎΠΊ для Π΄Π²ΡƒΡ… ΠΏΠ»Π°Ρ‚. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ внСшнСС ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ 5-9Π’.
  • πŸ’» НСвСрный ΠΏΠΎΡ€Ρ‚: Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π² IDE Π²Ρ‹Π±Ρ€Π°Π½ COM-ΠΏΠΎΡ€Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π°, Π° Π½Π΅ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΡ€Ρ‚ Ρ†Π΅Π»Π΅Π²ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ‹.
  • βš™οΈ Π‘ΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ: Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ сниТСниС скорости ISP Π² Ρ„Π°ΠΉΠ»Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ programmers.txt.
⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ВСхничСскиС характСристики ΠΈ распиновка ΠΌΠΎΠ³ΡƒΡ‚ Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ Π² зависимости ΠΎΡ‚ Ρ€Π΅Π²ΠΈΠ·ΠΈΠΈ ΠΏΠ»Π°Ρ‚Ρ‹ ΠΈ производитСля Ρ‡ΠΈΠΏΠ° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½ΠΎΠ²Ρ‹Π΅ вСрсии с Ρ‡ΠΈΠΏΠΎΠΌ ATmega328P-PU ΠΏΡ€ΠΎΡ‚ΠΈΠ² старых вСрсий). ВсСгда ΡΠ²Π΅Ρ€ΡΠΉΡ‚Π΅ΡΡŒ с тСхничСской Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ (datasheet) Π½Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚, Ссли стандартныС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚.

ИспользованиС ISP для энСргонСзависимых ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ²

Π Π΅ΠΆΠΈΠΌ ISP ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ Π΄Π²Π΅Ρ€ΠΈ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Ρ€Π΅ΠΌΠΎΠ½Ρ‚Π°, Π½ΠΎ ΠΈ для создания Ρ„ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… вСрсий устройств. Когда ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π³ΠΎΡ‚ΠΎΠ² ΠΈ ΠΎΡ‚Π»Π°ΠΆΠ΅Π½, Π½Π΅Ρ‚ смысла ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ лишний USB-ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ потрСбляСт ΡΠ½Π΅Ρ€Π³ΠΈΡŽ ΠΈ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ мСсто. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ISP, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ "Π·Π°Π»ΠΈΡ‚ΡŒ" Ρ„ΠΈΠ½Π°Π»ΡŒΠ½ΡƒΡŽ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ»Π°Ρ‚Ρƒ Nano ΠΊΠ°ΠΊ Π΄Π΅ΡˆΠ΅Π²Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ Π½Π° Π±Π°Π·Π΅ ATmega328.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ распиновки позволяСт ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Nano ΠΊ Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°ΠΌ AVR, Ρ€Π°ΡΡˆΠΈΡ€ΡΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π» вашСй мастСрской. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‡ΠΈΠΏΡ‹ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ, выпаивая ΠΈΡ… ΠΈΠ· схСм ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ Π·Π°ΠΆΠΈΠΌΡ‹ (Pogo pins), Ρ‡Ρ‚ΠΎ являСтся ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠΌ Π² элСктроникС.

Π’ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅, Π½Π°Π²Ρ‹ΠΊ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Arduino Nano ISP ΠΈ Π·Π½Π°Π½ΠΈΠ΅ распиновки β€” это ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ для любого ΡΠ΅Ρ€ΡŒΠ΅Π·Π½ΠΎΠ³ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° встраиваСмых систСм. Π­Ρ‚ΠΎ Π΄Π°Π΅Ρ‚ Π²Π°ΠΌ ΠΏΠΎΠ»Π½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Π½Π°Π΄ "ΠΆΠ΅Π»Π΅Π·ΠΎΠΌ" ΠΈ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ ΠΎΡ‚ заводских Π΄Π΅Ρ„Π΅ΠΊΡ‚ΠΎΠ² ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… сбоСв.

МоТно Π»ΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ AVR Ρ‡Π΅Ρ€Π΅Π· Nano?

Π”Π°, Arduino Nano ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ совмСстимыС AVR-ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρ‹ (ATmega8, ATmega168, ATmega328, ATtiny), Ссли для Π½ΠΈΡ… настроСн ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΎΡ„ΠΈΠ»ΡŒ Π² IDE ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π°Π½Ρ‹ Ρ„ΡŒΡŽΠ·Ρ‹ (fuse bits).

НуТно Π»ΠΈ ΠΏΠΎΠ΄Π°Π²Π°Ρ‚ΡŒ внСшнСС ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ Π½Π° Ρ†Π΅Π»Π΅Π²ΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρƒ Nano ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ΅?

Π­Ρ‚ΠΎ зависит ΠΎΡ‚ источника питания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π°. Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Arduino Uno ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€, Π΅Π³ΠΎ ΠΏΠΎΡ€Ρ‚ 5V ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ Π²Ρ‹Π΄Π°Ρ‚ΡŒ достаточный Ρ‚ΠΎΠΊ для Π΄Π²ΡƒΡ… ΠΏΠ»Π°Ρ‚. Π’ этом случаС Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠΎΠ΄Π°Ρ‚ΡŒ 5-9Π’ Π½Π° Ρ€Π°Π·ΡŠΠ΅ΠΌ VIN ΠΈΠ»ΠΈ 5V Ρ†Π΅Π»Π΅Π²ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ‹ Nano ΠΎΡ‚ внСшнСго Π±Π»ΠΎΠΊΠ° питания, соСдинив Π·Π΅ΠΌΠ»ΠΈ (GND) ΠΎΠ±Π΅ΠΈΡ… ΠΏΠ»Π°Ρ‚.

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ, Ссли IDE ΠΏΠΈΡˆΠ΅Ρ‚ "invalid device signature"?

Π­Ρ‚Π° ошибка ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ Π²ΠΈΠ΄ΠΈΡ‚ устройство, Π½ΠΎ Π΅Π³ΠΎ ID Π½Π΅ совпадаСт с ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΡ‹ΠΌ. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ Π»ΠΈ Π²Ρ‹Π±Ρ€Π°Π½Π° модСль ΠΏΠ»Π°Ρ‚Ρ‹ Π² мСню "Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹". Π’Π°ΠΊΠΆΠ΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΡΠ½ΠΈΠ·ΠΈΡ‚ΡŒ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ISP ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π° Π»ΠΈΠ½ΠΈΠΈ SCK.

МоТно Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Nano v3.0 для ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ Ρ‡Π΅Ρ€Π΅Π· ISP?

Π”Π°, вСрсии Nano v3.0 (Π½Π° Π±Π°Π·Π΅ ATmega328P) ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ Ρ€Π΅ΠΆΠΈΠΌ ISP. Однако, Ссли Ρƒ вас вСрсия Nano Every (Π½Π° Π±Π°Π·Π΅ ATmega4809), ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Ρ‚Π°ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° ΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» (UPDI вмСсто SPI).

Какой кондСнсатор Π½ΡƒΠΆΠ΅Π½ для стабилизации RESET Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π΅?

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ кСрамичСский ΠΈΠ»ΠΈ элСктролитичСский кондСнсатор Π΅ΠΌΠΊΠΎΡΡ‚ΡŒΡŽ 10 ΠΌΠΊΠ€. Он ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠΈΠ½ΠΎΠΌ RESET ΠΈ GND Π½Π° ΠΏΠ»Π°Ρ‚Π΅, которая выступаСт Π² Ρ€ΠΎΠ»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π΅Π΅ ΡΠ°ΠΌΠΎΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ сброс ΠΏΡ€ΠΈ Π½Π°Ρ‡Π°Π»Π΅ связи.