arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°

ΠžΡ‚Π»Π°Π΄ΠΊΠ° Arduino Ρ‡Π΅Ρ€Π΅Π· debugWire (Atmel Studio ΠΈ AVR Dragon)

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Arduino UNO с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ debugWire. Π― Ρ‡Π°ΡΡ‚Π΅Π½ΡŒΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ эту ΠΏΠ»Π°Ρ‚ΠΊΡƒ ΠΈΠ»ΠΈ Nano для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² Atmel Studio (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Arduino IDE Ρƒ мСня Ρ€ΡƒΠΊΠ° Π½Π΅ поднимаСтся). И Ρ‚Π°ΠΊ Π½Π°Ρ‡Π½Π΅ΠΌ.

Π§Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ debugWire?

ΠŸΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΏΠΎΡˆΠ°Π³ΠΎΠ²ΡƒΡŽ ΠΎΡ‚Π»Π°Π΄ΠΊΡƒ ΠΊΠΎΠ΄Π°, ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ‚ΠΎΡ‡ΠΊΠΈ останова ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ рСгистры ΠΈ значСния Π½Π° ΠΏΠΎΡ€Ρ‚Π°Ρ… Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π° ΠΈ Ρ‚.ΠΏ.

Π§Ρ‚ΠΎ для этого Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ?

β€” Arduino Uno
β€” Atmel Studio 6
β€” AVR Dragon ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€-ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊ

ΠŸΠΎΠ΄Π³ΠΎΡ‚Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ ΠΆΠ΅Π»Π΅Π·ΠΎ

Π’ Π΄Π°Ρ‚Π°ΡˆΠΈΡ‚Π΅ Π½Π° Atmega328 говорится:

Β«ΠšΠΎΠ½Π΄Π΅Π½ΡΠ°Ρ‚ΠΎΡ€Ρ‹, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Π΅ ΠΊ ΠΏΠΈΠ½Ρƒ RESET, Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ ΠΏΡ€ΠΈ использовании debugWire. ВсС внСшниС источники сброса Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹Β»

Если ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ схСму Arduino Uno, ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΊ RESET ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ кондСнсатор 100Π½Π€. Π’ старых вСрсиях Arduino Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π±Ρ‹Π»ΠΎ ΡΠ½ΡΡ‚ΡŒ этот кондСнсатор для ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ RESET. На Π½ΠΎΠ²Ρ‹Ρ… ΠΏΠ»Π°Ρ‚Π°Ρ… Π΅ΡΡ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ ΠΏΠ΅Ρ€Π΅ΠΌΡ‹Ρ‡ΠΊΠ°, которая ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π·Ρ€Π΅Π·Π°Π½Π° ΠΈ запаяна вновь, Ссли потрСбуСтся.

arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. 18d0c8. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π° Ρ„ΠΎΡ‚ΠΎ. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°-18d0c8. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° 18d0c8. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Arduino UNO с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ debugWire. Π― Ρ‡Π°ΡΡ‚Π΅Π½ΡŒΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ эту ΠΏΠ»Π°Ρ‚ΠΊΡƒ ΠΈΠ»ΠΈ Nano для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² Atmel Studio (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Arduino IDE Ρƒ мСня Ρ€ΡƒΠΊΠ° Π½Π΅ поднимаСтся). И Ρ‚Π°ΠΊ Π½Π°Ρ‡Π½Π΅ΠΌ.

ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° софта

ΠŸΡ€ΠΎΡΡ‚ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌ ΠΊΠΎΠ΄ Π² Atmel Studio, Π½Π΅Ρ‚ нСобходимости Π·Π°Π»ΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ Ρ‡Π΅Ρ€Π΅Π· AVR DUDE, AVR Dragon сам сдСлаСт это Ρ‡Π΅Ρ€Π΅Π· debugWire.

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ ΠΆΠ΅Π»Π΅Π·ΠΎ

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ ISP ΠΎΡ‚ AVR Dragon ΠΊ ISP Arduino Uno. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ 1 ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΊ PIN1 Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΌ устройствС, Ρ‚.Π΅. MISO ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΊ MISO. AVR Dragon ΠΈ Arduino Π·Π°ΠΏΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ‡Π΅Ρ€Π΅Π· свой USB Ρ€Π°Π·ΡŠΠ΅ΠΌ. Π’ настройках Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ AVR Dragon Π² качСствС ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ°.

arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. 1182ab 1. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π° Ρ„ΠΎΡ‚ΠΎ. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°-1182ab 1. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° 1182ab 1. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Arduino UNO с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ debugWire. Π― Ρ‡Π°ΡΡ‚Π΅Π½ΡŒΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ эту ΠΏΠ»Π°Ρ‚ΠΊΡƒ ΠΈΠ»ΠΈ Nano для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² Atmel Studio (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Arduino IDE Ρƒ мСня Ρ€ΡƒΠΊΠ° Π½Π΅ поднимаСтся). И Ρ‚Π°ΠΊ Π½Π°Ρ‡Π½Π΅ΠΌ.

ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ мСню программирования Tools > Device Programming

arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. b5d429. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π° Ρ„ΠΎΡ‚ΠΎ. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°-b5d429. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° b5d429. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Arduino UNO с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ debugWire. Π― Ρ‡Π°ΡΡ‚Π΅Π½ΡŒΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ эту ΠΏΠ»Π°Ρ‚ΠΊΡƒ ΠΈΠ»ΠΈ Nano для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² Atmel Studio (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Arduino IDE Ρƒ мСня Ρ€ΡƒΠΊΠ° Π½Π΅ поднимаСтся). И Ρ‚Π°ΠΊ Π½Π°Ρ‡Π½Π΅ΠΌ.

Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ «шьСм» Ρ„ΡŒΡŽΠ·Ρ‹

БобствСнно устанавливаСм Ρ„ΡŒΡŽΠ·-Π±ΠΈΡ‚ DWEN. Π’ Π΄Π°Ρ‚Π°ΡˆΠΈΡ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅ сказано Ρ‡Ρ‚ΠΎ LOCK Π±ΠΈΡ‚Ρ‹ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½Ρ‹.

arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. 6d95d3. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π° Ρ„ΠΎΡ‚ΠΎ. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°-6d95d3. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° 6d95d3. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Arduino UNO с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ debugWire. Π― Ρ‡Π°ΡΡ‚Π΅Π½ΡŒΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ эту ΠΏΠ»Π°Ρ‚ΠΊΡƒ ΠΈΠ»ΠΈ Nano для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² Atmel Studio (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Arduino IDE Ρƒ мСня Ρ€ΡƒΠΊΠ° Π½Π΅ поднимаСтся). И Ρ‚Π°ΠΊ Π½Π°Ρ‡Π½Π΅ΠΌ.

ЗапускаСм debugWire

1. ПослС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΡˆΠΈΠ»ΠΈ Ρ„ΡŒΡŽΠ·Ρ‹ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ Arduino Uno.
2. УстанавливаСм debugWire ΠΊΠ°ΠΊ интСрфСйс для программирования ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ

arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. c171c6. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π° Ρ„ΠΎΡ‚ΠΎ. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°-c171c6. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° c171c6. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Arduino UNO с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ debugWire. Π― Ρ‡Π°ΡΡ‚Π΅Π½ΡŒΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ эту ΠΏΠ»Π°Ρ‚ΠΊΡƒ ΠΈΠ»ΠΈ Nano для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² Atmel Studio (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Arduino IDE Ρƒ мСня Ρ€ΡƒΠΊΠ° Π½Π΅ поднимаСтся). И Ρ‚Π°ΠΊ Π½Π°Ρ‡Π½Π΅ΠΌ.

3. Π–ΠΌΠ΅ΠΌ Β«Start Debugging and BreakΒ» ΠΈΠ»ΠΈ Alt+F5. МоТно просто Π½Π°ΠΆΠ°Ρ‚ΡŒ F5, Π° ΡƒΠΆΠ΅ ΠΏΠΎΡ‚ΠΎΠΌ Ρ‚ΠΎΡ‡ΠΊΠΈ останова Ρ€Π°ΡΡΡ‚Π°Π²ΠΈΡ‚ΡŒ. ΠžΡ‚Π»Π°Π΄ΠΊΠ° запускаСт ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ Ρ‚ΠΎΠΆΠ΅.
4. ΠžΡ‚Π»Π°ΠΆΠΈΠ²Π°Π΅ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, устанавливаСм Π³Π΄Π΅ Π½Π°Π΄ΠΎ Ρ‚ΠΎΡ‡ΠΊΠΈ останова, наблюдаСм Π·Π° рСгистрами ΠΈ ΠΏΠΎΡ€Ρ‚Π°ΠΌΠΈ Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π°.
5. ΠžΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ ΠΎΡ‚Π»Π°Π΄ΠΊΡƒ Ctrl+Shift+F5, измСняСм ΠΊΠΎΠ΄ ΠΈ возвращаСмся ΠΊ ΠΏΡƒΠ½ΠΊΡ‚Ρƒ 3.
6. Π–ΠΌΠ΅ΠΌ мСню Β«Debug > Disable debugWIREΒ» Π­Ρ‚ΠΎ мСню доступно Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²ΠΎ врСмя ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ, Ссли Ρ‡Ρ‚ΠΎ ΠΆΠΌΠ΅ΠΌ снова F5. ПослС это DWEN сбрасываСтся ΠΈ ΠΌΠΎΠΆΠ½ΠΎ снова ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ISP.
Π’ΠΎΡ‚ ΠΈ всС.

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

ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ ΠΏΠΎΡ€Ρ‚Π°, ΠΎΡ‚Π»Π°Π΄ΠΊΠ°

arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. serial. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π° Ρ„ΠΎΡ‚ΠΎ. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°-serial. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° serial. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Arduino UNO с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ debugWire. Π― Ρ‡Π°ΡΡ‚Π΅Π½ΡŒΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ эту ΠΏΠ»Π°Ρ‚ΠΊΡƒ ΠΈΠ»ΠΈ Nano для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² Atmel Studio (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Arduino IDE Ρƒ мСня Ρ€ΡƒΠΊΠ° Π½Π΅ поднимаСтся). И Ρ‚Π°ΠΊ Π½Π°Ρ‡Π½Π΅ΠΌ.

Как ΠΌΡ‹ с Π²Π°ΠΌΠΈ Π·Π½Π°Π΅ΠΌ ΠΈΠ· ΡƒΡ€ΠΎΠΊΠ° β€œΠž ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅β€œ, Π½Π° ΠΏΠ»Π°Ρ‚Π°Ρ… Ардуино стоит USB-TTL ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π΅Ρ€, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρƒ Π² тСкстовом Ρ€Π΅ΠΆΠΈΠΌΠ΅ β€œΠΊΠΎΠ½ΡΠΎΠ»ΠΈβ€ ΠΎΠ±Ρ‰Π°Ρ‚ΡŒΡΡ с ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠΌ ΠΏΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΌΡƒ интСрфСйсу, Serial. На ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ создаётся Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ COM ΠΏΠΎΡ€Ρ‚, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ-Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠ² ΠΏΠΎΡ€Ρ‚Π°, ΠΈ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ-ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ тСкстовыС Π΄Π°Π½Π½Ρ‹Π΅. Π§Π΅Ρ€Π΅Π· этот ΠΆΠ΅ ΠΏΠΎΡ€Ρ‚ загруТаСтся ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ°, Ρ‚.ΠΊ. ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Serial являСтся встроСнной Π² ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ Π½Π° β€œΠΆΠ΅Π»Π΅Π·Π½ΠΎΠΌβ€ ΡƒΡ€ΠΎΠ²Π½Π΅, ΠΈ USB-TTL ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΊ этим Π²Ρ‹Π²ΠΎΠ΄Π°ΠΌ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°. На ΠΏΠ»Π°Ρ‚Π΅ Arduino Nano это кстати ΠΏΠΈΠ½Ρ‹ D0 ΠΈ D1.

К этим ΠΆΠ΅ ΠΏΠΈΠ½Π°ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚ β€œΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ΠΎΠ²β€, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π½Π° Ρ‡ΠΈΠΏΠ°Ρ… CP2102 ΠΈΠ»ΠΈ Ρ‚ΠΎΠΌ ΠΆΠ΅ CH340 с Ρ†Π΅Π»ΡŒΡŽ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΈΠ»ΠΈ просто общСния с ΠΏΠ»Π°Ρ‚ΠΎΠΉ. Π’ самой Arduino IDE Ρ‚ΠΎΠΆΠ΅ Π΅ΡΡ‚ΡŒ встроСнная β€œΠΊΠΎΠ½ΡΠΎΠ»ΡŒβ€ – ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ ΠΏΠΎΡ€Ρ‚Π°, ΠΊΠ½ΠΎΠΏΠΊΠ° с ΠΈΠΊΠΎΠ½ΠΊΠΎΠΉ Π»ΡƒΠΏΡ‹ Π² ΠΏΡ€Π°Π²ΠΎΠΌ Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ ΡƒΠ³Π»Ρƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. НаТав Π½Π° эту ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΌΡ‹ ΠΎΡ‚ΠΊΡ€ΠΎΠ΅ΠΌ сам ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ ΠΏΠΎΡ€Ρ‚Π°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄ΡƒΡ‚ настройки: arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. serial 1. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π° Ρ„ΠΎΡ‚ΠΎ. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°-serial 1. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° serial 1. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Arduino UNO с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ debugWire. Π― Ρ‡Π°ΡΡ‚Π΅Π½ΡŒΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ эту ΠΏΠ»Π°Ρ‚ΠΊΡƒ ΠΈΠ»ΠΈ Nano для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² Atmel Studio (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Arduino IDE Ρƒ мСня Ρ€ΡƒΠΊΠ° Π½Π΅ поднимаСтся). И Ρ‚Π°ΠΊ Π½Π°Ρ‡Π½Π΅ΠΌ.

Если с ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΎΠΉ, Π°Π²Ρ‚ΠΎΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠΎΠΉ, ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΊΠ°ΠΌΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ β€œΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ вывод” всё понятно, Ρ‚ΠΎ ΠΊΠΎΠ½Π΅Ρ† строки ΠΈ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΌΡ‹ рассмотрим ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅:

ΠžΠ±ΡŠΠ΅ΠΊΡ‚ Serial

Π—Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ связь ΠΏΠΎ Serial Π½Π° скорости speed (baud rate, Π±ΠΈΡ‚ Π² сСкунду). Π‘ΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π»ΡŽΠ±ΡƒΡŽ, Π½ΠΎ Π΅ΡΡ‚ΡŒ нСсколько β€œΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹Ρ…β€. Бписок скоростСй для ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π° ΠΏΠΎΡ€Ρ‚Π° Arduino IDE:

ΠžΡ‚ΠΏΡ€Π°Π²Π»ΡΠ΅Ρ‚ Π² ΠΏΠΎΡ€Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ val – число ΠΈΠ»ΠΈ строку. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ write Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ ΠΈΠΌΠ΅Π½Π½ΠΎ символы, Ρ‚.Π΅. ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΠ² 88 Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ 88: Serial.print(88); Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ 88. Π’Π°ΠΊΠΆΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ print/println ΠΈΠΌΠ΅Π΅Ρ‚ нСсколько настроСк для Ρ€Π°Π·Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ Π΅Π³ΠΎ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΌ инструмСнтом ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ:

format позволяСт Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄ Π΄Π°Π½Π½Ρ‹Ρ…: BIN, OCT, DEC, HEX Π²Ρ‹Π²Π΅Π΄ΡƒΡ‚ число Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ систСмС исчислСния, Π° Ρ†ΠΈΡ„Ρ€Π° послС Π²Ρ‹Π²ΠΎΠ΄Π° float позволяСт Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΠΎΠ΅ количСство Π·Π½Π°ΠΊΠΎΠ² послС Ρ‚ΠΎΡ‡ΠΊΠΈ

Π§ΠΈΡ‚Π°Π΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Π±ΡƒΡ„Π΅Ρ€Π° ΠΈ ΠΈΡ‰Π΅Ρ‚ Π½Π°Π±ΠΎΡ€ символов target (Ρ‚ΠΈΠΏ char), ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π΄Π»ΠΈΠ½Ρƒ length. Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ true, Ссли Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ символы. ΠžΠΆΠΈΠ΄Π°Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ ΠΏΠΎ Ρ‚Π°ΠΉΠΌΠ°ΡƒΡ‚Ρƒ

ΠŸΠ»ΠΎΡ‚Ρ‚Π΅Ρ€

Помимо ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡ€Ρ‚Π°, Π² Arduino IDE Π΅ΡΡ‚ΡŒ ΠΏΠ»ΠΎΡ‚Ρ‚Π΅Ρ€ – ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚Π΅Π»ΡŒ Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ² Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΏΠΎ Π΄Π°Π½Π½Ρ‹ΠΌ ΠΈΠ· ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡ€Ρ‚Π°. Достаточно ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Serial.println(Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅) ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΏΠ»ΠΎΡ‚Ρ‚Π΅Ρ€ ΠΏΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΌΡƒ соСдинСнию, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ построим Π³Ρ€Π°Ρ„ΠΈΠΊ значСния с Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΈΠ½Π° A0:

arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. analogplot. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π° Ρ„ΠΎΡ‚ΠΎ. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°-analogplot. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° analogplot. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Arduino UNO с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ debugWire. Π― Ρ‡Π°ΡΡ‚Π΅Π½ΡŒΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ эту ΠΏΠ»Π°Ρ‚ΠΊΡƒ ΠΈΠ»ΠΈ Nano для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² Atmel Studio (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Arduino IDE Ρƒ мСня Ρ€ΡƒΠΊΠ° Π½Π΅ поднимаСтся). И Ρ‚Π°ΠΊ Π½Π°Ρ‡Π½Π΅ΠΌ. ΠŸΠ»ΠΎΡ‚Ρ‚Π΅Ρ€ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ нСсколько Π»ΠΈΠ½ΠΈΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ² ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ, для ΠΈΡ… отобраТСния Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ±Π»ΡŽΠ΄Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ…: Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅1 ΠΏΡ€ΠΎΠ±Π΅Π»_ΠΈΠ»ΠΈ_запятая Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅2 ΠΏΡ€ΠΎΠ±Π΅Π»_ΠΈΠ»ΠΈ_запятая Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅3 ΠΏΡ€ΠΎΠ±Π΅Π»_ΠΈΠ»ΠΈ_запятая Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅N пСрСнос_строки, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ значСния выводятся Π² ΠΎΠ΄Π½Ρƒ строку, ΠΎΠ΄Π½ΠΎ Π·Π° Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΏΠΎ порядку, Ρ€Π°Π·Π΄Π΅Π»ΡΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠΌ ΠΈΠ»ΠΈ запятой, ΠΈ Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ пСрСнос строки. Π”Π°Π²Π°ΠΉΡ‚Π΅ Π²Ρ‹Π²Π΅Π΄Π΅ΠΌ нСсколько случайных Π²Π΅Π»ΠΈΡ‡ΠΈΠ½:

Π’Ρ‹Π²ΠΎΠ΄ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ происходит ΠΊΠ°ΠΆΠ΄Ρ‹Π΅ 10 миллисСкунд, Π° ΠΊΠ°ΠΆΠ΄Ρ‹Π΅ 300 миллисСкунд значСния ΠΎΠ±Π½ΠΎΠ²Π»ΡΡŽΡ‚ΡΡ. ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Π²ΠΎΡ‚ Ρ‚Π°ΠΊΠΎΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊ: arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. rnd. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π° Ρ„ΠΎΡ‚ΠΎ. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°-rnd. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° rnd. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Arduino UNO с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ debugWire. Π― Ρ‡Π°ΡΡ‚Π΅Π½ΡŒΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ эту ΠΏΠ»Π°Ρ‚ΠΊΡƒ ΠΈΠ»ΠΈ Nano для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² Atmel Studio (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Arduino IDE Ρƒ мСня Ρ€ΡƒΠΊΠ° Π½Π΅ поднимаСтся). И Ρ‚Π°ΠΊ Π½Π°Ρ‡Π½Π΅ΠΌ. Π’ Arduino IDE с вСрсии 1.8.10 Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Ρ‚ΡŒ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ, для этого ΠΏΠ΅Ρ€Π΅Π΄ Π²Ρ‹Π²ΠΎΠ΄ΠΎΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ названия Π² Π²ΠΈΠ΄Π΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ 1, Π½Π°Π·Π²Π°Π½ΠΈΠ΅ 2, Π½Π°Π·Π²Π°Π½ΠΈΠ΅ n с пСрСносом строки, ΠΈ дальшС просто Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅: arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. blank. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π° Ρ„ΠΎΡ‚ΠΎ. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°-blank. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° blank. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Arduino UNO с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ debugWire. Π― Ρ‡Π°ΡΡ‚Π΅Π½ΡŒΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ эту ΠΏΠ»Π°Ρ‚ΠΊΡƒ ΠΈΠ»ΠΈ Nano для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² Atmel Studio (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Arduino IDE Ρƒ мСня Ρ€ΡƒΠΊΠ° Π½Π΅ поднимаСтся). И Ρ‚Π°ΠΊ Π½Π°Ρ‡Π½Π΅ΠΌ.

ИспользованиС пинов

Как я писал Π²Ρ‹ΡˆΠ΅, Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΉ Serial ΠΈΠΌΠ΅Π΅Ρ‚ Π²Ρ‹Π²ΠΎΠ΄Ρ‹ Π½Π° Π½ΠΎΠ³ΠΈ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°, для Nano/Uno/Mini это Π²Ρ‹Π²ΠΎΠ΄Ρ‹ D0 ΠΈ D1. МоТно Π»ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с этими ΠΏΠΈΠ½Π°ΠΌΠΈ, ΠΊΠ°ΠΊ с ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌΠΈ Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹ΠΌΠΈ ΠΏΠΈΠ½Π°ΠΌΠΈ? ΠŸΡ€ΠΈ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠΌ Serial – ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΡ€ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠΌ – Π½Π΅Ρ‚. ПослС Π²Ρ‹Π·ΠΎΠ²Π° Serial.begin() Π½ΠΎΠ³ΠΈ ΠΏΠ΅Ρ€Π΅ΡΡ‚Π°ΡŽΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π΅ ΠΏΠΈΠ½Ρ‹ Π² Ρ€ΡƒΡ‡Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅, Π½ΠΎ послС Π²Ρ‹Π·ΠΎΠ²Π° Serial.end() ΠΌΠΎΠΆΠ½ΠΎ снова ΠΈΠΌΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ!

ΠžΡ‚ΠΏΡ€Π°Π²ΠΊΠ° ΠΈ парсинг

Рассмотрим самый классичСский ΠΏΡ€ΠΈΠΌΠ΅Ρ€ для всСх языков программирования: Hello World! arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. blank. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π° Ρ„ΠΎΡ‚ΠΎ. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°-blank. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° blank. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Arduino UNO с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ debugWire. Π― Ρ‡Π°ΡΡ‚Π΅Π½ΡŒΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ эту ΠΏΠ»Π°Ρ‚ΠΊΡƒ ΠΈΠ»ΠΈ Nano для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² Atmel Studio (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Arduino IDE Ρƒ мСня Ρ€ΡƒΠΊΠ° Π½Π΅ поднимаСтся). И Ρ‚Π°ΠΊ Π½Π°Ρ‡Π½Π΅ΠΌ. ΠžΡ‚ΠΏΡ€Π°Π²ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΏΠΎΡ€Ρ‚ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ трудностСй ΠΈ вопросов, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ всё понятно/ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, Π΄Π° ΠΈ Ρ‡ΡƒΡ‚ΡŒ Π²Ρ‹ΡˆΠ΅ Π² описании ΠΌΠ΅Ρ‚ΠΎΠ΄Π° print ΠΌΡ‹ рассмотрСли всС Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Π²Ρ‹Π²ΠΎΠ΄Π°. ΠžΡ‚ΠΏΡ€Π°Π²ΠΊΠ° Π² ΠΏΠΎΡ€Ρ‚ позволяСт ΡƒΠ·Π½Π°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π² Π½ΡƒΠΆΠ½ΠΎΠΌ мСстС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, этот процСсс называСтся ΠΎΡ‚Π»Π°Π΄ΠΊΠ°. Когда ΠΊΠΎΠ΄ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π΅ Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ Π½ΡƒΠΆΠ½ΠΎ, Π½Π°Ρ‡ΠΈΠ½Π°Π΅ΠΌ ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ, Π³Π΄Π΅ ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΊΠ°ΠΊΠΈΠ΅ значСния ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‚. Или Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ тСкст ΠΈΠ· Ρ€Π°Π·Π½Ρ‹Ρ… мСст ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°Π±Π»ΡŽΠ΄Π°Ρ‚ΡŒ Π·Π° ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ (порядком) Π΅Ρ‘ Ρ€Π°Π±ΠΎΡ‚Ρ‹. Π”Π°Π²Π°ΠΉΡ‚Π΅ вспомним ΡƒΡ€ΠΎΠΊ Ρ†ΠΈΠΊΠ»Ρ‹ ΠΈ массивы ΠΈ Π²Ρ‹Π²Π΅Π΄Π΅ΠΌ Π² ΠΏΠΎΡ€Ρ‚ массив:

Π’Ρ‹Π²ΠΎΠ΄: 0 50 68 85 15 214 63 254 – элСмСнты массива, Ρ€Π°Π·Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π΅Π»Π°ΠΌΠΈ! ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π² ΠΏΠΎΡ€Ρ‚. Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ read() Ρ‡ΠΈΡ‚Π°Π΅Ρ‚ ΠΎΠ΄ΠΈΠ½ символ, Π΄Π°ΠΆΠ΅ Ссли Π²Ρ‹ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Π΄Π»ΠΈΠ½Π½ΠΎΠ΅ число – ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ Π΅Π³ΠΎ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΉ Ρ†ΠΈΡ„Ρ€Π΅, ΠΈ ΡΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ число ΠΈΠ· Ρ†ΠΈΡ„Ρ€ придётся Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° усугубляСтся Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ read() Ρ‡ΠΈΡ‚Π°Π΅Ρ‚ ΠΈΠΌΠ΅Π½Π½ΠΎ символ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΊΠΎΠ΄ символа Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ASCII. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. ascii. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π° Ρ„ΠΎΡ‚ΠΎ. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°-ascii. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ascii. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Arduino UNO с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ debugWire. Π― Ρ‡Π°ΡΡ‚Π΅Π½ΡŒΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ эту ΠΏΠ»Π°Ρ‚ΠΊΡƒ ΠΈΠ»ΠΈ Nano для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² Atmel Studio (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Arduino IDE Ρƒ мСня Ρ€ΡƒΠΊΠ° Π½Π΅ поднимаСтся). И Ρ‚Π°ΠΊ Π½Π°Ρ‡Π½Π΅ΠΌ. ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΠΌ Π²ΠΎΡ‚ Ρ‚Π°ΠΊΠΎΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π² ΠΏΠΎΡ€Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ принятыС Π² Π½Π΅Π³ΠΎ Π΄Π°Π½Π½Ρ‹Π΅ (Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠ΅ эхо):

Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΆΠ΅ ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ†ΠΈΡ„Ρ€Ρƒ? Π•ΡΡ‚ΡŒ Ρ…ΠΈΡ‚Ρ€ΠΎΡΡ‚ΡŒ – Π²Ρ‹Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈΠ· ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° символа ΠΊΠΎΠ΄ Ρ†ΠΈΡ„Ρ€Ρ‹ 0, Π»ΠΈΠ±ΠΎ сам 0 Π² Π²ΠΈΠ΄Π΅ символа: β€˜0’

Π’Π°ΠΊΠΆΠ΅ для принятия ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹Ρ… чисСл Ρƒ нас Π΅ΡΡ‚ΡŒ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ – parseInt() / parseFloat() – для цСлочислСнных ΠΈ Ρ€Π°Ρ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… чисСл соотвСтствСнно. ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΏΡ€ΠΈΡ‘ΠΌΠ° ΠΈ Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… называСтся парсинг (parsing). Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΡ€ΠΈΠΌΠ΅ΠΌ Π² ΠΏΠΎΡ€Ρ‚ число 1234, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ парсинга.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ послС ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ Ρ†ΠΈΡ„Ρ€Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π±ΡƒΠ΄Π΅Ρ‚ ΠΆΠ΄Π°Ρ‚ΡŒ всСго 50 мс, ΠΈ сразу ΠΆΠ΅ Π²Π°ΠΌ ΠΎΡ‚Π²Π΅Ρ‚ΠΈΡ‚. ΠžΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ ΠΈ парсинга, Π² Ρ‚ΠΎΠΌ числС ΠΎΠ±ΠΌΠ΅Π½Π° Ρ€Π°Π·Π½ΠΎΡ‚ΠΈΠΏΠ½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ Ардуинами ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΏΠ»Π°Ρ‚Π°ΠΌΠΈ смотри Π² ΡƒΡ€ΠΎΠΊΠ΅ ΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ ΠΏΠΎ Serial.

Π£ΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ символы

Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ символы, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄. Π˜Ρ… ΠΎΠΊΠΎΠ»ΠΎ дСсятка, Π½ΠΎ Π²ΠΎΡ‚ самыС ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ ΠΈΠ· Π½ΠΈΡ…

Π’Π°ΠΊΠΆΠ΅ Ссли для Π²Ρ‹Π²ΠΎΠ΄Π° Π²Ρ‹ Π·Π°Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½Π°Ρ€Π½Ρ‹Π΅ β€˜ ΠΈΠ»ΠΈ Π΄Π²ΠΎΠΉΠ½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ, β€œ ΠΈΠ»ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ слэш \ – Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΈΡ… ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ спСцсимвола, ΠΈΠ½Π°Ρ‡Π΅ ваш Π²Ρ‹Π²ΠΎΠ΄ β€œΠΏΠΎΠ»ΠΎΠΌΠ°Π΅Ρ‚ΡΡβ€, я Π΄ΡƒΠΌΠ°ΡŽ, Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±ΡŠΡΡΠ½ΡΡ‚ΡŒ, ΠΏΠΎΡ‡Π΅ΠΌΡƒ:

Как ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ? ΠŸΡ€ΠΎΡΡ‚ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π² Π²Ρ‹Π²ΠΎΠ΄. НапримСр комбинация \r\n ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Ρ‘Ρ‚ строку ΠΈ Π²Π΅Ρ€Π½Ρ‘Ρ‚ курсор Π² Π»Π΅Π²ΠΎΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅:

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ скопируСм ΠΈ вставим Π² excel arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. tapulation. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π° Ρ„ΠΎΡ‚ΠΎ. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°-tapulation. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° tapulation. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Arduino UNO с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ debugWire. Π― Ρ‡Π°ΡΡ‚Π΅Π½ΡŒΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ эту ΠΏΠ»Π°Ρ‚ΠΊΡƒ ΠΈΠ»ΠΈ Nano для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² Atmel Studio (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Arduino IDE Ρƒ мСня Ρ€ΡƒΠΊΠ° Π½Π΅ поднимаСтся). И Ρ‚Π°ΠΊ Π½Π°Ρ‡Π½Π΅ΠΌ. Π£Π΄ΠΎΠ±Π½ΠΎ!

Π’ΠΈΠ΄Π΅ΠΎ

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

Arduino.ru

Π•ΡΡ‚ΡŒ Π»ΠΈ срСдства ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π½Π° Ардуино?

Π”ΠΎΠ±Ρ€ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ суток!

ΠŸΠΎΠ΄ΡΠΊΠ°ΠΆΠΈΡ‚Π΅ ΠΊΠ°ΠΊ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π½Π° языкС Ардуино?

НС Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ простая функция: Π² ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Ρ‚ΠΈΠΏΠ° Π±Π°ΠΉΡ‚ lamps ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π±ΠΈΡ‚ ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π° свСтодиод, глобальная пСрСмСнная Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ Ρ‚ΠΈΠΏΠ° current_state_lights Ρ…Ρ€Π°Π½ΠΈΡ‚ Π² сСбС Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ состояниС Π²ΠΊΠ». ΠΈ Π²Ρ‹ΠΊΠ». свСтодиодов.

Другая функция Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π»Π°ΠΌΠΏ с Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΆΠ΅ ΠΏΠΎΠ±ΠΈΡ‚ΠΎΠ²Ρ‹ΠΌΠΈ опСрациями Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚.

ΠœΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π΅ΡΡ‚ΡŒ сторонниС ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠΈ?

Или Serial.println(); на каТдом шагС.

Π‘ ΠŸΡ€ΠΎΡ‚Π΅ΡƒΡΠΎΠΌ Π½Π°Π΄ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎ Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ, Π²ΠΎΠ·ΡŒΠΌΡƒ Π½Π° Π·Π°ΠΌΠ΅Ρ‚ΠΊΡƒ, спасибо.

Π’ΠΎΠ»ΠΊΠΎ Π½Π΅ понятно, ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΆΠ΅ функция Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚? Π’Π΅Π΄ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ if Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎ Π»ΡŽΠ±ΠΎΠΌΡƒ ΡΠΎΠ²Π΅Ρ€ΡˆΠΈΡ‚ΡŒ ΠΎΠ΄Π½ΠΎ ΠΈΠ· Π΄Π²ΡƒΡ… дСйствий, Π½ΠΎ Π½Π΅ ΡΠΎΠ²Π΅Ρ€ΡˆΠ°Π΅Ρ‚.

А послС ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Π² ΠΊΠΎΠ΄Π΅ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Serial.println() ΠΈ delay(2000) Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΠΏΠ΅Π²Π°Ρ‚ΡŒ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ.

Π‘ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ ΠΏΠΎΡˆΠ°Π³ΠΎΠ²Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ ΠΈ Π½Π°Π΄ΠΎ Π»ΠΈ Π² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅ Π·Π°ΠΏΡ€Π΅Ρ‰Π°Ρ‚ΡŒ прСрывания Π½Π° врСмя Π΅Π³ΠΎ выполнСния?

Π”ΠΎΠ±Ρ€ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ суток!

ΠŸΠΎΠ΄ΡΠΊΠ°ΠΆΠΈΡ‚Π΅ ΠΊΠ°ΠΊ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π½Π° языкС Ардуино?

НС Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ простая функция: Π² ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Ρ‚ΠΈΠΏΠ° Π±Π°ΠΉΡ‚ lamps ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π±ΠΈΡ‚ ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π° свСтодиод, глобальная пСрСмСнная Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ Ρ‚ΠΈΠΏΠ° current_state_lights Ρ…Ρ€Π°Π½ΠΈΡ‚ Π² сСбС Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ состояниС Π²ΠΊΠ». ΠΈ Π²Ρ‹ΠΊΠ». свСтодиодов.

А ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΈ «Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚» ΠΈ ΠΊΠ°ΠΊ ΠΈΠΌΠ΅Π½Π½ΠΎ вызываСтся эта функция?

arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. picture 3623. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π° Ρ„ΠΎΡ‚ΠΎ. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°-picture 3623. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° picture 3623. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Arduino UNO с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ debugWire. Π― Ρ‡Π°ΡΡ‚Π΅Π½ΡŒΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ эту ΠΏΠ»Π°Ρ‚ΠΊΡƒ ΠΈΠ»ΠΈ Nano для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² Atmel Studio (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Arduino IDE Ρƒ мСня Ρ€ΡƒΠΊΠ° Π½Π΅ поднимаСтся). И Ρ‚Π°ΠΊ Π½Π°Ρ‡Π½Π΅ΠΌ.

ΠœΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊ (ΠΏΡ€Π°Π²Π΄Π° Π½Π΅ понятно, ΠΊΠ°ΠΊΠΎΠΉ Ρƒ Вас Ардуино):

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Π²ΠΈΠ΄Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. Π― Ρ€Π°Π½ΡŒΡˆΠ΅ пользовался Π½Π° своСм Π›Π΅ΠΎΠ½Π°Ρ€Π΄ΠΎ.

kisoft: Ардуино Π£Π½ΠΎ

Бпасибо большоС Π·Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ.

if Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΊΠ°ΠΊ Π½Π°Π΄ΠΎ, ΠΏΠ΅Ρ€Π΅Π΄ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Π·Π°Π±Ρ‹Π» ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² ΠΏΠΎΡ€Ρ‚ πŸ™‚

Π― ΠΏΡ€ΠΎΠ΄Π΅Π»Π°Π» всС Π² точности:

Kisoft: ΠœΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊ (ΠΏΡ€Π°Π²Π΄Π° Π½Π΅ понятно, ΠΊΠ°ΠΊΠΎΠΉ Ρƒ Вас Ардуино):

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Π²ΠΈΠ΄Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. Π― Ρ€Π°Π½ΡŒΡˆΠ΅ пользовался Π½Π° своСм Π›Π΅ΠΎΠ½Π°Ρ€Π΄ΠΎ.

Π½ΠΎ, ΠΊ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π² ΠΎΠΊΠ½Π΅ Serial Monitor выскочила какая-Ρ‚ΠΎ Π°Π±Ρ€Π°-ΠΊΠ°Π΄Π°Π±Ρ€Π° ΠΈΠ· нСпонятных символов. ΠŸΠΎΠ΄ΡΠΊΠ°ΠΆΠΈΡ‚Π΅, ΠΊΠ°ΠΊ с этим Π±ΠΎΡ€ΠΎΡ‚ΡŒΡΡ? УмСня Ардуино МСга 2560.

Π•ΡΡ‚ΡŒ Π΅Ρ‰Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚ Π² visualmicro.com, Π½ΠΎ стоит Π΄Π΅Π½Π΅Π³ (сама срСда бСсплатна, Π΄Π΅Π½Π΅Π³ стоит ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊ). Π‘Π°ΠΌ Π½Π΅ ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π».

ΠΏΡ€ΠΎ протСус Π²Π°ΠΌ ΡƒΠΆΠ΅ написали, ΠΏΡ€Π°Π²Π΄Π° нСльзя Π½Π°Π·Π²Π°Ρ‚ΡŒ протСус ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠΎΠΌ, это симулятор всСго лишь

ΠΏΡ€Π°Π²Π° всС пСрСчислСнноС ΠΌΠ΅Ρ€ΠΊΠ½Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄ ΠΆΠ΅Π»Π΅Π·Π½Ρ‹ΠΌΠΈ ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ°ΠΌΠΈ ΠΎΡ‚ Π°Ρ‚ΠΌΠ΅Π»Π° ))) Π½ΠΎ ΡƒΠ²Ρ‹ Π°Ρ€Π΄ΡƒΠΈΠ½Π° с Π½ΠΈΠΌΠΈ Π½Π΅ Π΄Ρ€ΡƒΠΆΠΈΡ‚. ОсобСнно прСлСстна ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΏΠΎ JTAG, ΠΊΠ°ΠΊ Ρ€Π°Π· atmega2560 ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ‚Π°ΠΊΡƒΡŽ ΠΎΡ‚Π»Π°Π΄ΠΊΡƒ. Π’ ΠΆΠ΅Π»Π΅Π·Π½ΠΎΠΌ ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Ρ‚ΠΎΡ‡ΠΊΠΈ останова, Π²ΠΈΠ΄Π΅Ρ‚ΡŒ состояниС ΠΏΠΎΡ€Ρ‚ΠΎΠ² (Π½Π΅ симулятор, Π° ΠΆΠ΅Π»Π΅Π·ΠΎ!), Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ значСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, eeprom Π²ΠΎ врСмя ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Π±Π΅Π· ΠΏΠ΅Ρ€Π΅ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΈ Ρ‚.Π΄.

arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. picture 3623. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π° Ρ„ΠΎΡ‚ΠΎ. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°-picture 3623. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° picture 3623. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Arduino UNO с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ debugWire. Π― Ρ‡Π°ΡΡ‚Π΅Π½ΡŒΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ эту ΠΏΠ»Π°Ρ‚ΠΊΡƒ ΠΈΠ»ΠΈ Nano для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² Atmel Studio (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Arduino IDE Ρƒ мСня Ρ€ΡƒΠΊΠ° Π½Π΅ поднимаСтся). И Ρ‚Π°ΠΊ Π½Π°Ρ‡Π½Π΅ΠΌ.

Π― ΠΏΡ€ΠΎΠ΄Π΅Π»Π°Π» всС Π² точности:

Kisoft: ΠœΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊ (ΠΏΡ€Π°Π²Π΄Π° Π½Π΅ понятно, ΠΊΠ°ΠΊΠΎΠΉ Ρƒ Вас Ардуино):

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Π²ΠΈΠ΄Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. Π― Ρ€Π°Π½ΡŒΡˆΠ΅ пользовался Π½Π° своСм Π›Π΅ΠΎΠ½Π°Ρ€Π΄ΠΎ.

Π½ΠΎ, ΠΊ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π² ΠΎΠΊΠ½Π΅ Serial Monitor выскочила какая-Ρ‚ΠΎ Π°Π±Ρ€Π°-ΠΊΠ°Π΄Π°Π±Ρ€Π° ΠΈΠ· нСпонятных символов. ΠŸΠΎΠ΄ΡΠΊΠ°ΠΆΠΈΡ‚Π΅, ΠΊΠ°ΠΊ с этим Π±ΠΎΡ€ΠΎΡ‚ΡŒΡΡ? УмСня Ардуино МСга 2560.

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Π²ΠΈΠ΄Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. Π― Ρ€Π°Π½ΡŒΡˆΠ΅ пользовался Π½Π° своСм Π›Π΅ΠΎΠ½Π°Ρ€Π΄ΠΎ.

Как Ρ€Π°Π· Π²Ρ‡Π΅Ρ€Π° наткнулся Π½Π° Ρ„ΠΈΠ³ΠΎΡ‚Π΅Π½ΡŒ Visual Micro. На Ρ€ΠΎΠ±ΠΎΠΊΡ€Π°Ρ„Ρ‚Π΅ Π±Ρ‹Π» пост ΠΏΡ€ΠΎ Π½Π΅Ρ‘, ΠΏΡ€Π°Π²Π΄Π° ΡΡ‚Π°Ρ€Π΅Π½ΡŒΠΊΠΈΠΉ.

РаньшС эта Π»ΠΈΠ±Π° (ΠΏΠ»Π°Π³ΠΈΠ½?) Ρ†Π΅ΠΏΠ»ΡΠ»Π°ΡΡŒ Π½Π° MS Visual Studio. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΡƒΠΌΠ΅Π΅Ρ‚ Ρ†Π΅ΠΏΠ»ΡΡ‚ΡŒΡΡ Π΅Ρ‰Ρ‘ ΠΈ Π½Π° Π±Π΅ΡΠΏΠ»Π°Ρ‚Π½ΡƒΡŽ срСду Atmel Studio 6.2. (Π² этой срСдС, я Ρ‚Π°ΠΊ понял, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚.Π½.»ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Π°Ρ» Π»ΠΈΠ±Π° ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ Visual Studio).

Π’Π°ΠΊ Π²ΠΎΡ‚, ΠΊΠ°ΠΊ Ρ€Π°Π· ΠΎΠ½ΠΈ ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΊ Ρ€Π°Π· Ρƒ Π½ΠΈΡ… ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Π±Ρ€Ρ‹ΠΊΠΏΠΎΠΈΠ½Ρ‚Ρ‹. ΠžΡ‡Π΅Π½ΡŒ мСня это заинтСрСсовало. Но Π·Π° сСгодняшний Π²Π΅Ρ‡Π΅Ρ€ Π½ΠΈ Ρ„ΠΈΠ³Π° Π½Π΅ разобрался.

ВСроятно, задСйствован ΠΈΠΌΠ΅Π½Π½ΠΎ этот ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ, Ρ‡Ρ‚ΠΎ ΠΈ ΠΏΠΎ ссылкС Ρ‚ΠΎΠ²Π°Ρ€ΠΈΡ‰Π° kisoft.

Π‘ΡƒΡ…ΠΎΠΉ остаток, ΠΌΠ°Π»ΠΎ Ρ‡Π΅Π³ΠΎ я понял, Ρ€Π°Π·Π²Π΅ Ρ‡Ρ‚ΠΎ ΠΎΠ΄Π½ΠΎ: Π•Π‘Π’Π¬ инструмСнты для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Π½Π° АрдуинС! πŸ™‚

Π—Π« сорри, Π΄Π²Π° поста Π½Π°Π·Π°Π΄ эту ΠΏΡ€ΠΎΠ³Ρƒ ΡƒΠΏΠΎΠΌΠΈΠ½Π°ΡŽΡ‚ ΡƒΠΆΠ΅. Ну Π΄Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΊΡ‚ΠΎ поставит, Π΄Π° подскаТСт, ΠΊΠ°ΠΊ эти Π±Ρ€Ρ‹ΠΊΠΏΠΎΠΉΠ½Ρ‚Ρ‹ Π°ΠΊΡ‚ΠΈΠ²ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ πŸ™‚ Π° Ρ‚ΠΎ ΠΏΠΎΠΊΠ° Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ.

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

Debugging with the Arduino IDE 2.0

AUTHOR: Karl SΓΆderby & Ubi De Feo

Overview

A newly introduced, yet less famous feature of Arduino IDE 2.0 is the Debugger.

A debugger is a software tool which is used to test and debug programs, hence the name.

It basically goes through a program in a controlled manner, with the help of a hardware interface which can help navigate through the program’s execution. This can be of aid in better understanding the program as well as helping spot potential flaws and code errors.

You can easily download the editor from the Arduino Software page.

Compatible Boards

The debugger is compatible with all SAMD boards. Boards using the SAMD architecture are the following:

Tutorials for the Atmel-ICE and J-Link debuggers uses the MKR WiFi 1010, but can be easily be applied to the boards listed above.

Requirements

You will also need one of the following hardware setups:

Additional accessories such as soldering iron, connectors, jumper wires and USB cables will also be required, depending on what hardware setup you use.

The Arduino Zero board can be used without any external hardware.

Hardware Setup

Below you will find three different tutorials that will help you set up and test the different hardware setups. We recommend you visit them, follow the instructions and come back here to learn how to use the tool!

Arduino Zero

The Arduino Zero does not require any additional hardware, as it already has a built-in debugger. This makes it a great choice for beginners that wants to learn more about debugging.

J-Link

Segger’s J-Link tool is a great option for advanced debugging. The J-Link tool can be connected to the MKR WiFi 1010 board by soldering, where a more detailed guide can be found in the link below:

Atmel-ICE

Atmel-ICE is another great option to use for debugging, and can also be connected to the MKR WiFi 1010 board through soldering. Learn more about debugging with the Atmel-ICE through the link below:

Getting to Know the Debugger

Once you have your hardware set up, we can continue to explore the Debugger tool in the Arduino IDE 2.0.

The Debugger is a brand new tool integrated in the Arduino IDE 2.0. You can easily access it from the sidebar on the left, grouped with the Board Manager, Library Manager, Search and Sketchbook Explorer.

Mind that doing so will only show you its inteface, but the real magic happens when you click the crossed out bug icon in the buttons menu at the top.

Now, in order to use the debugger, we need specific hardware instruments, the choice of which is very dependent on what kind of board/processor you are using, and you will almost always need an external debugger.

Using the Debugger

In order to use the Debugger, we need to upload a sketch to our board first, making sure that the built program will be optimized for debugging, so let’s check that option right away.

Important: You should connect the Arduino Zero through its programming USB port.

In this example, we are going to choose the basic blink sketch. You can easily access this code through File > Examples > Basics > Blink. Upload the code to your Arduino board. When it is finished, it will let you know in the output panel at the bottom.

Once your program has been uploaded, we can start using the debugger.

Breakpoints

Let’s begin by creating something called a breakpoint. Breakpoints are used to stop the program execution at a specific line (or when a specific condition is verified). We can use multiple of these in a program (the number is variable depending on the processor).

In this example, we are going to set a breakpoint for line 33 and line 36. These are set by clicking to the left of the line numbering in the editor.

We can now go through our code, step by step. The first (automatic) stop will be triggered by the Debugger itself, and it will be a standard entry-point, ignore that for now.

Let’s continue, by clicking on the Play/pause button (Continue). The program will now run to the first breakpoint, line 33. If we click it again, it will jump to line 36 (the lines 34 and 35 will still be executed but we won’t see that). Clicking the Play/pause button again will continue running the program which will pause at its next breakpoint, line 33. We’re in the main loop, after all.

arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. playpause. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π° Ρ„ΠΎΡ‚ΠΎ. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°-playpause. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° playpause. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Arduino UNO с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ debugWire. Π― Ρ‡Π°ΡΡ‚Π΅Π½ΡŒΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ эту ΠΏΠ»Π°Ρ‚ΠΊΡƒ ΠΈΠ»ΠΈ Nano для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² Atmel Studio (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Arduino IDE Ρƒ мСня Ρ€ΡƒΠΊΠ° Π½Π΅ поднимаСтся). И Ρ‚Π°ΠΊ Π½Π°Ρ‡Π½Π΅ΠΌ.

Step over

The step over feature basically goes through the operations of a program, step by step. Let’s say we have 20 operations in our program, each doing something unique. The step over can in a way step through these, one by one, and analyse what’s going on at each step.

arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. stepover. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π° Ρ„ΠΎΡ‚ΠΎ. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°-stepover. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° stepover. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Arduino UNO с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ debugWire. Π― Ρ‡Π°ΡΡ‚Π΅Π½ΡŒΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ эту ΠΏΠ»Π°Ρ‚ΠΊΡƒ ΠΈΠ»ΠΈ Nano для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² Atmel Studio (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Arduino IDE Ρƒ мСня Ρ€ΡƒΠΊΠ° Π½Π΅ поднимаСтся). И Ρ‚Π°ΠΊ Π½Π°Ρ‡Π½Π΅ΠΌ.

Step in and Out

Next up is the step in and step out commands. In this example, we are using the and functions. Using step in we basically branch out of the code we wrote, and jump into the code where these functions are defined. In this case, we are inspecting code inside a file which is part of the Arduino framework.

The step out feature is basically the opposite: it returns you to the origin point, and moves to the next step.

arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. stepinout. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π° Ρ„ΠΎΡ‚ΠΎ. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°-stepinout. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° stepinout. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Arduino UNO с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ debugWire. Π― Ρ‡Π°ΡΡ‚Π΅Π½ΡŒΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ эту ΠΏΠ»Π°Ρ‚ΠΊΡƒ ΠΈΠ»ΠΈ Nano для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² Atmel Studio (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Arduino IDE Ρƒ мСня Ρ€ΡƒΠΊΠ° Π½Π΅ поднимаСтся). И Ρ‚Π°ΠΊ Π½Π°Ρ‡Π½Π΅ΠΌ.

Conclusion

In this guide, we have covered some basics on using the Arduino IDE 2.0 Debugger. We explored some different hardware setups that we can use, how to navigate the Debugger tool, and linked some more elaborate hardware guides to make your debugging experience more smooth!

We hope you enjoy the Debugger, and if you are having issues, please report them in Arduino IDE GitHub repository.

More Tutorials

You can find more tutorials in the Arduino IDE 2 documentation page.

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

ΠžΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π° Arduino (AVR). Π§Π°ΡΡ‚ΡŒ 1. Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ ΠΎΡ‚Π»Π°Π΄ΠΊΠ°

ΠŸΡ€Π΅Π΄ΠΈΡΠ»ΠΎΠ²ΠΈΠ΅

Π‘Π±ΠΎΡ€ΠΊΠ° ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Makefile

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΌΡ‹ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Ρ‘ΠΌ ΠΊ описанию ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Π² ΠΆΠ΅Π»Π΅Π·Π΅ (Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ части) Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡ‚Ρ€Π΅Π½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ. ВСроятно ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π·Π½Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ срСда Arduino Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ компилятор avr-gcc со всСм ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ΠΌ, автоматичСски настраиваСт ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Π΅Π³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π° ΠΈ запускаСт процСсс сборки. Π’Π°ΠΊ Π²ΠΎΡ‚, Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒ этот процСсс явно. Π”Π΅Π»Π°Ρ‚ΡŒ это ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π½Π΅ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ, хотя Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ тСлодвиТСния всё-Ρ‚Π°ΠΊΠΈ понадобятся. НуТно это для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ ELF. Π‘Ρ€Π΅Π΄Π° Arduino ΠΏΠΎΠ΄Ρ‡ΠΈΡ‰Π°Π΅Ρ‚ Π·Π° собой ΠΈ Ρƒ нас Π½Π΅Ρ‚ доступа Π½ΠΈ ΠΊ опциям компилятора, Π½ΠΈ ΠΊ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°ΠΌ компиляции.

Π­Ρ‚ΠΎ ΠΏΠΎΠ΄Π²ΠΎΠ΄ΠΈΡ‚ нас ΠΊ вопросу использования ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ для автоматичСской сборки avr-gcc ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Π° Π΅Ρ‰Ρ‘ Ρ‚ΠΎΡ‡Π½Π΅Π΅ β€” скСтча с Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ Arduino. Π’ΡƒΡ‚ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΠΏΠΎΠ³Ρ€ΡƒΡΡ‚ΠΈΡ‚ΡŒ, Ρ‚.ΠΊ. Π΄Π΅Π»ΠΎ это Π½Π΅ простоС, Π½ΠΎ, ΠΊΠ°ΠΊ говорится, всё ΡƒΠΆΠ΅ сдСлано Π΄ΠΎ нас. ΠžΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ΡΡ, Π½Π° github ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ всё Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ΅ ΠΈΠΌΠ΅Π½Π½ΠΎ для сборки скСтчСй с Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ Arduino. ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ называСтся Arduino-Makefile. Как Π½Π΅ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ Π΄ΠΎΠ³Π°Π΄Π°Ρ‚ΡŒΡΡ ΠΈΠ· описания, этот ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ содСрТит Makefile для автоматичСской сборки ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° Arduino. Из пСрСчислСнных Π² описании особСнностСй ΠΌΡ‹ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΠΌ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅.

ΠŸΠ°ΠΊΠ΅Ρ‚ Arduino-Makefile β€” это Π½Π°Π±ΠΎΡ€ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΈ описаний. Π’ Π½Ρ‘ΠΌ Π½Π΅Ρ‚ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ всё это Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ. НСт Ρ‚Π°ΠΊΠΆΠ΅ ΠΈ срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Ρ‚.Π΅. сборка осущСствляСтся Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡƒΡŽ строку. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΈΠΊΡ€ΡƒΡ‚ΠΈΡ‚ΡŒ Π»ΡŽΠ±ΡƒΡŽ ΡƒΠ΄ΠΎΠ±Π½ΡƒΡŽ для вас IDE, которая ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ сборку Ρ‡Π΅Ρ€Π΅Π· Makefile. Π― ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ Visual Studio.

Если Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π° содСрТимоС, Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΉ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΉ Makefile (Arduino.mk), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² спСцифичСскиС мСстныС Ρ„Π°ΠΉΠ»Ρ‹ сборок. Π’Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ частныС (ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅) настройки для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Ρ†Π΅Π»ΠΈ сборки, Π° ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ Π² автоматичСском Ρ€Π΅ΠΆΠΈΠΌΠ΅ (настройка ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, поиск зависимостСй ΠΈ ΠΏΡ€ΠΎΡ‡Π΅Π΅). Π­Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎ, ΠΊΠ°ΠΊ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅.

Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

ΠœΡ‹ выяснили, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒ скСтчи. Π’Π΅ΠΏΠ΅Ρ€ΡŒ посмотрим ΠΊΠ°ΠΊ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½ сам процСсс сборки ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ. Π― ΠΎΠ±Π΅Ρ‰Π°Π» ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Π΄Π²Π° способа. Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· Π½ΠΈΡ… Π΅ΡΡ‚ΡŒ свои ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. Π‘Π΄Π΅Π»Π°Π΅ΠΌ ΠΈΡ… ΠΊΡ€Π°Ρ‚ΠΊΠΈΠΉ ΠΎΠ±Π·ΠΎΡ€.

Бпособ 1. Π‘ΠΎΠ·Π΄Π°Ρ‘ΠΌ ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ», Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌ Π΅Π³ΠΎ Π² Proteus, ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Π΅ΠΌ Ρ‚Π°ΠΌ ΠΆΠ΅.

arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. image loader. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π° Ρ„ΠΎΡ‚ΠΎ. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Arduino UNO с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ debugWire. Π― Ρ‡Π°ΡΡ‚Π΅Π½ΡŒΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ эту ΠΏΠ»Π°Ρ‚ΠΊΡƒ ΠΈΠ»ΠΈ Nano для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² Atmel Studio (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Arduino IDE Ρƒ мСня Ρ€ΡƒΠΊΠ° Π½Π΅ поднимаСтся). И Ρ‚Π°ΠΊ Π½Π°Ρ‡Π½Π΅ΠΌ.

Достоинства:
β€” ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ простота ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ (с ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡ€Ρ‚Π° Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠΌΡƒΡ‡ΠΈΡ‚ΡŒΡΡ);
β€” доступ Π²ΠΎ внСшний ΠΌΠΈΡ€ Ρ‡Π΅Ρ€Π΅Π· ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΡ€Ρ‚;
β€” построСниС Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ² (доступны Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΈΠ·ΠΌΠ΅Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΈΠ±ΠΎΡ€Ρ‹);
β€” Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ схСму Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ;
β€” Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠΊΠ½Π°Ρ… доступны рСгистры ΠΌΠΊ, области памяти, Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈ исходный ΠΊΠΎΠ΄, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π² Ρ‚ΠΎΠΌ числС Π΅Π³ΠΎ ассСмблСрный Π²Π°Ρ€ΠΈΠ°Π½Ρ‚.

НСдостатки:
β€” ΠΏΠ»Π°Ρ‚Π½ΠΎΡΡ‚ΡŒ Proteus;
β€” ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ ΠΏΠ΅Ρ€ΠΈΡ„Π΅Ρ€ΠΈΠΈ;
β€” слоТныС ΠΌΠΎΠ΄Π΅Π»ΠΈ Π½Π΅ ΠΌΠΎΠ³Ρƒ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ всСх особСнностСй ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ².

Бпособ 2. Π‘ΠΎΠ·Π΄Π°Ρ‘ΠΌ ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ», Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌ Π΅Π³ΠΎ Π² AVR Studio 4, ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Π΅ΠΌ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ»Π°Π³ΠΈΠ½ Proteus VSM Viewer для AVR Studio 4.

arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. image loader. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π° Ρ„ΠΎΡ‚ΠΎ. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Arduino UNO с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ debugWire. Π― Ρ‡Π°ΡΡ‚Π΅Π½ΡŒΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ эту ΠΏΠ»Π°Ρ‚ΠΊΡƒ ΠΈΠ»ΠΈ Nano для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² Atmel Studio (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Arduino IDE Ρƒ мСня Ρ€ΡƒΠΊΠ° Π½Π΅ поднимаСтся). И Ρ‚Π°ΠΊ Π½Π°Ρ‡Π½Π΅ΠΌ.

По достоинствам ΠΈ нСдостаткам ΠΏΠΎΡ‡Ρ‚ΠΈ Ρ‚ΠΎ ΠΆΠ΅, Ρ‡Ρ‚ΠΎ ΠΈ способС 1. МоТно Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ AVR Studio ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ Π΄Π΅Ρ€Π΅Π²ΠΎ всСх рСгистров ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ³ΠΎ ΠΌΠΊ, Π²ΠΏΠ»ΠΎΡ‚ΡŒ Π΄ΠΎ Π±ΠΈΡ‚ΠΎΠ², Ρ‡Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎ. Из минусов стоит ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΈΠΌΠ΅Π΅Ρ‚ свои особСнности ΠΈ Π½Π΅ Ρ‚Π°ΠΊ просто ΠΏΠΎΠ½ΡΡ‚ΡŒ ΠΊΠ°ΠΊ Π·Π°ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊ ΠΎΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π² Π½ΡƒΠΆΠ½Ρ‹Ρ… мСстах.

Бпособ 3. Π‘ΠΎΠ·Π΄Π°Ρ‘ΠΌ ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ», Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌ Π΅Π³ΠΎ Π² AVR Studio 4, ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Π΅ΠΌ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ эмулятор JTAG ICE mkII ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π°Π΄Π°ΠΏΡ‚Π΅Ρ€ (HappyJTAG2).

arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. image loader. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π° Ρ„ΠΎΡ‚ΠΎ. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Arduino UNO с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ debugWire. Π― Ρ‡Π°ΡΡ‚Π΅Π½ΡŒΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ эту ΠΏΠ»Π°Ρ‚ΠΊΡƒ ΠΈΠ»ΠΈ Nano для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² Atmel Studio (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Arduino IDE Ρƒ мСня Ρ€ΡƒΠΊΠ° Π½Π΅ поднимаСтся). И Ρ‚Π°ΠΊ Π½Π°Ρ‡Π½Π΅ΠΌ. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. 3af96e2a939b1021b64d25a6002e9d07. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π° Ρ„ΠΎΡ‚ΠΎ. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°-3af96e2a939b1021b64d25a6002e9d07. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° 3af96e2a939b1021b64d25a6002e9d07. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Arduino UNO с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ debugWire. Π― Ρ‡Π°ΡΡ‚Π΅Π½ΡŒΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ эту ΠΏΠ»Π°Ρ‚ΠΊΡƒ ΠΈΠ»ΠΈ Nano для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² Atmel Studio (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Arduino IDE Ρƒ мСня Ρ€ΡƒΠΊΠ° Π½Π΅ поднимаСтся). И Ρ‚Π°ΠΊ Π½Π°Ρ‡Π½Π΅ΠΌ.

Достоинства:
β€” это настоящая ΠΎΡ‚Π»Π°Π΄ΠΊΠ° Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ Β«ΠΆΠ΅Π»Π΅Π·Π΅Β» с использованиСм JTAG ICE mkII ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ° (ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΌΠΊ Π²ΠΏΠ»ΠΎΡ‚ΡŒ Π΄ΠΎ ATmega2560);
β€” HappyJTAG 2.45 Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π° Windows 7 x64, Π½ΡƒΠΆΠ½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΎΠ΄Π½ΠΎ окошко, Π³Π΄Π΅ просят всё-Ρ‚Π°ΠΊΠΈ ΠΊΡƒΠΏΠΈΡ‚ΡŒ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°.

НСдостатки:
β€” Π·Π°ΠΌΠ΅Ρ‡Π΅Π½Π° Π½Π΅ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Π°Ρ Ρ€Π°Π±ΠΎΡ‚Π° HappyJTAG2 с нСбольшими ΠΏΠΎ ΠΎΠ±ΡŠΡ‘ΠΌΡƒ исходниками;
β€” Π½Π΅ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Π°Ρ Ρ€Π°Π±ΠΎΡ‚Π° AVR Studio ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½Ρ‹Ρ… дСйствий;
β€” Π°Π²Ρ‚ΠΎΡ€ HappyJTAG2 Π΄Π°Π²Π½ΠΎ забросил своё Π΄Π΅Ρ‚ΠΈΡ‰Π΅ (Π²ΠΈΠ΄ΠΈΠΌΠΎ с ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΎΠΌ AVR Studio 5 ΠΈ Atmel Studio);
β€” Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ особСнности ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ (COM4 ΠΈΠ»ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΏΠ΅Ρ€Π²Ρ‹Ρ… 4-Ρ… ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠΎΡ€Ρ‚ΠΎΠ² Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ свободСн ΠΈΠ»ΠΈ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‚.ΠΊ. AVR Studio ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Π΅Ρ‚ COM1-COM4 Π² поискС ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ°). ИмСнно свободСн ΠΈΠ»ΠΈ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‚.ΠΊ. HappyJTAG2 Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, Ρ‚Π°ΠΊ скаТСм, Β«ΠΈΠ·Π½ΡƒΡ‚Ρ€ΠΈΒ».

Как Π²Ρ‹ Π²ΠΈΠ΄ΠΈΡ‚Π΅ я ΠΏΠΎΠΊΠ°Π·Π°Π» Ρ‚Ρ€ΠΈ способа, Π½ΠΎ Π² настоящСС врСмя практичСски Ρƒ мСня Π·Π°Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π²Π° ΠΈΠ· Π½ΠΈΡ…. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ способ Π±ΡƒΠ΄Π΅Ρ‚ описан Π² этой ΡΡ‚Π°Ρ‚ΡŒΠ΅. Π’Ρ‚ΠΎΡ€ΠΎΠΉ способ, ΠΊ соТалСнию, ΠΌΠ½Π΅ Π½Π΅ ΡƒΠ΄Π°Π»ΠΎΡΡŒ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒ. НуТно Π½Π°ΠΉΡ‚ΠΈ Β«ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΡƒΡŽΒ» ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΡŽ Proteus ΠΈ AVR Studio. На ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ΅ использована послСдняя студия AVR Studio 4.19.730 ΠΈ Proteus 7.7 SP2. Когда-Ρ‚ΠΎ Π΄Π°Π²Π½ΠΎ я использовал этот способ, Π½ΠΎ ΠΏΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ ΠΆΠ΅Π»Π΅Π·Π½ΠΎΠ³ΠΎ ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΈΠΌ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ особого смысла. Π’Ρ€Π΅Ρ‚ΠΈΠΉ способ я оставил для Π²Ρ‚ΠΎΡ€ΠΎΠΉ части. Π’Π°ΠΌ Π½ΡƒΠΆΠ΅Π½ Π±ΡƒΠ΄Π΅Ρ‚ Π°Π΄Π°ΠΏΡ‚Π΅Ρ€ ΠΈ описаниС Π΅Π³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ ΠΏΠ»Π°Ρ‚Π°ΠΌ Arduino, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠΌ ΠΎΡ‚Π»Π°Π΄ΠΊΡƒ ΠΏΠΎ JTAG.

И Ρ‡Ρ‚ΠΎ ΠΆΠ΅ для этой всСй ΠΊΡƒΡ…Π½ΠΈ Π½Π°ΠΌ понадобится? Для Π½Π°Ρ‡Π°Π»Π° Π½ΡƒΠΆΠ½ΠΎ Π·Π°Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎ ΡƒΠ±ΠΎΠ³ΠΎΠ΅ Arduino IDE, Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ ΠΏΡ€ΠΈ сборкС скСтчСй. Π”Π°Π»Π΅Π΅, Π½Π°ΠΌ понадобятся:

Π‘ΡƒΠ΄Π΅ΠΌ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅ ΠΊΠ°ΠΊ ΡΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ Ρƒ Google Π³Π΄Π΅ Π΄ΠΎΡΡ‚Π°Ρ‚ΡŒ всё это хозяйство. На всякий случай я ΠΏΡ€ΠΈΠ²Π΅Π΄Ρƒ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ ссылки Π² ΠΊΠΎΠ½Ρ†Π΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ. НСкоторыС ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΏΠΎ ΠΏΠΎΠ²ΠΎΠ΄Ρƒ инструмСнтария.

Как извСстно, Proteus ΠΏΠ»Π°Ρ‚Π½Ρ‹ΠΉ, Π½ΠΎ это Π½Π΅ самоС ΠΏΠ΅Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅. К соТалСнию, Π΅Π³ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π½Π΅ Π½Π° ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ Π±Π»ΠΈΠ·ΠΊΠΈ ΠΊ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌΡƒ ΠΌΠΈΡ€Ρƒ, ΠΊΠ°ΠΊ Ρ…ΠΎΡ‚Π΅Π»ΠΎΡΡŒ Π±Ρ‹. К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, Ethernet shield W5100 Π²Ρ‹ ΠΏΡ€ΠΎΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² Π½Ρ‘ΠΌ Π½Π΅ смоТСтС (ΠΏΠΎ ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅ Π² вСрсии 7.x). ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ, ΡƒΠ²Π°ΠΆΠ°Π΅ΠΌΡ‹Π΅ послСдоватСли Arduino, ΠΈΠ΄ΠΈΡ‚Π΅ истинным ΠΏΡƒΡ‚Ρ‘ΠΌ. Волько ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΆΠ΅Π»Π΅Π·Π΅ спасут ваши Π΄ΡƒΡˆΠΈ ΠΎΡ‚ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ поставлСнных вопросов. Proteus ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ инструмСнт обучСния, Π° Π² ΠΏΠΎΠ»Π΅Π²Ρ‹Ρ… условиях β€” Ρ‚ΠΎΠ»ΡŒΠΊΠΎ JTAG.

ΠžΡ‚Π»Π°Π΄ΠΊΠ° скСтчСй Arduino (AVR) Π² Proteus 7.x

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

Π¨Π°Π³ 1. Π‘ΠΊΠ°Ρ‡ΠΈΠ²Π°Π΅ΠΌ ΠΈ устанавливаСм срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Arduino. Для опрСдСлённости допустим, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠ· сСрии 1.6.x. Π—Π΄Π΅ΡΡŒ сразу сдСлаю нСсколько Π·Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠΉ. Π’ΠΎΠΎΠ±Ρ‰Π΅, ΠΎΡ‚ Arduino Π½Π°ΠΌ Π½ΡƒΠΆΠ½Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. Если Π½Π΅ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ всСго ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ, Ρ‚ΠΎ сама идСя ΡƒΠΏΡ€ΠΎΡ‰Ρ‘Π½Π½ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΎΡ‡Π΅Π½ΡŒ Π΄Π°ΠΆΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠ° (Ссли ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ C# ΠΈ C++ ΠΈΠ»ΠΈ, Π½Π΅ Π΄Π°ΠΉ Π±ΠΎΠΆΠ΅, C++/CLI, Ρ‚ΠΎ это Π½Π΅Π±ΠΎ ΠΈ зСмля). ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΈΠ΅ ΠΆΠ΅ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½Ρ‹Ρ… срСдств ΠΏΡ€ΠΈΠ²Π΅Π»ΠΎ, прямо скаТСм, ΠΊ Π±Π΅Π·Π³Ρ€Π°ΠΌΠΎΡ‚Π½ΠΎΠΌΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ. ВмСсто Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ осознанно ΠΏΡ€Π΅Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ Π·Π°Π΄ΡƒΠΌΠ°Π½Π½Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ Arduino Π²Ρ‹Π½ΡƒΠΆΠ΄Π΅Π½Ρ‹ Π΄Π΅Π»Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ ΠΈΠ· магичСских Π·Π°ΠΊΠ»ΠΈΠ½Π°Π½ΠΈΠΉ, Π²Ρ‹Ρ†Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΈΠ½Ρ„Ρƒ Ρ‡Π΅Ρ€Π΅Π· Serial.print() ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ‹Ρ‚Π°ΡŽΡ‚ΡΡ статичСски ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ исходники Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ. ВяТко Π½Π° это всё ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ.

Π― отвлёкся, Π° Π²Ρ‹, Π½Π°Π²Π΅Ρ€Π½ΠΎΠ΅, успСли ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ срСду ΠΏΠΎ стандартным путям. Π–Π΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠ°ΠΏΠΊΠ° Arduino Π½Π°Ρ…ΠΎΠ΄ΠΈΠ»Π°ΡΡŒ Π² ΠΊΠΎΡ€Π½Π΅ Ρ€Π°Π·Π΄Π΅Π»Π° (C:\Arduino). Π­Ρ‚ΠΎ связано с путями Π² makefile, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ Π»ΡŽΠ±ΡΡ‚ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ Π² Β«Program FilesΒ». ΠœΡ‹ ΠΏΠΎΠ·ΠΆΠ΅ Π±ΡƒΠ΄Π΅ΠΌ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡƒΡ‚ΠΈ ΠΈ для Ρ‚Π΅Ρ…, Ρƒ ΠΊΠΎΠ³ΠΎ ΠΏΠ°ΠΏΠΊΠ° ΡƒΠΆΠ΅ Π² Β«Program FilesΒ» придётся ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΎΠ΄Π½Ρƒ ΡΠ»ΠΎΠΆΠ½ΡƒΡŽ для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Windows Π²Π΅Ρ‰ΡŒ β€” junction point Π½Π° ΠΏΠ°ΠΏΠΊΡƒ. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΡ€ΠΎΠ±Π΅Π» ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΡ€Π°Π½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Π½ΠΎ я этого Π½Π΅ ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π».

Для опрСдСлённости, допустим, Ρ‡Ρ‚ΠΎ ΠΏΡƒΡ‚ΡŒ ΠΊ срСдС Ρ‚Π°ΠΊΠΎΠΉ: C:\Program Files\Arduino.

Π¨Π°Π³ 2. Π‘ΠΊΠ°Ρ‡ΠΈΠ²Π°Π΅ΠΌ ΠΈ распаковываСм Arduino-Makefile. Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΠΌΠΎΠ΅ ΠΏΠ°ΠΏΠΊΠΈ Arduino-Makefile-master Ρ€Π°ΡΠΏΠ°ΠΊΠΎΠ²Π°Ρ‚ΡŒ Π² C:\Arduino-Makefile. Π₯ΠΎΡ‡Ρƒ сразу ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π²Π½ΡƒΡ‚Ρ€ΠΈ Π΅ΡΡ‚ΡŒ Ρ„Π°ΠΉΠ» README.md, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π° github’Π΅, Π³Π΄Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Ρ‡Π΅Π³ΠΎ описано. Π’Π°ΠΊΠΆΠ΅ слСдуСт Π²Π·ΡΡ‚ΡŒ Π½Π° Π·Π°ΠΌΠ΅Ρ‚ΠΊΡƒ Ρ„Π°ΠΉΠ» arduino-mk-vars.md, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ содСрТит описаниС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΌ (ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π½ΠΎΠΌ) Makefile ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ….

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ make Π½ΡƒΠΆΠ΅Π½ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚ gnu bin utils, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ…ΠΎΠ΄ΠΈΠ» Π² состав WinAVR Π² своё врСмя. Π― Π½Π΅ знаю Π΅ΡΡ‚ΡŒ Π»ΠΈ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ сайт сборки этих самых ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ ΠΏΠΎΠ΄ Windows, Π½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ. Π’Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ старый Π΄ΠΎΠ±Ρ€Ρ‹ΠΉ WinAVR послСднСй вСрсии ΠΈ Π²Ρ‹Ρ‚Π°Ρ‰ΠΈΡ‚ΡŒ ΠΈΠ· Π½Π΅Π³ΠΎ ΠΏΠ°ΠΏΠΊΡƒ utils, Π³Π΄Π΅ находятся ΠΊΠΎΠΌΠ°Π½Π΄Π½Ρ‹Π΅ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹. МоТно ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ, ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ°ΠΏΠΊΡƒ ΠΈ Π΄Π΅ΠΈΠ½ΡΡ‚Π°Π»Π»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ WinAVR (ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π² Π΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚ Π²Ρ…ΠΎΠ΄ΠΈΡ‚ старый компилятор avr-gcc, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ΅Π½).

Π”Π°Π»Π΅Π΅, ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΠ°ΠΏΠΊΡƒ c:\avr-gcc ΠΈ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ utils Π² Π½Π΅Ρ‘. ПослС этого Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ PATH (Ρ‡Π΅Ρ€Π΅Π· свойства ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°) ΠΏΡƒΡ‚ΡŒ C:\avr-gcc\utils\bin:

set PATH=C:\avr-gcc\utils\bin;%PATH%

ΠŸΡƒΡ‚ΡŒ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΏΠ΅Ρ€Π²Ρ‹Ρ… Π² поискС. НС Π·Π°Π±Ρ‹Π²Π°ΠΉΡ‚Π΅ ΠΏΡ€ΠΎ это ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅, Ρ‚.ΠΊ. ΠΎΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ²Π»ΠΈΡΡ‚ΡŒ Π½Π° Ρ€Π°Π±ΠΎΡ‚Ρƒ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, Ссли Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

Π¨Π°Π³ 3. Π‘Π°ΠΌΠΈ Π·Π½Π°Π΅Ρ‚Π΅ Π³Π΄Π΅ Π±Π΅Ρ€Ρ‘Ρ‚Π΅/ΠΏΠΎΠΊΡƒΠΏΠ°Π΅Ρ‚Π΅ Proteus [7.2 β€” 7.8]. ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΈΠΌΠ΅Π½Π½ΠΎ этой сСрии ΠΈ Ρ‚Π°ΠΊΠΎΠΉ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» вСрсий? ΠŸΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ я ΠΈΡ… ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π» ΠΈ Π²Ρ€ΠΎΠ΄Π΅ Π±Ρ‹ Π½Π° нСслоТных ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ… ΠΎΠ½ΠΈ Π²ΠΏΠΎΠ»Π½Π΅ Π½Π΅ΠΏΠ»ΠΎΡ…ΠΈ. ВСрсии большС 7.8 Π½Π΅ ΠΌΠΎΠ³Π»ΠΈ ΠΏΠΎΠ΄Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΌΠΎΠ΅Π³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π² IAR, Π° Π½ΠΈΠΆΠ΅ я Π½Π΅ ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π». Π’ΠΎΡΡŒΠΌΡ‘Ρ€ΠΊΠ° просто Π³Π»ΡŽΡ‡Π½Π°Ρ ΠΏΠΎΠΊΠ°, ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΡ‚ΠΎΠΌ ΠΊΡ‚ΠΎ-Ρ‚ΠΎ Π½Π°ΠΏΠΈΡˆΠ΅Ρ‚ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΈ ΠΏΡ€ΠΎ Π½Π΅Ρ‘. Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ с Π²Π°ΠΌΠΈ Π²ΠΎΠ·ΡŒΠΌΡ‘ΠΌ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎ Proteus 7.8 SP2.

Π¨Π°Π³ 4. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΡΡ‚Π°Ρ‚ΡŒΡŽ, создаём junction point Π½Π° ΠΏΠ°ΠΏΠΊΡƒ с установлСнной срСдой Arduino, Ρ‚.Π΅. C:\Arduino Π΄ΠΎΠ»ΠΆΠ½Π° ΡΡΡ‹Π»Π°Ρ‚ΡŒΡΡ Π½Π° C:\Program Files\Arduino. Π­Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΠΌΡƒΠ΄Ρ€ΠΈΡ‚ΡŒ с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ² Π² makefile’Π°Ρ…. Π’.ΠΎ., Π½Π΅ копируя ΠΏΠ°ΠΏΠΊΡƒ с Arduino, ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ Π΅Ρ‘ копию Π² Π½ΡƒΠΆΠ½ΠΎΠΌ Π½Π°ΠΌ мСстС. ΠšΡ‚ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Far’ΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΡŽ Alt+F6 Π½Π° ΠΏΠ°ΠΏΠΊΠ΅.

ПишСм ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ для тСстирования сборки ΠΈΠ· срСды Arduino, Π½Π°Π·ΠΎΠ²Ρ‘ΠΌ Π΅Ρ‘ Example1 ΠΈ сохраним Π² ΠΏΠ°ΠΏΠΊΠ΅ скСтчСй:

void setup()
<
DDRD |= ( 1
ΠšΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌ ΠΈ провСряСм, Ρ‡Ρ‚ΠΎ сборка ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚. Π£ мСня Π² Arduino 1.6.7 ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²Ρ‰ΠΈΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² (ld.exe) Π²Ρ‹Π»Π΅Ρ‚Π΅Π» с ошибкой, я Π·Π°ΠΌΠ΅Π½ΠΈΠ» Π΅Π³ΠΎ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ (ΠΌΠΎΠΆΠ½ΠΎ, ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, ΠΈΠ· этой сборки).

Π¨Π°Π³ 5. ΠšΠΎΠΏΠΈΡ€ΡƒΠ΅ΠΌ Ρ„Π°ΠΉΠ» C:\Arduino-Makefile\examples\WebServer\Makefile Π² ΠΏΠ°ΠΏΠΊΡƒ с нашим скСтчСм: C:\Arduino-Makefile\examples\Example1. Π˜ΡΠΏΡ€Π°Π²Π»ΡΠ΅ΠΌ Π΅Π³ΠΎ содСрТимоС ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

# Arduino Make file. Refer to https://github.com/sudar/Arduino-Makefile

# Suppress printing of Arduino-Makefile configuration.
#ARDUINO_QUIET = 1

# Device type as listed in `boards.txt` or `make show_boards`.
BOARD_TAG = mega

# Microcontroller model.
# Usually can be auto-detected as `build.mcu` from `boards.txt`
MCU = atmega2560

#CPU speed in Hz
#Usually can be auto-detected as `build.f_cpu` from `boards.txt`, except in
#some 1.5+ cores like attiny where there is a clock submenu.
#F_CPU = 16000000L

# What name you would like for generated target files.
# Defaults to the name of your current working directory, but with underscores (_) instead of spaces.
#TARGET = project

# Baudrate of the serial monitor.
# Defaults to `9600` if it can’t find it in the sketch `Serial.begin()`
MONITOR_BAUDRATE = 9600

ВставляСм Π²Π½Π°Ρ‡Π°Π»Π΅ нашСго исходника строчку, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΡƒΡŽ явно Arduino.h (это Π΄Π΅Π»Π°Ρ‚ΡŒ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Ссли Π΅ΡΡ‚ΡŒ зависимости ΠΎΡ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ARDUINO_LIBS):

void setup()
<
DDRD |= ( 1
НС Π·Π°Π±Ρ‹Π²Π°Π΅ΠΌ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ исходник ΠΈ Makefile. Π”Π°Π»Π΅Π΅, Π½Π°Ρ…ΠΎΠ΄ΡΡΡŒ Π² ΠΏΠ°ΠΏΠΊΠ΅ Example1, Π²Π²ΠΎΠ΄ΠΈΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ make (ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ консоли ΠΈΠ»ΠΈ Π² Far’Π΅, ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΌ способом), Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ большая портянка, похоТая Π½Π° Ρ‚Ρƒ, Ρ‡Ρ‚ΠΎ выводится Π² Arduino IDE ΠΏΡ€ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ Π²Ρ‹Π²ΠΎΠ΄Π° ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ процСссС сборки. Π­Ρ‚ΠΎ Ссли всё Π±Ρ‹Π»ΠΎ сдСлано ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ, Ссли ΠΆΠ΅ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ, Ρ‚ΠΎ ΠΏΠΎΠΏΡ‹Ρ‚Π°ΠΉΡ‚Π΅ΡΡŒ сначала ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ½ΡΡ‚ΡŒ Ρ‡Ρ‚ΠΎ Π½Π΅ Ρ‚Π°ΠΊ, Π° ΠΏΠΎΡ‚ΠΎΠΌ ΡƒΠΆ ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Ρ‹ ΠΊ ΡΡ‚Π°Ρ‚ΡŒΠ΅.

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΌΡ‹ Π² Makefile Π·Π°ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π»ΠΈ строку ARDUINO_QUIET = 1, Ρ‚ΠΎ ΠΏΠ΅Ρ€Π΅Π΄ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎ сборкС ΠΈΠ΄Ρ‘Ρ‚ шапка со значСниями ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… самого Makefile. Π§Π°ΡΡ‚ΡŒ ΠΈΠ· Π½ΠΈΡ… Π·Π°Π΄Π°Π½Π°, Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡŽΡ‚ΡΡ ΠΏΠΎ Ρ…ΠΎΠ΄Ρƒ выполнСния. Π­Ρ‚ΠΎ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ошибки ΠΏΡ€ΠΈ ΠΏΡ€Π°Π²ΠΊΠ΅ Makefile ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Π‘ΡƒΠ΄Π΅ΠΌ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ всё ΠΏΡ€ΠΎΡˆΠ»ΠΎ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ, Ρ‚ΠΎΠ³Π΄Π° Ρƒ вас Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ ΠΏΠ°ΠΏΠΎΡ‡ΠΊΠ° build-mega, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ наш Π΄ΠΎΠ»Π³ΠΎΠΆΠ΄Π°Π½Π½Ρ‹ΠΉ Example1.elf β€” этот Ρ‚ΠΎΡ‚ самый Ρ„Π°ΠΉΠ», Ρ€Π°Π΄ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ всё дСйство Π·Π°Ρ‚Π΅Π²Π°Π»ΠΎΡΡŒ. Π­Ρ‚ΠΈΠΌ Ρ„Π°ΠΉΠ»ΠΎΠΌ ΠΌΡ‹ Β«ΠΏΡ€ΠΎΡˆΡŒΡ‘ΠΌ ΠΌΠΎΠ·Π³ΠΈΒ» Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΌΡƒ ΠΌΠΊ Π² Proteus ΠΈ заТивём… с Π΅Ρ‰Ρ‘ ΠΎΠ΄Π½ΠΎΠΉ ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒΡŽ свободы.

Π¨Π°Π³ 6. ВСрнёмся ΠΊ Proteus. Π‘ΠΎΠ·Π΄Π°Ρ‘ΠΌ Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ (dsn-Ρ„Π°ΠΉΠ») Π² ΠΏΠ°ΠΏΠΊΠ΅ с исходником. ДостанСм ΠΈΠ· Π½Π΅Π΄Ρ€ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ β€” ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ ATmega2560 ΠΈ вставим Π΅Π³ΠΎ ΠΊΡƒΠ΄Π° ΠΎΠ½ помСстится, ΡƒΠΆ Π·Π΄ΠΎΡ€ΠΎΠ²Ρ‹ΠΉ больно. Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ свойства ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° ΠΏΠΎ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ΅. Π£ΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ COMPIM ΠΏΠΎΠΊΠ° Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΎΠ½ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΎΠΌ.

arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. image loader. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π° Ρ„ΠΎΡ‚ΠΎ. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Arduino UNO с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ debugWire. Π― Ρ‡Π°ΡΡ‚Π΅Π½ΡŒΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ эту ΠΏΠ»Π°Ρ‚ΠΊΡƒ ΠΈΠ»ΠΈ Nano для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² Atmel Studio (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Arduino IDE Ρƒ мСня Ρ€ΡƒΠΊΠ° Π½Π΅ поднимаСтся). И Ρ‚Π°ΠΊ Π½Π°Ρ‡Π½Π΅ΠΌ.

Π—Π°Ρ‚Π΅ΠΌ Π²Ρ…ΠΎΠ΄ΠΈΠΌ Π² Ρ€Π΅ΠΆΠΈΠΌ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Debug\Start/Restart Debugging. ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ, ΠΏΠΎΡ…ΠΎΠΆΡƒΡŽ Π½Π° Ρ‚Π°ΠΊΡƒΡŽ.

arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. image loader. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π° Ρ„ΠΎΡ‚ΠΎ. arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°-image loader. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° arduino ide ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° image loader. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Arduino UNO с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ debugWire. Π― Ρ‡Π°ΡΡ‚Π΅Π½ΡŒΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ эту ΠΏΠ»Π°Ρ‚ΠΊΡƒ ΠΈΠ»ΠΈ Nano для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ своих ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² Atmel Studio (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Arduino IDE Ρƒ мСня Ρ€ΡƒΠΊΠ° Π½Π΅ поднимаСтся). И Ρ‚Π°ΠΊ Π½Π°Ρ‡Π½Π΅ΠΌ.

Ну, Π° дальшС, всё зависит ΠΎΡ‚ ΠΏΠΎΠ»Ρ‘Ρ‚Π° вашСй Ρ„Π°Π½Ρ‚Π°Π·ΠΈΠΈ. Π’ окошкС исходников Π±ΡƒΠ΄Π΅Ρ‚ доступСн Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Example1.ino, Π½ΠΎ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ зависимыС исходники. МоТно Ρ€Π°ΡΠΊΡ€Ρ‹Ρ‚ΡŒ ассСмблСрный ΠΊΠΎΠ΄, рСгистры процСссора, ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΈ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Ρ‚Π°ΠΌ Π²Ρ€ΠΎΠ΄Π΅ Π΅Ρ‰Ρ‘. Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ Π΄ΠΎΠΊΡƒ Π½Π° Proteus.

Π¨Π°Π³ 7. НуТно Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€. ΠŸΠΈΡΠ°Ρ‚ΡŒ лСнь, надСюсь сдСлаСтС это ΡƒΠΆΠ΅ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ. Бмысл, Π²ΠΊΡ€Π°Ρ‚Ρ†Π΅, Ρ‚Π°ΠΊΠΎΠΉ. Π‘ΠΎΠ·Π΄Π°Ρ‘Ρ‚Π΅ Π΄Π²Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠΎΡ€Ρ‚Π°, соСдинённых Π½ΡƒΠ»ΡŒ-ΠΌΠΎΠ΄Π΅ΠΌΠΎΠΌ (Π»ΡƒΡ‡ΡˆΠ΅ с Π½ΠΎΠΌΠ΅Ρ€Π°ΠΌΠΈ большС COM4). Один прописываСтС Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ COMPIM Proteus, Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ (PuTTY). НС Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ ΠΏΠΎΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΈ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΡƒ Π²Ρ‹Π²ΠΎΠ΄Π° Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅, ΠΏΠΎ ΠΈΠ΄Π΅Π΅ ΠΎΠ½Π° Π΄ΠΎΠ»ΠΆΠ½Π° ΡΠΎΠ²ΠΏΠ°Π΄Π°Ρ‚ΡŒ с ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΎΠΉ исходных Ρ„Π°ΠΉΠ»ΠΎΠ², Ссли Π·Π°Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π΄Π΅Π»Π°Ρ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄ Π² ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ ΠΏΠΎ-русски.

Π¨Π°Π³ 8. Если Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ avr gcc 4.9.2, Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚ΡŒ содСрТимоС Π°Ρ€Ρ…ΠΈΠ²Π° Π² ΠΊΠΎΡ€Π΅Π½ΡŒ диска ΠΈ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΏΡƒΡ‚ΡŒ Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ AVR_TOOLS_DIR. Волько Ρ‚Π°ΠΌ Ρƒ мСня Π½Π΅ Π·Π°Ρ€Π°Π±ΠΎΡ‚Π°Π» avr-size, каТСтся. МоТно ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ Π΅Π³ΠΎ Π½Π° Ρ‚ΠΎΡ‚, Ρ‡Ρ‚ΠΎ ΠΈΠ΄Ρ‘Ρ‚ Π² ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚Π΅ WinAVR (ΠΈΠ»ΠΈ Arduino).

ΠšΡΡ‚Π°Ρ‚ΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·ΠΌΠ΅Ρ€ выводился Π² Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΌ Π²ΠΈΠ΄Π΅ Π½ΡƒΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΎΠΏΡ†ΠΈΡŽ Π² Π²Ρ‹Π·ΠΎΠ² avr-size (Ρ„Π°ΠΉΠ» Arduino.mk):

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

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

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