Uno id Ρ‡Ρ‚ΠΎ Π·Π° Ρ„Π°ΠΉΠ»

ΠœΠ½ΠΎΠ³ΠΎΠ±ΡƒΠΊΡ„Ρ„

Vladislav’s personal blog site

Arduino IDE: разбираСмся с мСню Tools ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ функциями.

И Π²ΠΎΡ‚, наступаСт ΠΌΠΎΠΌΠ΅Π½Ρ‚, ΠΊΠΎΠ³Π΄Π° стандартная Arduino IDE становится тСсновата, Π° Π΅Π΅ нСудобство Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ просто Π²Ρ‹Π±Π΅ΡˆΠΈΠ²Π°Ρ‚ΡŒ, особСнно, Ссли ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π·Π½Π°ΠΊΠΎΠΌ с Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚Ρ‹ΠΌΠΈ срСдами Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΠΎ Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°ΠΌ ΠΈ языкам программирования. ΠšΡ‚ΠΎ-Ρ‚ΠΎ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ ΠΌΠΈΠ³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π±ΠΎΠ»Π΅Π΅ интСрСсноС, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½Π° Atom ΠΈΠ»ΠΈ VS.Code Π² смСси с PlatformIO, Π° ΠΊΡ‚ΠΎ-Ρ‚ΠΎ стараСтся Π²Ρ‹ΠΆΠ°Ρ‚ΡŒ ΠΈΠ· Arduino IDE всС, Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΌΠΎΠΆΠ½ΠΎ.

БСгодня я Π²Ρ‹ΡΡ‚ΡƒΠΏΠ»ΡŽ ΠΊΠ°ΠΊ Ρ€Π°Π· Π² Ρ€ΠΎΠ»ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ «особо ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΡƒΡŽΡ‰Π΅Π³ΠΎΡΡ пСрсонаТа» ΠΈ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΡŽ вмСстС с Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»Π΅ΠΌ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Ρ‡ΡƒΡ‚ΡŒ-Ρ‡ΡƒΡ‚ΡŒ побольшС Π² тонкостях Arduino IDE. ВсС ниТСнаписанноС Π±ΠΎΠ»Π΅Π΅-ΠΌΠ΅Π½Π΅Π΅ соотвСтствуСт вСрсии 1.8.9 Arduino IDE.

ВСмная Ρ‚Π΅ΠΌΠ° для Arduino IDE

ΠžΡ‡Π΅Π½ΡŒ ΠΌΠ½ΠΎΠ³ΠΈΡ… Ρ€Π°Π·Π΄Ρ€Π°ΠΆΠ°Π΅Ρ‚ ΠΏΡ€ΠΎΡΡ‚Π΅Π½ΡŒΠΊΠΎΠ΅ ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½ΠΈΠ΅ Arduino IDE Π² ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… Ρ†Π²Π΅Ρ‚Π°Ρ… Arduino. ВсС Ρ‚Π°ΠΊΠΎΠ΅ Π±Π΅Π»ΠΎΠ΅ ΠΈ «слСпоС». Π”ΠΎΠ»Π³ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² Ρ‚Π°ΠΊΠΎΠΌ Ρ†Π²Π΅Ρ‚ΠΎΠ²ΠΎΠΌ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ Π½Π΅ всСгда ΠΊΠΎΠΌΡ„ΠΎΡ€Ρ‚Π½ΠΎ, особСнно Ссли это Π½ΠΎΡ‡ΡŒ, Π²ΠΎΠΊΡ€ΡƒΠ³ Ρ‚Π΅ΠΌΠ½ΠΎ ΠΈ всС спят.

Uno id Ρ‡Ρ‚ΠΎ Π·Π° Ρ„Π°ΠΉΠ»

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ Ρ‚Π΅ΠΌΠ½ΠΎΠΉ Ρ‚Π΅ΠΌΡ‹ ΠΏΠΎΠ΄ Mac. Π‘ΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚ с GitHub.

Для Ρ‚Π°ΠΊΠΎΠ³ΠΎ случая сторонний Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π» Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡƒΡŽ Ρ‚Π΅ΠΌΠ½ΡƒΡŽ Ρ‚Π΅ΠΌΡƒ, Ρ‚Π΅ΠΌΡƒ которая позволяСт Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ Π·Π½Π°ΠΊΠΎΠΌΡ‹ΠΉ с дСтства Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Ρ‡Π΅Ρ€Π½ΠΎΠ³ΠΎ Ρ„ΠΎΠ½Π° ΠΈ свСтлого тСкста Π½Π° Π½Π΅ΠΌ. Π’Π΅ΠΌΠ° Π½Π΅ идСальна, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π½Π΅ позволяСт ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ всС Π½ΡŽΠ°Π½ΡΡ‹, Π½ΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ это связано Π½Π΅ с самой Ρ‚Π΅ΠΌΠΎΠΉ, Π° с ограничСниями Arduino IDE. Π’Π΅ΠΌΡƒ, ΠΏΡ€ΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ.

МСню Sketch

Π―, ΠΊΠ°ΠΊ ΠΈ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Arduino IDE, Π·Π°Π³Ρ€ΡƒΠΆΠ°ΡŽ свои скСтчи Π² ΠΏΠ»Π°Ρ‚Ρ‹ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΏΠ°Π½Π΅Π»ΠΈ инструмСнтов. Π©Π΅Π»ΠΊΠ½ΡƒΠ» Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΈ скСтч Π½Π°Ρ‡Π°Π» Π·Π°Π»ΠΈΠ²Π°Ρ‚ΡŒ Π² ΠΏΠ»Π°Ρ‚Ρƒ. Π£Π΄ΠΎΠ±Π½ΠΎ. Но, ΠΊΠ°ΠΊ оказываСтся, мСню Sketch (здСсь ΠΈ Π΄Π°Π»Π΅Π΅ я Π±ΡƒΠ΄Ρƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ английский Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ интСрфСйса Arduino) содСрТит Π½Π΅ ΠΌΠ°Π»ΠΎ интСрСсных ΠΈ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… Π½ΠΎΠ²ΡˆΠ΅ΡΡ‚Π². Π˜Ρ‚Π°ΠΊ, ΠΊΡ€Π°Ρ‚Π΅Π½ΡŒΠΊΠΎ пробСТимся ΠΏΠΎ Π½ΠΈΠΌ.

Uno id Ρ‡Ρ‚ΠΎ Π·Π° Ρ„Π°ΠΉΠ»

МСню Sketch Arduino IDE

ΠŸΡƒΠ½ΠΊΡ‚Ρ‹ мСню Very/Compile ΠΈ Upload стандартны ΠΈ Π·Π½Π°ΠΊΠΎΠΌΡ‹ всСм. ИмСнно ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΊΠΎΠ΄Π° ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΉ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ. А Π²ΠΎΡ‚ ΠΏΡƒΠ½ΠΊΡ‚ Upload using programmer для мСня Π΄ΠΎ Π½Π΅Π΄Π°Π²Π½Π΅Π³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ оставался Terra incognita. Как оказалась, Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΡƒΠ½ΠΊΡ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΏΡ€ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ скСтча Π±Π΅Π· использования Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ° (bootloader), Π½ΠΎ с использованиСм ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π°. О Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ°Ρ… ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π°Ρ… ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ·ΠΆΠ΅, ΠΏΠΎΠΊΠ° ΠΆΠ΅ просто Π·Π°ΠΏΠΎΠΌΠ½ΠΈΠΌ этот ΠΏΡƒΠ½ΠΊΡ‚.

Π’ этом ΠΆΠ΅ мСню присутствуСт вСсьма ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΉ ΠΏΡƒΠ½ΠΊΡ‚ Export compiled Binary. ΠŸΡ€ΠΈΠΌΠ΅Π½ΡΠ΅Ρ‚ΡΡ ΠΎΠ½ Π² Ρ‚ΠΎΠΌ ΠΆΠ΅ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ, Ρ‡Ρ‚ΠΎ ΠΈ Upload using programmer. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Arduino IDE ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ исходный ΠΊΠΎΠ΄ Π² Ρ„Π°ΠΉΠ», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ сохраняСтся Π²ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ ΠΈ послС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΎΠ½Π° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΎΡ‡ΠΈΡ‰Π°Ρ‚ΡŒΡΡ. ВрСмСнная дирСктория находится Π² ΠΊΠ°ΠΊΠΈΡ…-Ρ‚ΠΎ дСбрях Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы, Π° ΠΈΡΠΊΠ°Ρ‚ΡŒ Ρ‚Π°ΠΌ скомпилированный Ρ„Π°ΠΉΠ» с нСпонятным Π½Π°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ β€” Ρ‚ΠΎ Π΅Ρ‰Π΅ ΡƒΠ΄ΠΎΠ²ΠΎΠ»ΡŒΡΡ‚Π²ΠΈΠ΅. Π’Π°ΠΊ Π²ΠΎΡ‚ функция Export compiled Binary ΠΊΠ°ΠΊ Ρ€Π°Π· ΠΈ примСняСтся для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΡƒΠΆΠ΅ ΠΎΡ‚ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ скСтч Π² Π²ΠΈΠ΄Π΅ Π±ΠΈΠ½Π°Ρ€Π½Ρ‹Ρ…-Ρ„Π°ΠΉΠ»ΠΎΠ² Π² ΠΏΠ°ΠΏΠΊΠ΅ самого скСтча. Π’ дальнСйшСм скомпилированныС скСтчи ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΡˆΠΈΡ‚Ρ‹ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ внСшнСго ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° ΠΈΠ»ΠΈ ΠΆΠ΅ USB-TTL прСобразоватСля.

ΠšΡΡ‚Π°Ρ‚ΠΈ, ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΏΠ°ΠΏΠΊΡƒ скСтча ΠΌΠΎΠΆΠ½ΠΎ всС Ρ‡Π΅Ρ€Π΅Π· Ρ‚ΠΎΠΆΠ΅ самоС мСню Sketch ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΏΡƒΠ½ΠΊΡ‚Π° Show Sketch Folder. ΠšΡΡ‚Π°Ρ‚ΠΈ, ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ Export compiled Binary компилируСтся сразу Π΄Π²Π° Ρ„Π°ΠΉΠ»Π°: с ΠΈ Π±Π΅Π· Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ°. Для Ρ‡Π΅Π³ΠΎ это Π½ΡƒΠΆΠ½ΠΎ, ΠΎΠΏΡΡ‚ΡŒ ΠΆΠ΅ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π½ΠΈΠΆΠ΅. ΠŸΡ€ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Export compiled Binary слСдуСт ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΈΠ· поставки Arduino Ρ‚Π°ΠΊ ΠΎΡ‚ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ Π²Ρ‹ΠΉΠ΄Π΅Ρ‚. Папки, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… хранятся эти скСтчи ΠΈΠΌΠ΅ΡŽΡ‚ Ρ€Π΅ΠΆΠΈΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния, Π° IDE Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΊΡƒΠ΄Π°-Ρ‚ΠΎ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скомпилированныС Ρ„Π°ΠΉΠ»Ρ‹ (ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π² Ρ‚Π°ΠΊΠΎΠΌ случаС Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ошибка Β«Export canceled, changes must first be saved.Β»). ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ трСнируСмся Π½Π° своих собствСнных скСтчах ΠΈΠ»ΠΈ ΠΆΠ΅ пСрСсохраняСм скСтч Π² Π½ΠΎΠ²ΡƒΡŽ ΠΏΠ°ΠΏΠΊΡƒ.

МСню Tools

МСню Tools Π² Arduino IDE Π΄Π°Π΅Ρ‚ ΠΊΡƒΠ΄Π° большС интСрСсного ΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠ³ΠΎ, Π½Π΅ΠΆΠ΅Π»ΠΈ Sketch. Π‘ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΠ³ΠΎ, сам Π²ΠΈΠ΄ мСню зависит ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ Π²Ρ‹ Π²Ρ‹Π±Ρ€Π°Π»ΠΈ Π² качСствС Ρ†Π΅Π»Π΅Π²ΠΎΠΉ.

Uno id Ρ‡Ρ‚ΠΎ Π·Π° Ρ„Π°ΠΉΠ»

МСню Tools Arduino IDE с Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΌ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠΌ сСмСйства AVR.

НачнСм с ΠΎΠ±Ρ‰Π΅Π³ΠΎ ΠΈ Ρ‚Π΅Ρ… ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΅ΡΡ‚ΡŒ Π² ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚Π°Ρ…, построСнных Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°Ρ… Atmel (Π΅Π΅ всС ΠΆΠ΅ ΠΊΡƒΠΏΠΈΠ»Π° Microchip).

ΠŸΡƒΠ½ΠΊΡ‚ Auto Format позволяСт ΠΎΡ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ваш исходный тСкст ΠΏΠΎ общСпринятому Π² Arduino IDE стандарту. ΠžΡ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ тСкст позволяСт Π»Π΅Π³Ρ‡Π΅ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ошибки, Π΄Π° ΠΈ сама ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° выглядит опрятно. Π’Π°ΠΊ ΠΆΠ΅, Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ, ΠΏΡ€ΠΈ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Π°Π²Ρ‚ΠΎΡ„ΠΎΡ€ΠΌΠ°Ρ‚Π° получаСтся Π½Π°ΠΉΡ‚ΠΈ Ρ‚Π°ΠΊΠΈΠ΅ ошибки, ΠΊΠ°ΠΊ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ скобки, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ большом количСствС Π²Π»ΠΎΠΆΠ΅Π½ΠΈΠΉ нСсколько Π·Π°Ρ‚Ρ€ΡƒΠ΄Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ. Оная ΠΆΠ΅ функция вызываСтся ΠΈ Π² самом Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ Π² контСкстном мСню доступном ΠΏΠΎ ΠΏΡ€Π°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠ΅ ΠΌΡ‹ΡˆΠΊΠΈ.

Archive Sketch позволяСт ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΡŽ ΠΏΠΎ ΠΏΠ°ΠΏΠΊΠ΅ Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ хранятся всС ваши скСтчи. Напомню, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ скСтч хранится Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅, ΠΊΡƒΠ΄Π° складываСтся всС, Ρ‡Ρ‚ΠΎ ΠΊ Π½Π΅ΠΌΡƒ относится. Если скСтчСй Ρƒ вас ΠΌΠ½ΠΎΠ³ΠΎ, особСнно Ссли ΠΏΠ»ΠΎΠ΄ΠΈΡ‚ΡŒ вСрсии Π² Π½ΠΎΠ²Ρ‹Ρ… ΠΏΠ°ΠΏΠΊΠ°Ρ…, Ρ‚ΠΎ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π²ΠΎ всСм этом Π½Π°Π³Ρ€ΠΎΠΌΠΎΠΆΠ΄Π΅Π½ΠΈΠΈ становится ΠΎΡ‡Π΅Π½ΡŒ слоТно. Для этого ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ архивирования. Папка со скСтчСм Π±ΡƒΠ΄Π΅Ρ‚ сТата Π² Π°Ρ€Ρ…ΠΈΠ² ZIP, Π° Π·Π°Ρ‚Π΅ΠΌ стСрта ΠΈΠ· ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°. ΠžΡΡ‚Π°Π½Π΅Ρ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π°Ρ€Ρ…ΠΈΠ².

Serial Plotter противовСс Serial Monitor ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для Π²Ρ‹Π²ΠΎΠ΄Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ° ΠΈΠ· Π΄Π°Π½Π½Ρ‹Ρ… Π²Ρ‹Π΄Π°Π²Π°Π΅ΠΌΡ‹Ρ… Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΡ€Ρ‚. ВсС, Ρ‡Ρ‚ΠΎ ΠΎΡ‚ вас трСбуСтся для построСния Π³Ρ€Π°Ρ„ΠΈΠΊΠ° β€” Π²Ρ‹ΠΏΠ»Π΅Π²Ρ‹Π²Π°Ρ‚ΡŒ Π² ΠΏΠΎΡ€Ρ‚ Ρ†ΠΈΡ„Ρ€Ρ‹ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Serial.println(). НСплохой ΠΏΡ€ΠΈΠΌΠ΅Ρ€ использования ΠΏΠ»ΠΎΡ‚Ρ‚Π΅Ρ€Π° ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ Π½Π° страницах ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° wikihandbk.

ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹Π΅ Π²Ρ‹ΡˆΠ΅ ΠΏΡƒΠ½ΠΊΡ‚Ρ‹ стандартны. Π˜Ρ… использованиС, Π²ΠΊΡƒΠΏΠ΅ с Library Manager Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ извСстны Π΄Π°ΠΆΠ΅ Π½Π΅ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ. А дальшС ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ ΠΏΠΎΠ³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΡΡ Π² Ρ‡Π°Ρ‰ΠΎΠ±Ρ‹ Arduino IDE ΠΈ ΠΌΠΈΡ€ программирования ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ².

WiFi101 / WiFiNINA Firmware Updater

Π‘Π΅Ρ‚Π΅Π²ΠΎΠ΅ взаимодСйствиС для ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚ Arduino всСгда Π±Ρ‹Π»ΠΎ ахиллСсовой пятой. Π˜Ρ… просто Π½Π΅Ρ‚ Π² стандартной поставкС, Π° всС Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π² Π²ΠΈΠ΄Π΅ Π²Π½Π΅ΡˆΠ½ΠΈΡ… ΠΏΠ»Π°Ρ‚ Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ ди́ки, Ρ‡Ρ‚ΠΎ просто ΠΏΡ€ΠΎΠΏΠ°Π΄Π°Π΅Ρ‚ всякоС ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ ΠΈΡ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ. По этой ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΏΠ»Π°Ρ‚Ρ‹ Π½Π° основС ESP8266, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ дСшСвлС, ΠΌΠΎΡ‰Π½Π΅Π΅ ΠΈ сразу с WiFi Π½Π° Π±ΠΎΡ€Ρ‚Ρƒ. Но ΠΈΡ‚Π°Π»ΡŒΡΠ½Ρ†Ρ‹, Π΄Π° ΠΈ Π°Ρ€Π΄ΡƒΠΈΠ½Ρ‰ΠΈΠΊΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅, рСбята ΡƒΠΏΠΎΡ€Π½Ρ‹Π΅, поэтому вмСсто Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π° Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ»Π°Ρ‚Ρ‹, ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡŽΡ‚ ΠΈΠ·ΠΎΠ±Ρ€Π΅Ρ‚Π°Ρ‚ΡŒ ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½Ρ‹Π΅ уТасы, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΈ относятся WiFi101 ΠΈ WiFiNINA.

Uno id Ρ‡Ρ‚ΠΎ Π·Π° Ρ„Π°ΠΉΠ»

WiFi 101 Shield. Взято ΠΎΡ‚ΠΊΡƒΠ΄Π°-Ρ‚ΠΎ с просторов сСти.

БобствСнно этот ΠΏΡƒΠ½ΠΊΡ‚ мСню ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для обновлСния ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΈ сСртификатов ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΏΠ»Π°Ρ‚.

Uno id Ρ‡Ρ‚ΠΎ Π·Π° Ρ„Π°ΠΉΠ»

Arduino Uno с ΠΏΠ»Π°Ρ‚ΠΎΠΉ WiFi ΠΏΠΎΠ΄ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ WiFiNINO

Π”ΠΈΡ‡ΡŒ полнСйшая ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ ΠΏΠ»Π°Ρ‚Ρ‹ Π»ΡƒΡ‡ΡˆΠ΅ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π΄ΠΎ ΠΆΡƒΡ‚ΠΈ нСпопулярны, стоят Π΄ΠΎΡ€ΠΎΠ³ΠΎ, ΠΏΠΎΡ‚Ρ€Π΅Π±Π»ΡΡŽΡ‚ ΡƒΠΉΠΌΡƒ энСргии. Π’ ΠΎΠ±Ρ‰Π΅ΠΌ, Π³ΠΎΡ€Π°Π·Π΄ΠΎ ΠΏΡ€ΠΎΡ‰Π΅ ΠΈ элСгантнСС всС Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ Π½Π° Π±Π°Π·Π΅ ΠΏΠ»Π°Ρ‚ сСмСйства ESP. Π’ Ρ†Π΅Π»ΠΎΠΌ Π½Π° Arduino присутствуСт ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹ΠΉ Ρ‚ΡƒΡ‚ΠΎΡ€ΠΈΠ°Π», Π³Π΄Π΅ Ρ€Π°Π·ΠΆΠ΅Π²Π°Π½ΠΎ ΠΊΠ°ΠΊ ΠΈ Ρ‡Ρ‚ΠΎ обновляСтся ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Π΄Π°Π½Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

ESP Exception Decoder

Плагин для Arduino IDE ΠΏΠΎΠ΄ нСпонятным Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ ESP Exception Decoder ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для Π±ΠΎΠ»Π΅Π΅ Π»Π΅Π³ΠΊΠΎΠΉ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΏΠΎΠ΄ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ ESP8266. Exception ΠΈΠ»ΠΈ Β«ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅Β» ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠ΅ ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½ΠΎΠΉ ситуации которая Π½Π΅ Π±Ρ‹Π»Π° ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° ΠΊΠΎΠ΄ΠΎΠΌ. НапримСр, Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° 0 ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½ΠΎ Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅, ΠΈ Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Ρ€Π²Π°Π½Π°. Π’ языкС, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΡŽΡ‚ Π² Arduino IDE Π½Π΅Ρ‚ возмоТности ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±Π»ΠΎΠΊΠΈ try <> catch <>, соотвСтствСнно Ρ€Π°Π±ΠΎΡ‚Π° с ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡΠΌΠΈ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π° (Ρ‚ΠΎΡ‡Π½Π΅Π΅ ΠΏΠΎ синтаксису ΠΎΠ½ Π΅ΡΡ‚ΡŒ, Π½ΠΎ компилятор Π΅Π³ΠΎ ΠΎΡ‚Π²Π΅Ρ€Π³Π½Π΅Ρ‚, ΠΏΠΎ ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅ для ΠΏΠ»Π°Ρ‚ Π½Π° основС AVR). ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚ обязан ΠΏΡ€Π΅Π΄ΡƒΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π°Ρ‚ΡŒ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ситуаций. Π˜Π½Π°Ρ‡Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ нСпрСдсказуСмым.

На ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ экосистСмС Arduino, построСнной Π½Π° Atmel AVR (ΠΎΠ± этом ΠΎΠΏΡΡ‚ΡŒ ΠΆΠ΅ дальшС) Π½Π΅Ρ‚ мСста ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡΠΌ. И Π΄Π°ΠΆΠ΅ нСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ язык, примСняСмый для программирования Π² Arduino IDE Π΅ΡΡ‚ΡŒ Π½ΠΈ Ρ‡Ρ‚ΠΎ ΠΈΠ½ΠΎΠ΅ ΠΊΠ°ΠΊ Π΄ΠΈΠ°Π»Π΅ΠΊΡ‚ C++, Π² Π½Π΅ΠΌ Ρ‚Π°ΠΊ ΠΆΠ΅ Π½Π΅Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ ΠΈ ΠΎΠ½ΠΈ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ компилятором, ΠΈΠ±ΠΎ Π² AVR Π½Π΅Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ, слишком Ρ‚Π°ΠΌ ΠΌΠ°Π»ΠΎ мСста для Π΅Ρ‰Π΅ ΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ. Бильно Тизнь это Π½Π΅ ослоТняСт, просто ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΈΡˆΡƒΡ‚ΡΡ ΠΊΡƒΠ΄Π° Π±ΠΎΠ»Π΅Π΅ Π°ΠΊΠΊΡƒΡ€Π°Ρ‚Π½ΠΎ. А Π²ΠΎΡ‚ Π² экосистСмС ESP, Π² Ρ‚ΠΎΠΌ числС ΠΈ ΠΏΠΎΠ΄ Arduino, ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚.

И Π² этом Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°. ΠŸΡ€ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ситуации, Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ дСлСния Π½Π° 0, ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, esp8266 выдаст Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΡ€Ρ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, стСк Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Π³Π΄Π΅ ΠΎΠ½ΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ»ΠΎ, сохранит Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ свСдСния Π²ΠΎ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΉ памяти (ΠΊ Π½ΠΈΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ послС ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ).

Uno id Ρ‡Ρ‚ΠΎ Π·Π° Ρ„Π°ΠΉΠ»

Π’ΠΎΡ‚ Ρ‚Π°ΠΊΡƒΡŽ Π²ΠΎΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ сохраняСт esp8266 послС ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ. Π’ этом случаС ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»Π° ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΏΠΎ ΠΏΠΈΡ‚Π°Π½ΠΈΡŽ.

БистСма Π² Ρ‡ΠΈΠΏΠ°Ρ… ESP Π±ΠΎΠ»Π΅Π΅ заморочСнная, Ρ‡Π΅ΠΌ Π² AVR ΠΈ ΠΏΡ€ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ Π½Π΅ΡˆΡ‚Π°Ρ‚Π½ΠΎΠΉ ситуации Π²Ρ‹ΠΏΠ»Π΅Π²Ρ‹Π²Π°Π΅Ρ‚ Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΡ€Ρ‚ Π½Π΅ΠΊΠΈΠΉ стСк адрСсов, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π΄ΠΎ истинной ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ возникновСния ошибки. Но Π²Ρ‹Π΄Π°ΡŽΡ‚ΡΡ адрСса Π² совсСм Π½Π΅Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΠΌ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ Π²ΠΈΠ΄Π΅. Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ строчку Π² исходном ΠΊΠΎΠ΄Π΅ с ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌ адрСсом, Π²Ρ‹Π΄Π°Π½Π½Ρ‹ΠΌ Π² стСкС, ΠΈ Π±Ρ‹Π» ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Π» ESP Exception Decoder.

Uno id Ρ‡Ρ‚ΠΎ Π·Π° Ρ„Π°ΠΉΠ»

НамСрСнный Π²Ρ‹Π·ΠΎΠ² ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π½Π° WeMos Mini

ПослС возникновСния ошибки Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ пСрСнСсти стСк Π² Π΄Π΅ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Ρ‰ΠΈΠΊ ΠΈ ΠΎΠ½ выдаст Β«ΠΏΡƒΡ‚ΡŒΒ» ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠΉΡ‚ΠΈ Π΄ΠΎ строки Π² Π³ΠΎΠ΄Π΅ Π³Π΄Π΅ ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ»Π° ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ ситуация. Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях функция ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ удобная. ΠžΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠΉ инструкциСй ΠΏΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡŽ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Ρ‰ΠΈΠΊΠ° ΠΌΠΎΠΆΠ½ΠΎ Π½Π° страничкС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ESP Arduino Core.

Get Board Info

ΠŸΠΎΠΆΠ°Π»ΡƒΠΉ, самая бСсполСзная функция, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ позволяСт, Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях, ΠΏΠΎΠ½ΡΡ‚ΡŒ, какая ΠΏΠ»Π°Ρ‚Π° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π° ΠΊ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρƒ для ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ. Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв Π²Ρ‹ это ΠΈ Ρ‚Π°ΠΊ Π·Π½Π°Π΅Ρ‚Π΅. А Ссли Π½Π΅ Π·Π½Π°Π΅Ρ‚Π΅, Ρ‚ΠΎ функция ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚, ΠΎΠΏΡΡ‚ΡŒ ΠΆΠ΅, Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ± ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚Π°Ρ….

Burn Bootloader

НаконСц-Ρ‚ΠΎ ΠΌΡ‹ Π½Π°Ρ‡ΠΈΠ½Π°Π΅ΠΌ ΠΏΠΎΠ΄Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ ΠΊ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ интСрСсным ΠΏΡƒΠ½ΠΊΡ‚Π°ΠΌ мСню. НачнСм с ΠΏΡƒΠ½ΠΊΡ‚Π° Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ° (Burn Bootloader). Но для Π½Π°Ρ‡Π°Π»Π° попытаСмся ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ bootloader ΠΈ для Ρ‡Π΅Π³ΠΎ ΠΎΠ½ Π½ΡƒΠΆΠ΅Π½. Π’ старыС Π΄Π°Π»Π΅ΠΊΠΈΠ΅ Π»Π°ΠΌΠΏΠΎΠ²Ρ‹Π΅ Π²Ρ€Π΅ΠΌΠ΅Π½Π° Ρ‚ΠΎΠΆΠ΅ сущСствовали ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ микросхСмы. Но ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π»ΠΈΡΡŒ ΠΎΠ½ΠΈ вСсьма ТСстким способом. Использовался ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²ΡΡ‚Π°Π²Π»ΡΠ»Π°ΡΡŒ микросхСма, происходило таинство, ΠΈ микросхСму ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠΈ.

Π‘Π΅ΠΉ способ с ΠΎΠ΄Π½ΠΎΠΉ стороны достаточно прост, Π½ΠΎ с Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΎΠ½ ΠΎΡ‡Π΅Π½ΡŒ Π½Π΅ΡƒΠ΄ΠΎΠ±Π΅Π½. Π’Π΅Π΄ΡŒ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ Π½Π° ΡƒΠΆΠ΅ ΠΏΡ€ΠΎΡˆΠΈΡ‚ΠΎΠΉ микросхСмС, Ссли это Π²ΠΎΠΎΠ±Ρ‰Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π΅Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹Ρ‚Π°Ρ‰ΠΈΡ‚ΡŒ ΠΈΠ· устройства, ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ. Π§Ρ‚ΠΎ Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ всСгда Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ микросхСма ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ впаянной Π² ΠΏΠ»Π°Ρ‚Ρƒ ΠΈ Π±Π΅Π· спСциализированного оборудования Π΄ΠΎΡΡ‚Π°Ρ‚ΡŒ Π΅Π΅ ΠΎΡ‚Ρ‚ΡƒΠ΄Π° нСльзя ΠΈΠ»ΠΈ ΠΆΠ΅ само устройство Π»Π΅Ρ‚Π°Π΅Ρ‚ Π½Π° спутникС. ИмСнно для этих Ρ†Π΅Π»Π΅ΠΉ Π±Ρ‹Π»Π° ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Π½Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠ° ISP (In-System Programming), Ρ‡Ρ‚ΠΎ Π² ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π΅ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Π½ΠΈ Ρ‡Ρ‚ΠΎ ΠΈΠ½ΠΎΠ΅ ΠΊΠ°ΠΊ «внутрисхСмноС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅Β». ISP Π½Π΅ стоит ΠΏΡƒΡ‚Π°Ρ‚ΡŒ с SPI (Serial Peripheral Interface). ISP это ΠΈΠΌΠ΅Π½Π½ΠΎ внутрисхСмная ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ°, Π° SPI это стандарт взаимодСйствия ΠΌΠ΅ΠΆΠ΄Ρƒ устройствами. И ΠΏΡƒΡΡ‚ΡŒ Π΄Π°ΠΆΠ΅ вас Π½Π΅ вводят Π² заблуТдСния сильно ΠΏΠΎΡ…ΠΎΠΆΠΈΠ΅ Ρ€Π°Π·ΡŠΠ΅ΠΌΡ‹ ΠΈ наимСнования ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ². ISP ΠΈ SPI это Ρ€Π°Π·Π½Ρ‹Π΅ Π²Π΅Ρ‰ΠΈ.

Π’ ΠΎΠ±Ρ‰Π΅ΠΌ случаС ISP позволяСт ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ Ρ‡Π΅Ρ€Π΅Π· любой Π΅Π³ΠΎ интСрфСйс ΠΈ Π΄Π°ΠΆΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ с ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ своСго ΠΊΠΎΠ΄Π° посрСдством своСго собствСнного ΠΆΠ΅ ΠΊΠΎΠ΄Π°. Но для осущСствлСния ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… фокусов трСбуСтся нСкая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, которая Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΈΠ΄Π΅Ρ‚ΡŒ Π² ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π΅ ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ этим ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ. ИмСнно ΠΎΠ½Π° ΠΈ называСтся Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠΎΠΌ (bootloader). И ΠΈΠΌΠ΅Π½Π½ΠΎ благодаря Π΅ΠΉ Π΅ΡΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Ρ‚ΡŒ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρ‹ просто ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠ² ΠΈΡ… ΠΊ USB-ΠΏΠΎΡ€Ρ‚Ρƒ, ΠΈΠ»ΠΈ ΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠ² ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ Π½Π° ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠΌ ΠΏΠΎΡ€Ρ‚Ρƒ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° (Ρƒ ΠΊΠΎΠ³ΠΎ ΠΎΠ½ΠΈ Π΅Ρ‰Π΅ ΠΎΡΡ‚Π°Π»ΠΈΡΡŒ), Π° Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ Π²ΠΎΠΎΠ±Ρ‰Π΅ ΠΏΠΎ Π²ΠΎΠ·Π΄ΡƒΡ…Ρƒ примСняя ΠΏΡ€ΠΈΠ΅ΠΌ OTA (Over The Air).

Π’ΠΎΠΎΠ±Ρ‰Π΅ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡˆΠΈΡ‚ΡŒ ΠΈ Π±Π΅Π· Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ°. ИмСнно для этих Ρ†Π΅Π»Π΅ΠΉ ΠΈ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡƒΠ½ΠΊΡ‚ Π² мСню Sketch. Π’ этом случаС мСста ΠΏΠΎΠ΄ ваш скСтч Π² памяти ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° Π±ΡƒΠ΄Π΅Ρ‚ большС. Однако, Π² послСдствии ΡƒΠΆΠ΅ нСльзя Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΎΠ±Ρ‹ΠΊΠ½ΠΎΠ²Π΅Π½Π½Ρ‹ΠΌ ΠΏΡƒΡ‚Π΅ΠΌ. ΠŸΡ€ΠΈΠ΄Π΅Ρ‚ΡΡ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° Π»ΠΈΠ±ΠΎ ΠΏΡ€ΠΎΡˆΠΈΡ‚ΡŒ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ, Π»ΠΈΠ±ΠΎ Π΄Π°Π»Π΅Π΅ ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ Π±Π΅Π· Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠΎΠ².

Для Arduino сущСствуСт нСсколько Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠΎΠ². Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Π΅Ρ‚ΡΡ Π΅Ρ‰Π΅ ΠΏΡ€ΠΈ ΠΈΠ·Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½ΠΈΠΈ ΠΏΠ»Π°Ρ‚Ρ‹ Arduino, ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π½Π΅ Π»ΡŽΠ±ΡΡ‚. Π”Π΅ΡΠΊΠ°Ρ‚ΡŒ ΠΎΠ½ ΠΏΡ€ΠΈΡ‚ΠΎΡ€ΠΌΠ°ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΏΡ€ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ устройства Π² ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… для ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ спустя Π΄Π΅ΡΡΡ‚ΡŒ сСкунд запускаСт ваш ΠΏΡ€ΠΎΡˆΠΈΡ‚Ρ‹ΠΉ скСтч. Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠ»Π°Ρ‚Ρ‹ Arduino, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ DTR (Data Terminal Ready) / RTS (Ready To Send) Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ быстро ΠΈΠ½Π°Ρ‡Π΅ bootloader просто пСрСдаст ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΠΉ ΠΌΠΈΠΊΡ€ΠΎΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅, Ρ‡Ρ‚ΠΎ ΡƒΠΆΠ΅ находится Π² микропроцСссорС. Π’ΠΎΡ‚ ΠΈ Π½Π°Ρ‡Π°Π»ΠΈ всС, ΠΊΠΎΠΌΡƒ Π½Π΅ лСнь, ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡˆΡ‚Π°Ρ‚Π½Ρ‹ΠΉ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ ΠΈΠ»ΠΈ ΠΆΠ΅ ΠΏΠΈΡΠ°Ρ‚ΡŒ свой собствСнный.

Uno id Ρ‡Ρ‚ΠΎ Π·Π° Ρ„Π°ΠΉΠ»

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹Π΅ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠΈ для ΠΏΠ»Π°Ρ‚ Arduino

Π“Π΄Π΅ Π±Ρ€Π°Ρ‚ΡŒ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠΈ? Π’ΠΎΠΎΠ±Ρ‰Π΅ стандартный Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ прямо ΠΈΠ· Arduino. Для этих Ρ†Π΅Π»Π΅ΠΉ ΠΈ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ ΠΏΡƒΠ½ΠΊΡ‚ мСню Burn Bootloader. А сами Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠΈ ΠΈΠ· стандартной поставки ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π² ΠΏΠ°ΠΏΠΊΠ΅ с установлСнным Arduino Π² ΠΏΠΎΠ΄Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ hardware. Если ΠΆΠ΅ Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ΠΏΠ»Π°Ρ‚Ρ‹ ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΎΡ‚ Arduino AVR, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ESP3288, Ρ‚ΠΎ всС Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠΈ ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΠ΅ инструмСнты ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π² Π»ΠΈΡ‡Π½ΠΎΠΌ ΠΏΡ€ΠΎΡ„ΠΈΠ»Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ (AppData\Local).

Uno id Ρ‡Ρ‚ΠΎ Π·Π° Ρ„Π°ΠΉΠ»

Π—Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ для ΠΏΠ»Π°Ρ‚ сСмСйства ESP

Но Ссли Π²Ρ‹ скачиваСтС Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠΈ ΠΈ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΈΡ… Π² Arduino IDE, Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ°ΠΏΠΊΡƒ hardware Π² вашСм ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ для скСтчСй. ПослС ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ IDE Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠΈ ΠΈΠ· этой ΠΏΠ°ΠΏΠΊΠΈ Ρ‚Π°ΠΊ ΠΆΠ΅ Π±ΡƒΠ΄ΡƒΡ‚ доступны, ΠΎΠ΄Π½Π°ΠΊΠΎ Π½Π΅ слСдуСт Π·Π°Π±Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎ Ρ„Π°ΠΉΠ» boards.txt ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΏΠΎΠ΄ΠΏΠ°ΠΏΠΊΠ°Ρ… ΠΏΠ°ΠΏΠΊΠΈ hardware. Если Ρƒ вас Π²Π΄Ρ€ΡƒΠ³ Π½Π΅Ρ‚ тСкстового Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° ΠΈΠ»ΠΈ ΠΆΠ΅ Π²Ρ‹ испытываСтС трудности с Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ boards.txt Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅. Один энтузиаст создал ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Arduino BOARDS.TXT Editor, которая позволяСт с Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒΡŽ Π²Π½ΠΎΡΠΈΡ‚ΡŒ измСнСния Π² ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ».

Π’Π°ΠΊ, Π³Π΄Π΅ ΠΆΠ΅ Π±Ρ€Π°Ρ‚ΡŒ эти самыС Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠΈ? Π˜ΡΠΊΠ°Ρ‚ΡŒ Π² сСти. Поисковики Π²Ρ‹Π΄Π°ΡŽΡ‚ просто нСмыслимоС количСство Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ². Для Π½Π°Ρ‡Π°Π»Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΡΡ Π½Π° OptiBoot, ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°Π»ΡŒΠΊΡƒΠ»ΡΡ‚ΠΎΡ€ Β«Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉΒ» Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ ΠΏΠΎΠ΄ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρƒ ΠΈΠ»ΠΈ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ ссылки с ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ страницы Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠΎΠ² Arduino.

И подводя ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹ΠΉ ΠΈΡ‚ΠΎΠ³, Ссли Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ Π±Π΅Π· Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ° (Ρ‚Π°ΠΊ для Π½Π΅Π΅ останСтся большС мСста) Π² ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€, Ρ‚ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ Π΅Π³ΠΎ ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Ρƒ ΠΈ Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ Ρ‡Π΅Ρ€Π΅Π· Sketch – Upload Using Programmer. Если ΠΆΠ΅ Ρ…ΠΎΡ‚ΠΈΠΌ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒΡΡ ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΉ ΠΈ ΡƒΠ΄ΠΎΠ±Π½ΠΎΠΉ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ скСтчСй Ρ‡Π΅Ρ€Π΅Π· срСду Arduino ΠΏΠΎ USB ΠΈ Π±Π΅Π· ΠΏΡ€ΠΎΡ‡ΠΈΡ… Ρ‚Π°Π½Ρ†Π΅Π² африканских Π½Π°Ρ€ΠΎΠ΄ΠΎΠ², Ρ‚ΠΎ ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Π΅ΠΌ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ (ΠΈΠ»ΠΈ ΠΆΠ΅ ΠΌΡ‹ ΠΊΡƒΠΏΠΈΠ»ΠΈ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ Π±Π΅Π· Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ°) ΡƒΠΆΠ΅ посрСдством Tools – Burn Bootloader. Π’ ΠΎΠ±ΠΎΠΈΡ… случаях Π½Π΅Π·Π°Π±Ρ‹Π²Π°Π΅ΠΌ ΠΏΡ€ΠΎ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ ΠΏΠ»Π°Ρ‚Ρ‹, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΡ… настроСк.

И Π΅Ρ‰Π΅ Ρ€Π°Π·, Ссли Π² ΠΏΠ»Π°Ρ‚Π΅ установлСн Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ, Ρ‚ΠΎ послС ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΏΠ»Π°Ρ‚Ρ‹ ΠΎΠ½ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅, ΠΏΠΎΡΠ»ΡƒΡˆΠ°Π΅Ρ‚ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ ΠΏΠΎΡ€Ρ‚Ρ‹ Π² Π½Π°Π΄Π΅ΠΆΠ΄Π΅ Ссли Π²Π΄Ρ€ΡƒΠ³ Ρ‚Π°ΠΌ ΠΊΡ‚ΠΎ-Ρ‚ΠΎ Ρ…ΠΎΡ‡Π΅Ρ‚ Π·Π°Π»ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ. Если ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ² заливания ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ Π½Π΅Ρ‚, Ρ‚ΠΎ ΠΎΠ½ со спокойной Π΄ΡƒΡˆΠΎΠΉ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ основной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅. А Ссли Π² ΠΏΠ»Π°Ρ‚Π΅ Π½Π΅Ρ‚ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ°, Ρ‚ΠΎ Ρ‚ΠΎΠ³Π΄Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ послС ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ сразу пСрСдаСтся основной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅. ВсС просто, ΠΏΠΎ ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅ Π½Π° ΠΏΠ°Π»ΡŒΡ†Π°Ρ….

AVR ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΠ΅

Для Π»ΡƒΡ‡ΡˆΠ΅Π³ΠΎ понимания дальнСйшСй ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ я Ρ…ΠΎΡ‡Ρƒ привСсти Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ свСдСния ΠΎ самих ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°Ρ… с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… пошло-ΠΏΠΎΠ΅Ρ…Π°Π»ΠΎ Arduino. ΠœΡ‹ ΡƒΠΆΠ΅ Π·Π½Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ Arduino построСны Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°Ρ… (Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Π»ΡŒΠ½Ρ‹Ρ… схСмах, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΈ сами ΠΏΠΎ сСбС Π±Π΅Π· внСшнСй обвязки, ΠΏΠΎΠ΄Π°Π²Π°ΠΉ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ напряТСниС) ΠΎΡ‚ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Atmel (Π½Ρ‹Π½Ρ‡Π΅ Microchip).

Π£ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Atmel Π½Π°Ρ€Π°Π±ΠΎΡ‚Π°Π½ΠΎ нСсколько Π»ΠΈΠ½Π΅Π΅ΠΊ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ², Π½ΠΎ нас Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ интСрСсуСт Π»ΠΈΠ½Π΅ΠΉΠΊΠ° AVR (кстати, Π°Π±Π±Ρ€Π΅Π²ΠΈΠ°Ρ‚ΡƒΡ€Π° AVR ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎ Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π²Π°Π΅Ρ‚ΡΡ), Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΈΠΌΠ΅Π½Π½ΠΎ Π½Π° Π½Π΅ΠΉ ΠΈ построСны ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ Arduino. Π›ΠΈΠ½Π΅ΠΉΠΊΠ° появилась Π°ΠΆ Π² 1996 Π³ΠΎΠ΄Ρƒ ΠΈ, ΠΏΠΎΠΆΠ°Π»ΡƒΠΉ, Π±Ρ‹Π»Π° ΠΎΠ΄Π½Π° ΠΈΠ· ΠΏΠ΅Ρ€Π²Ρ‹Ρ… Π½Π° Ρ€Ρ‹Π½ΠΊΠ΅ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΠ²ΡˆΠ΅ΠΉ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, Π³Π΄Π΅ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ ΠΈ ΠΏΠ°ΠΌΡΡ‚ΡŒ (ΠžΠ—Π£ ΠΈ ΠŸΠ—Π£) располоТСны Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΎΠ΄Π½ΠΎΠ³ΠΎ СдинствСнного кристалла. ΠŸΠΎΠ²Ρ‚ΠΎΡ€ΡŽΡΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ систСма Ρ€Π°Π±ΠΎΡ‚Π°Π»Π° достаточно Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½ΠΎΠΉ микросхСмы AVR Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ подаСтся ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅. ВсС ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ΅ Ρƒ Π½Π΅Π΅ ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€ΠΈ.

AVR Π»ΠΈΠ½Π΅ΠΉΠΊΠ° дСлится Π½Π° нСсколько основных Π³Ρ€ΡƒΠΏΠΏ:

ИмСнно микросхСмы AVR ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ Ρ‚Π°ΠΊΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΊΠ°ΠΊ АЦП, ШИМ, SPI, I2C ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΡ…. Arduino ΠΆΠ΅ просто ΠΈΡ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ (хотя с появлСниСм Π±ΠΎΠ»Π΅Π΅ ΠΌΠΎΡ‰Π½Ρ‹Ρ… ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ², Ρ‚Π΅Ρ… ΠΆΠ΅ esp8266, появилась Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ эмуляции Π²Ρ‹ΡˆΠ΅Π½Π°Π·Π²Π°Π½Π½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌ способом).

И Π²ΠΎΠΏΡ€Π΅ΠΊΠΈ возмоТности ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ AVR ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ ISP посрСдством стандарта SPI Ρ‡Π΅Ρ€Π΅Π· установлСнный Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ, для программирования ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² примСняСтся Π²Π΅Π»ΠΈΠΊΠΎΠ΅ мноТСство ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ². Как простых ΠΈ собираСмых Π½Π° ΠΊΠΎΠ»Π΅Π½ΠΊΠ΅, Ρ‚Π°ΠΊ ΠΈ слоТных с внСшним ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ΠΌ ΠΈ ΠΎΠ±ΠΈΠ»ΠΈΠ΅ΠΌ всСвозмоТных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. Но ΠΏΡ€Π΅ΠΆΠ΄Π΅, Ρ‡Π΅ΠΌ ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Π΅ΠΌ ΠΊ Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Π½ΠΈΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ² слСдуСт ΠΏΠΎΡΡΠ½ΠΈΡ‚ΡŒ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΌΠΎΠΌΠ΅Π½Ρ‚. ΠŸΡ€ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° с использованиСм внСшнСго ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° (Π±Π΅Π· использования Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ°) Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‡Π΅Ρ‚ΠΊΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ fuses ΠΈΠ»ΠΈ Π½Π΅ Ρ‚Ρ€ΠΎΠ³Π°Ρ‚ΡŒ настройки, связанныС с Π½ΠΈΠΌΠΈ, Ссли Ρ‚Π°ΠΊΠΎΠ³ΠΎ понимания Π½Π΅Ρ‚. Fuse/Ρ„ΡŒΡŽΠ·Ρ‹/ΠΏΡ€Π΅Π΄ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π±ΠΈΡ‚Ρ‹ β€” это настройки Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°, Π² частности AVR. Они ΠΏΡ€ΠΎΡˆΠΈΠ²Π°ΡŽΡ‚ΡΡ Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ внСшнСго ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° (Π±Π΅Π· примСнСния ISP). И ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для настройки самого ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΈΠ»ΠΈ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡΠ°ΠΌΠΎΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°, Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ внСшнСго сброса устройства (ΠΈ соотвСтствСнно возмоТности Π΅Π³ΠΎ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ Ρ‡Π΅Ρ€Π΅Π· bootloader), Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΈ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ очистки памяти ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Ρ‡ΠΈΠΏΠ° ΠΈ Ρ‚ΠΎΠΌΡƒ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с Ρ„ΡŒΡŽΠ·Π°ΠΌΠΈ ΠΌΠΎΠΆΠ½ΠΎ (ΠΈ Π½ΡƒΠΆΠ½ΠΎ) Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΊ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌΡƒ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρƒ. К Ρ‡ΠΈΠΏΡƒ ATmega328, ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΈΠ· самых популярных Ρ‡ΠΈΠΏΠΎΠ² Π½Π° Arduino, докумСнтация доступна Π½Π° ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌ сайтС производитСля.

Programmer:

Π’ ΡˆΡ‚Π°Ρ‚Π½ΠΎΠΉ поставкС Arduino IDE с ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠΉ инфраструктурой ESP для ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ нСсколько Ρ‚ΠΈΠΏΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ². ΠšΡ€Π°Ρ‚ΠΊΠΎ пройдСмся ΠΏΠΎ Π½ΠΈΠΌ всСм. По Ρ„Π°ΠΊΡ‚Ρƒ всС AVR Π² Arduino IDE ΠΏΡ€ΠΎΡˆΠΈΠ²Π°ΡŽΡ‚ΡΡ посрСдством ΠΏΡ€ΠΈΠ±Π»ΡƒΠ΄Ρ‹ AVRDUDE (Π±Ρ‹Π²ΡˆΠΈΠΉ AVRProg) ΠΈ различия ΠΌΠ΅ΠΆΠ΄Ρƒ Β«ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π°ΠΌΠΈΒ» Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΌ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π΅ ΠΈ настройках AVRDUDE. На Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ AVRDUDE ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ 39 ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ², Π½ΠΎ Π² Arduino IDE ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ 14. ΠžΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с настройками ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· Π½ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ Π² Ρ„Π°ΠΉΠ»Π΅ programmers.txt Π² Ρ‚ΠΎΠΉ самой Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ hardware, Π³Π΄Π΅ складируСтся Ρ„Π°ΠΉΠ»ΠΈΠΊ boards.txt. Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ ΠΏΠΎ настройкам для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° доступна Π² Ρ„Π°ΠΉΠ»Π΅ avrdude.conf (располагаСтся ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π² Arduino\hardware\tools\avr\etc) ΠΈ Π² ΠΊΡƒΡ†Π΅ΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΊ самому AVRDUDE.

AVR ISP

AVRISP Π΅ΡΡ‚ΡŒ Π½ΠΈ Ρ‡Ρ‚ΠΎ ΠΈΠ½ΠΎΠ΅ ΠΊΠ°ΠΊ Ρ„ΠΈΡ€ΠΌΠ΅Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ ΠΎΡ‚ Atmel. Он позволят ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ AVR. И ΠΏΠΎΡ…ΠΎΠΆΠ΅, Ρ‡Ρ‚ΠΎ Π½Π° этом всС. МнС Π½Ρƒ далось Π½Π°ΠΉΡ‚ΠΈ Ρ…ΠΎΡ‚ΡŒ сколько-Π½ΠΈΠ±ΡƒΠ΄ΡŒ достовСрной ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎ Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€, каТСтся, Ρ‡Ρ‚ΠΎ ΠΎΠ½ сошСл со сцСны ΠΈ осСл Π³Π΄Π΅-Ρ‚ΠΎ Π² дСбрях ΠΏΠ»Π°Ρ‚ Ρƒ аксакалов Π΅Ρ‰Π΅ Π΄ΠΎ появлСния Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚.

Uno id Ρ‡Ρ‚ΠΎ Π·Π° Ρ„Π°ΠΉΠ»

ΠžΡ‚Π»Π°Π΄ΠΎΡ‡Π½Π°Ρ ΠΏΠ»Π°Ρ‚Π° Atmel STK500. Π€ΠΎΡ‚ΠΎ производитСля.

ЕдинствСнноС, Ρ‡Ρ‚ΠΎ Ρ…ΠΎΡ‚ΡŒ ΠΊΠ°ΠΊ-Ρ‚ΠΎ ΠΏΡ€ΠΎΠ»ΠΈΠ²Π°Π΅Ρ‚ свСт Π½Π° Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€, Ρ‚Π°ΠΊ это Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΠΏΠΎ Ρ„Π°ΠΊΡ‚Ρƒ являСтся Ρ‡Π°ΡΡ‚ΡŒΡŽ STK500 (такая отладочная ΠΏΠ»Π°Ρ‚Π° для AVR ΠΎΡ‚ Atmel) вСрсии 1, которая подкачаСтся ΠΊ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρƒ посрСдством ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΡ€Ρ‚Π°.

AVRISP mkII

А Π²ΠΎΡ‚ AVRISP mkii являСтся Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠΌ, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΡ‹ΠΌ ΠΊ USB. По ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅ ΠΎ Π½Π΅ΠΌ Π΅ΡΡ‚ΡŒ информация Π½Π° сайтС производитСля ΠΈ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Π±Π΅Π·Ρ€ΠΎΠ΄Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΎΠ΄Π°ΡŽΡ‚ΡΡ бСсчислСнными компаниями ΠΊΠ°ΠΊ Ρ€Π°Π· ΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΊΠ»ΠΎΠ½Π°ΠΌΠΈ ΠΈΠΌΠ΅Π½Π½ΠΎ этого ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π°.

Uno id Ρ‡Ρ‚ΠΎ Π·Π° Ρ„Π°ΠΉΠ»

Π€ΠΈΡ€ΠΌΠ΅Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ AVRISP mkII. Π€ΠΎΡ‚ΠΎ производитСля.

Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΎΠ½ Ρ‚Π°ΠΊ ΠΆΠ΅ являСтся Ρ‡Π°ΡΡ‚ΡŒΡŽ ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ‹ STK500, Π½ΠΎ ΡƒΠΆΠ΅ вСрсии 2, которая ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΊ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρƒ ΡƒΠΆΠ΅ ΠΏΠΎ интСрфСйсу USB. Π₯отя, ΠΏΠΎ ΠΎΡ‚Π·Ρ‹Π²Π°ΠΌ ΠΎΡ‡Π΅Π²ΠΈΠ΄Ρ†Π΅Π² ΠΈ вСрсия 1 ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ с USB посрСдством ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π΅Ρ€Π° COM-USB.

USBtinyISP

Π­Ρ‚ΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ, ΠΎΠ½ прост ΠΈ дСшСв, Π° Π² качСствС «сСрдца» Ρƒ Π½Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‡ΠΈΠΏ tinyAVR. Π’ΠΎΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ вопрос – ΠΊΠ°ΠΊ ΠΆΠ΅ Π΅Π³ΠΎ ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Ρ‚ΡŒ, Ссли ΠΎΠ½ сам ΠΈ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ AVR?

Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ поддСрТиваСтся Arduino IDE ΠΈ вСсьма популярСн. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ Π±Ρ‹Π» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ Π² НидСрландах, Π½ΠΎ Π² настоящСС врСмя поддСрТиваСтся AdaFruit.

ArduinoISP ΠΈ ArduinoISP.org

Π§Ρ‚ΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π»ΠΈ ΠΏΠΎΠ΄ этими двумя ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π°ΠΌΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Arduino IDE остаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π³Π°Π΄Π°Ρ‚ΡŒ, Π΄Π° ΡƒΠ³Π°Π΄Ρ‹Π²Π°Ρ‚ΡŒ. Π‘Π°ΠΉΡ‚ ArudinoISP.org Π΄Π°Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Ρ‚ΡƒΡ‚ΠΎΡ€ΠΈΠ°Π» Π½Π° сайтС Arduino.cc ΠΏΠΎ использованию Arduino as ISP. ЕдинствСнноС ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ этих Π΄Π²ΡƒΡ… ΠΎΡ‚ Arduino as ISP Ρ‚ΠΎΠ»ΡŒΠΊΠΎ лишь ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ». ВСроятно, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π±Ρ‹Π»ΠΈ ΠΊΠΎΠ³Π΄Π°-Ρ‚ΠΎ собраны Π² качСствС ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ особого Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ°, Π° с Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ исчСзли с Π»ΠΈΡ†Π° истории. По ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅ Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ AVRDUDE Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ упоминания Π½ΠΈ ΠΏΡ€ΠΎ arduinoisp Π½ΠΈ ΠΏΡ€ΠΎ arduinoisporg просто Π½Π΅Ρ‚.

USBasp

Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ простой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ Π΄ΠΎΠΌΠ° Π½Π° ΠΊΠΎΠ»Π΅Π½ΠΊΠ΅. И ΠΎΠ½ Ρ‚ΠΎΠΆΠ΅ построСн Π½Π° Ρ‡ΠΈΠΏΠ΅ ΠΎΡ‚ Atmel. ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ Π±Ρ‹Π» Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚ Π½Π΅ΠΌΠ΅Ρ†ΠΊΠΈΠΉ программистом, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠΎΠ΄Ρ…Π²Π°Ρ‡Π΅Π½ всСм ΠΌΠΈΡ€ΠΎΠΌ. Как ΠΈ с USBtinyISP Ρ‡ΠΈΠΏ ΠΎΡ‚ Atmel для ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.

Parallel Programmer

Π”Π°Π½Π½Ρ‹ΠΉ Ρ‚ΠΈΠΏ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° считаСтся ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· самый простых, Ссли Π½Π΅ самым простым. По сути Β«ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Β» β€” распиновка ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡ€Ρ‚Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС.

Для сборки Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π° трСбуСтся ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ с ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹ΠΌ интСрфСйсом (Ρ€Π°Π½ΡŒΡˆΠ΅ ΠΏΠΎ Π½Π΅ΠΌΡƒ Π±Ρ‹Π»ΠΎ ΠΌΠΎΠ΄Π½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ½Ρ‚Π΅Ρ€Ρ‹) ΠΈ всСго Ρ‚Ρ€ΠΈ рСзистора Π΄Π²ΡƒΡ… Π½ΠΎΠΌΠΈΠ½Π°Π»ΠΎΠ². ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π°Ρ схСма (ΠΎΡ‚ Ρ€ΡƒΠΊΠΈ) ΠΈ описаниС ΠΏΠΎ сборкС (с фотографиями) доступна Π½Π° ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌ сайтС Arduino.

Arduino as ISP

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΏΠ»Π°Ρ‚Ρ‹ Arduino сами ΠΏΠΎ сСбС ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°ΠΌΠΈ, Π΄Π° Π΅Ρ‰Π΅ ΠΈ с Π½Π°Π²ΠΎΡ€ΠΎΡ‡Π΅Π½Π½Ρ‹ΠΌΠΈ Π²Ρ…ΠΎΠ΄Π°ΠΌΠΈ/Π²Ρ‹Ρ…ΠΎΠ΄Π°ΠΌΠΈ, Ρ‚ΠΎ ΠΈΡ… Π²ΠΏΠΎΠ»Π½Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² качСствС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ².

Для этого Π² ΠΏΠ»Π°Ρ‚Ρƒ Arduino закачиваСтся скСтч ΠΈΠ· ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΏΠΎΠ΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ ArduinoISP, ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΊΠΈ (ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠ»Π°Ρ‚ΠΎΠΉ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π·Π°Π»ΠΈΡ‚ скСтч ΠΈ ΠΏΠ»Π°Ρ‚ΠΎΠΉ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡˆΠΈΡ‚ΡŒ), ΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Π΅Ρ‚ΡΡ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ (Π½Π΅ Π·Π°Π±Ρ‹Π²Π°Π΅ΠΌ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ Arduino as ISP). ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π°Ρ инструкция доступна ΠΎΠΏΡΡ‚ΡŒ ΠΆΠ΅ Π½Π° страницС ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ сайта Arduino.

Arduino Gemma

Если ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ, Ρ‚ΠΎ Gemma это Π½Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€. Π­Ρ‚ΠΎ микроскопичСская ΠΏΠ»Π°Ρ‚Π° ΠΎΡ‚ AdaFruit прСдназначСнная для вшивания/встраивания Π² ΠΎΠ΄Π΅ΠΆΠ΄Ρƒ/ΠΎΠ±ΡƒΠ²ΡŒ. Она лишь частично совмСстима с Arduino, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ содСрТит ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠ°Π»ΠΎ Π²Π²ΠΎΠ΄ΠΎΠ²/Π²Ρ‹Π²ΠΎΠ΄ΠΎΠ². Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π΅Π΅ ΠΊ USB Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡƒ ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ Π²Ρ‹Π΄ΡƒΠΌΠ°Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ, ΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ PID для USB устройства. По этой ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Π΅Ρ‚ΡΡ Gemma ΠΊΠ°ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ (Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Ρ‚Π°ΠΌ встроСнный USBtiny), ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ для AVRDUDE с ТСстко прописанным bootloader. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, ΠΏΡ€ΠΎΡˆΠΈΡ‚ΡŒ этой ΠΏΠ»Π°Ρ‚ΠΎΠΉ Π½ΠΈΡ‡Π΅Π³ΠΎ нСльзя, Π½ΠΎ Π·Π°Ρ‚ΠΎ Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡˆΠΈΡ‚ΡŒ саму Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠΎΠΌ.

BusPirate as ISP

BusPirate это Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€, скорСС это Π½Π΅ совсСм ΠΈ вовсС Π½Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€, Π° ΠΎΠ΄Π½ΠΎΠΏΠ»Π°Ρ‚Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ спСциализированный для изучСния ΠΈ программирования Π½ΠΎΠ²Ρ‹Ρ… ΠΈ нСизвСстных микропроцСссоров. Π•Π³ΠΎ конструкция Ρ‚Π°ΠΊΠΎΠ²Π°, Ρ‡Ρ‚ΠΎ Π½Π° ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Π΅ собраны всС мыслимыС ΠΈ Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ интСрфСйсы для исслСдования Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΆΠ΅ ΠΏΠΎΠΏΠ°Π»ΠΎ ΠΊ Π²Π°ΠΌ Π² Ρ€ΡƒΠΊΠΈ. Π¨Ρ‚ΡƒΠΊΠ° интСрСсная ΠΈ Ссли Π²Ρ‹ ΡƒΠΆ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ с Ρ‚Π°ΠΊΠΈΠΌ, Ρ‚ΠΎ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π·Π½Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ с AVRDUDE Ρƒ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, связанныС с ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΎΠΉ самого BusPirate. ΠžΠ±Ρ…ΠΎΠ΄ΡΡ‚ΡΡ ΠΎΠ½ΠΈ, СстСствСнно, настройками AVRDUDE ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΡˆΠ°ΠΌΠ°Π½ΡΡ‚Π²ΠΎΠΌ с ΠΆΠ΅Π»Π΅Π·ΠΎΠΌ.

Atmel STK500 development board

Π’Π° самая отладочная ΠΏΠ»Π°Ρ‚Π°, Ρ‡Ρ‚ΠΎ упоминаСтся Π² AVR ISP ΠΈ AVR ISP mkII. Π’ Arduino IDE Π½Π΅ дСлаСтся различия ΠΌΠ΅ΠΆΠ΄Ρƒ вСрсиями ΠΈ прСдполагаСтся, Ρ‡Ρ‚ΠΎ AVRDUDE ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ Π²Π΅Ρ€ΡΠΈΡŽ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° ΠΎΠ±ΠΌΠ΅Π½Π° ΠΈ осущСствит самонастройку. Если ΠΆΠ΅ этого Π½Π΅ происходит, Ρ‚ΠΎ Π² programmers.txt Π½ΡƒΠΆΠ½ΠΎ Ρ‡Π΅Ρ‚ΠΊΠΎ ΠΏΡ€ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ stk500v1 ΠΈΠ»ΠΈ stk500v2 Π² качСствС примСняСмого ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°.

Atmel JTAGICE3 (ISP mode) ΠΈ Atmel JTAGICE3 (JTAG mode)

JTAGICE3 β€” соврСмСнноС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Ρ‡ΠΈΠΏΠΎΠ² сСмСйств AVR, SAM ΠΈ Cortex. РазумССтся, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅Ρ… Ρ‡ΠΈΠΏΠΎΠ², Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ Π²Π½ΡƒΡ‚Ρ€ΠΈΡ‡ΠΈΠΏΠΎΠ²ΡƒΡŽ ΠΎΡ‚Π»Π°Π΄ΠΊΡƒ. ΠŸΠΎΠΏΡƒΡ‚Π½ΠΎ эта ΠΊΠΎΡ€ΠΎΠ±ΠΎΡ‡ΠΊΠ° Π΅Ρ‰Π΅ ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅Ρ‚ ΠΈΡ… всСх.

Uno id Ρ‡Ρ‚ΠΎ Π·Π° Ρ„Π°ΠΉΠ»

Atmel JTAGICE3 ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊ/ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€.

ΠŸΡ€ΠΎΠ΄ΡƒΠΊΡ‚ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ, Ρƒ производитСля имССтся докумСнтация. Π Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€Π°ΠΌΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² примСняСмых ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°Ρ…. Π’ ISP Ρ€Π΅ΠΆΠΈΠΌΠ΅ примСняСтся ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» JTAG3ISP, Π° Π² JTAG просто JTAG3.

Atmel-ICE (AVR)

ΠžΠ±ΡˆΠΈΡ€Π½ΠΎΠ΅ сСмСйство ESP

Π’Ρ‹ΡˆΠ΅ ΠΌΡ‹ рассмотрСли спСцифику ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² сСмСйства AVR. Но ΠΏΡ€ΠΈ этом ΠΎΠ±ΠΎΠΉΡ‚ΠΈ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ многочислСнноС ΠΈ популярноС сСмСйство ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² ESP Π±Ρ‹Π»ΠΎ Π±Ρ‹ просто нСкрасиво. Π’Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· сСмСйства, мСню Tools Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ увСличиваСтся Π² объСмС. ΠŸΡ€ΠΎΠΉΠ΄Π΅ΠΌΡΡ ΠΏΠΎ мСню ΠΈ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ² ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ мСню ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚. Π—Π΄Π΅ΡΡŒ ΠΈ Π΄Π°Π»Π΅Π΅ я Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽ SDK ESP вСрсии 2.5.0.

Uno id Ρ‡Ρ‚ΠΎ Π·Π° Ρ„Π°ΠΉΠ»

МСню Tools Π² Arduino IDE ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΠΏΠ»Π°Ρ‚ сСмСйства ESP.

Π§Π°ΡΡ‚ΡŒ мСню всС ΠΆΠ΅ остаСтся Ρ‚Π΅ΠΌ ΠΆΠ΅ самым, Ρ‡Ρ‚ΠΎ ΠΈ ΠΏΡ€Π΅ΠΆΠ΄Π΅, поэтому излишнС ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡ‚ΡŒΡΡ Π½Π΅ Π±ΡƒΠ΄Π΅ΠΌ.

Upload speed

ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ, с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… частСй Π² ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€. ΠŸΠ»Π°Ρ‚Ρ‹ сСмСйства ESP ΠΌΠΎΠ³ΡƒΡ‚ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΌΠ΅Π³Π°Π±Π°ΠΉΡ‚Π°ΠΌΠΈ памяти (Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ AVR Ρ€Π΅Ρ‡ΡŒ ΠΈΠ΄Π΅Ρ‚ Π² Π»ΡƒΡ‡ΡˆΠ΅ΠΌ случаС ΠΎ сотнях ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡ‚) ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π½Π° скорости 9600 ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π½ΡΡ‚ΡŒ Π½Π΅ΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π΄ΠΎΠ»Π³ΠΈΠΉ ΠΎΡ‚Ρ€Π΅Π·ΠΎΠΊ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Π΅ скорости ΠΏΡ€ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· ΠΏΠ»Π°Ρ‚ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½ΠΎ.

CPU Frequency

МногиС ΠΏΠ»Π°Ρ‚Ρ‹ сСмСйства ESP ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠ· ΠΊΠΎΡ€ΠΎΠ±ΠΊΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ сразу Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… частотах. Π’ Arduino Ρ€Π΅Π³ΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ частоту процСссора ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ΅ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°. ΠžΠΏΡΡ‚ΡŒ ΠΆΠ΅, доступныС Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· ΠΏΠ»Π°Ρ‚ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ.

Flash Size

Π—Π΄Π΅ΡΡŒ указываСтся ΠΊΠ°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Ρ€Π°Π·Π΄Π΅Π»ΡΡ‚ΡŒ всю Π΄ΠΎΡΡ‚ΡƒΠΏΠ½ΡƒΡŽ ΠŸΠ—Π£ для хранСния ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ для Ρ„Π°ΠΉΠ»ΠΎΠ². ΠœΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρ‹ ESP ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ ΠΏΠ°ΠΌΡΡ‚ΡŒ SPIFFS (Serial Peripheral Interface Flash File System). По сути, SPIFFS это файловая систСма для ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ доступа. И Ρƒ программиста Π΅ΡΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, сколько памяти ΠΎΡ‚Π²ΠΎΠ΄ΠΈΡ‚ΡŒ для Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы (Ρ‚ΡƒΠ΄Π° ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, HTML-Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ»ΠΈ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ) ΠΈ сколько для своСго скСтча. Но Ρ‚ΡƒΡ‚ Π΅ΡΡ‚ΡŒ нСкоторая Ρ‚ΠΎΠ½ΠΊΠΎΡΡ‚ΡŒ. На Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚, насколько ΠΌΠ½Π΅ извСстно, ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ ΠΏΠ»Π°Ρ‚Ρ‹ EPS8266 Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π·Π°ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ скСтч Ρ€Π°Π·ΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒΡŽ Π±ΠΎΠ»Π΅Π΅ 1 ΠΌΠ΅Π³Π°Π±Π°ΠΉΡ‚Π°. Π•ΡΡ‚ΡŒ ΠΎΠ±Ρ…ΠΎΠ΄Π½Ρ‹Π΅ ΠΏΡƒΡ‚ΠΈ, Π½ΠΎ вСдь Π΅Ρ‰Π΅ Π½ΡƒΠΆΠ½ΠΎ ΡƒΠΌΡƒΠ΄Ρ€ΠΈΡ‚ΡŒΡΡ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ скСтч, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π² ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ 1 ΠΌΠ΅Π³Π°Π±Π°ΠΉΡ‚Π°. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ больший SPIFF, Π΄Π°Π±Ρ‹ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ врСмя Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ скСтча.

Π’ Ρ‚ΠΎΠΆΠ΅ самоС врСмя Π΅ΡΡ‚ΡŒ свСдСния ΠΎΡ‚ ΠΏΠΎΡ‚Π΅Ρ€ΠΏΠ΅Π²ΡˆΠΈΡ…, Ρ‡Ρ‚ΠΎ ΠΏΠ»Π°Ρ‚Ρ‹ ESP32 ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΡ‹Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ связанныС с Β«Π½Π΅ Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚ мСста для скСтча». Но ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ эти всСго лишь ΠΈΠ·-Π·Π° Π΅Ρ‰Π΅ сырой ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΏΠ»Π°Ρ‚ EPS32 Π² инфраструктурС ESP для Arduino.

Debug port

ΠŸΡƒΠ½ΠΊΡ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ значСния Disabled, Serial ΠΈ Serial1. Данная настройка ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для Π²Ρ‹Π²ΠΎΠ΄Π° ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΡ€Ρ‚ (хотя Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‡Π΅Ρ€Π΅Π· Serial.setDebugOutput(true)). Если Π² скСтчС инициализируСтся ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΠΎΡ€Ρ‚ (Serial ΠΈΠ»ΠΈ Serial1), Ρ‚ΠΎ Π² Π½Π΅Π³ΠΎ ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½Ρ‹Π΅ сообщСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΌΠ΅ΡˆΠ°ΡŽΡ‚ Π²Ρ‹Π²ΠΎΠ΄Ρƒ Π² этот ΠΆΠ΅ ΠΏΠΎΡ€Ρ‚ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

ΠŸΡ€ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ Π²Ρ‹Π²ΠΎΠ΄Π° ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ рСкомСндуСтся ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠΎΡ€Ρ‚Π°. Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС, ΠΏΡ€ΠΈ большом объСмС Π²Ρ‹Π²ΠΎΠ΄Π° ΠΌΠΎΠ³ΡƒΡ‚ Π½Π°Π±Π»ΡŽΠ΄Π°Ρ‚ΡŒΡΡ Ρ„Ρ€ΠΈΠ·Ρ‹ исполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈΠ»ΠΈ ΠΆΠ΅ сброс Π±ΡƒΡ„Π΅Ρ€Π° Π²Ρ‹Π²ΠΎΠ΄Π°. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎ Π²Ρ‹Π΄Π°Ρ‡Π΅ ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½Ρ‹Ρ… сообщСний ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π½Π° сайтС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ESP8266 Core.

Π£ ESP ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ присутствуСт Π΄Π²Π° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠΎΡ€Ρ‚Π°. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ, Serial ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ UART0 ΠΈ GPIO1 (TX) с GPIO3(RX). Π’Ρ‚ΠΎΡ€ΠΎΠΉ, Serial1 ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ UART1 ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ GPIO2 (TX). БоотвСтствСнно Serial1 Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использован Π½Π° ΠΏΡ€ΠΈΠ΅ΠΌ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Π² ΠΎΠ±ΠΎΠΈΡ… случаях Π΅ΡΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ пСрСназначСния ΠΏΠΈΠ½ΠΎΠ², ΠΊΠ°ΠΊ ΠΈ скорости, чСтности ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΡ… характСристик.

Debug Level

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

lwIP Variant

Настройка ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для Π²Ρ‹Π±ΠΎΡ€Π° Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ сСтСвого стСка IP. ΠŸΡ€ΠΎΡˆΡƒ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‚ΡƒΡ‚ ΠΈΠΌΠ΅Π½Π½ΠΎ lwIP (lightweight IP), пСрвая Π±ΡƒΠΊΠ²Π° L, Π° Π½Π΅ i.

Uno id Ρ‡Ρ‚ΠΎ Π·Π° Ρ„Π°ΠΉΠ»

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ Π²Ρ‹Π±ΠΎΡ€Π° IwIP

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ самый Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚, ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°ΡŽΡ‰ΠΈΠΉ использованиС памяти. Но Ссли ваш ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с ΡΠ΅Ρ‚ΡŒΡŽ, Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΆΠ΅Ρ€Ρ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π½Π°ΠΈΠ²Ρ‹ΡΡˆΡƒΡŽ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ. Аналогично ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ IPv6 ΠΈΠ»ΠΈ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒΡΡ Π½Π° стСк вСрсии 1.4, Π³Π΄Π΅ Ρ‚Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Π½Π΅ Π±Ρ‹Π»ΠΎ Π²ΠΎΠΎΠ±Ρ‰Π΅. Под features Ρ‚ΡƒΡ‚ понимаСтся всякого Ρ€ΠΎΠ΄Π° ICMP, IGMP ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΠ΅ Π½Π°Π²ΠΎΡ€ΠΎΡ‚Ρ‹, Π±Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΠΎΠΉΡ‚ΠΈΡΡŒ. Основная докумСнтация ΠΏΠΎ вСрсии Π²Π΅Ρ‚ΠΊΠΈ 2.Ρ… доступна Π½Π° сайтС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°. ΠŸΠΎΡΡ‚ΠΎΡΠ½Π½ΠΎ растущий Wiki ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅ lwIP доступСн Π½Π° страницах ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° FanDom.

VTables

Под VTables Π² IDE подразумСваСтся ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ для ΠΏΠΎΠ·Π΄Π½Π΅Π³ΠΎ связывания ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². НС Π±ΡƒΠ΄Ρƒ Π²Π΄Π°Π²Π°Ρ‚ΡŒΡΡ Π² подробности, ΠΎ Π½ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄ΡƒΠΌΡ‡ΠΈΠ²ΠΎ ΠΏΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π² Π’ΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ. ΠžΡΡ‚Π°Π½ΠΎΠ²Π»ΡŽΡΡŒ лишь Π½Π° самих доступных опциях, Π° ΠΈΡ… всСго Ρ‚Ρ€ΠΈ:

ΠŸΠΎΠ½ΡΡ‚Π½ΠΎ, Ρ‡Ρ‚ΠΎ самый быстрый способ хранСния ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ‚Π°Π±Π»ΠΈΡ† это IRAM, Π° самый ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹ΠΉ Flash. Но Ρ‚ΡƒΡ‚ слСдуСт Ρ‚Π°ΠΊ ΠΆΠ΅ ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π° Ρ‚ΠΎ, ΠΊΠ°ΠΊ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ, Π΅ΡΡ‚ΡŒ Π»ΠΈ мноТСствСнноС наслСдованиС ΠΈ ΠΊΠ°ΠΊ часто ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ ΠΈ ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ°ΡŽΡ‚ΡΡ. Π’ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… примСнСниях такая Ρ‚Π°Π±Π»ΠΈΡ†Π° ΠΈ вовсС ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ статичСской ΠΈ ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ ΠΏΡ€ΠΎΠΆΠΈΠ²Π°Ρ‚ΡŒ Π½Π° Flash, с Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ вСсьма ΠΊΡ€ΡƒΠΏΠ½ΠΎΠΉ ΠΈ просто Π½Π΅ Π²Π»Π΅Π·Π°Ρ‚ΡŒ Π² IRAM (ΠΎΠ±Π»Π°ΡΡ‚ΡŒ ΠžΠ—Π£ для хранСния ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹).

Exceptions

ΠŸΡƒΠ½ΠΊΡ‚ мСню позволяСт Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΈΠ»ΠΈ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ использованиС ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ситуаций. О Π½ΠΈΡ… ΠΌΡ‹ ΡƒΠΆΠ΅ рассуТдали Π²Ρ‹ΡˆΠ΅, Π² Ρ‚ΠΎΠΌ числС ΠΈ Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΎΠ± ESP Exception Decoder. ΠŸΡ€ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ программист Π² ΠΊΠΎΠ΄Π΅ ΡƒΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ структуры try <> catch <>, Ρ‡Ρ‚ΠΎ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅ памяти, Π½ΠΎ позволяСт Π»Π΅Π³Ρ‡Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ слоТныС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹. Напомню, Ρ‡Ρ‚ΠΎ try-catch Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΏΠ»Π°Ρ‚ сСмСйства ESP. ΠžΡ‚Ρ€Π°Π΄Π½ΠΎ Π·Π°ΠΌΠ΅Ρ‡Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ программисты Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠ΅ Π½Π°Π΄ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ для сСмСйства ESP для Arduino ΡƒΠΆΠ΅ Π½Π°Ρ‡Π°Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ try <> catch <> Π² своСм ΠΊΠΎΠ΄Π΅ Π½Π° GitHub.

Erase Flash

ΠŸΡƒΠ½ΠΊΡ‚ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ ΡΡ‚ΠΈΡ€Π°Ρ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΡŽΡŽ ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… пропорциях:

ΠŸΡ€ΠΎΡ‡Π΅Π΅ ΠΏΠΎ ESP

Π’ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ Ρ…ΠΎΡ‚Π΅Π»ΠΎΡΡŒ Π±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ΅ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ° Π² ESP всСгда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Π»ΡŒΡ‰ΠΈΠΊ esptool. И всСгда примСняСтся ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ eboot. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Ρ‚Π°ΠΌ Π½Π΅ выставил Π² Programmer.

Π‘Ρ‚Π°Ρ‚ΡŒΡ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»Π°ΡΡŒ вСсьма увСсистая, Π½ΠΎ я полагаю, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° даст ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΆΠΈΠ²ΠΎΡ‚Ρ€Π΅ΠΏΠ΅Ρ‰ΡƒΡ‰ΠΈΠ΅ вопросы. ΠŸΠΎΠ΄Π°Π²Π»ΡΡŽΡ‰Π΅Π΅ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΠ»ΠΎΡΡŒ ΠΈΡΠΊΠ°Ρ‚ΡŒ ΠΏΠΎ ΠΊΡ€ΡƒΠΏΠΈΡ†Π°ΠΌ Π² Π‘Π΅Ρ‚ΠΈ. ΠŸΠΎΡ…ΠΎΠΆΠ΅, Ρ‡Ρ‚ΠΎ с Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ возрастаСт ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π΄Π°ΠΆΠ΅ Ρ‚Π°ΠΊΠΎΠ³ΠΎ простого инструмСнта ΠΊΠ°ΠΊ Arduino IDE ΠΈ Π² скором Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ»ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠΉ быстрСС ΠΏΠ»ΡŽΠ½Π΅Ρ‚, Ρ‡Π΅ΠΌ Π½Π°Ρ‡Π½Π΅Ρ‚ Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ с ΠΌΠ΅Π³Π°Ρ‚ΠΎΠ½Π½Π°ΠΌΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ, Ρ‚Π΅Ρ…Π½ΠΈΠΊ, ΠΏΡ€ΠΈΠ΅ΠΌΠΎΠ² ΠΈ способов, Ρ‚Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ Ρ‡Ρ‚ΠΎ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΈΠ· Π½ΠΈΡ… поддСрТиваСтся энтузиастами, Ρ‡Ρ‚ΠΎ Π²Π΅Π΄Π΅Ρ‚ ΠΊ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½Π½ΠΎΠΌΡƒ ΠΏΠΎΡ‡ΠΊΠΎΠ²Π°Π½ΠΈΡŽ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… Ρ‚Π΅Ρ…Π½ΠΈΠΊ, ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊ, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΉ.

Однако, Ρ…ΠΎΡ‡Ρƒ Π½Π°Π΄Π΅Ρ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ Π°Π²Ρ‚ΠΎΡ€Ρ‹ Arduino IDE всС ΠΆΠ΅ смогут ΡƒΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ своС Ρ‚Π²ΠΎΡ€Π΅Π½ΠΈΠ΅ Π² ΠΏΡ€ΠΈΠ»ΠΈΡ‡Π½Ρ‹Ρ… Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΈ ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ всС Ρ‚Π°ΠΊΠΈΠΌ ΠΆΠ΅ Π»Π΅Π³ΠΊΠΈΠΌ Π² освоСнии инструмСнтом. Π—Π°ΠΎΠ΄Π½ΠΎ Ρ…ΠΎΡ‡Ρƒ ΠΈΠΌ Π½Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ своС Ρ‚Π²ΠΎΡ€Π΅Π½ΠΈΠ΅ стоит постоянно ΠΈΠ½Π°Ρ‡Π΅ получаСтся Β«Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ лишь всС, сСгодня ΠΌΠΎΠ³ΡƒΡ‚ Π² Π·Π°Π²Ρ‚Ρ€Π°Β».

Update: Ρ€Π°Π·Π±ΠΈΡ€Π°ΡΡΡŒ Π³Π»ΡƒΠ±ΠΆΠ΅ с Ρ‚Π΅ΠΌ ΠΊΠ°ΠΊ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ свои собствСнныС ΠΏΠ»Π°Ρ‚Ρ‹ ΠΈΠ»ΠΈ ΠΆΠ΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ ΠΏΠ»Π°Ρ‚Ρ‹ ΠΊ Arduino IDE, наткнулся Π½Π° ΠΈΡΡ‡Π΅Ρ€ΠΏΡ‹Π²Π°ΡŽΡ‰ΡƒΡŽ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ ΠΏΠΎ этому ΠΏΠΎΠ²ΠΎΠ΄Ρƒ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

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

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