Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌ Arduino. ΠžΡΠ½ΠΎΠ²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ со скСтчами». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 4

Автор Монк Π‘Π°ΠΉΠΌΠΎΠ½

ΠžΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π΅Π΄Π°Π²Π½ΠΎ Π² арсСналС Arduino появилась ΠΏΠ»Π°Ρ‚Π° Arduino Ethernet. Она ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ основныС характСристики Uno с интСрфСйсом Ethernet, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΊ сСти Π±Π΅Π· использования Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ‹ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ Ethernet.

Π‘ΠΎΠ»ΡŒΡˆΠΈΠ΅ ΠΏΠ»Π°Ρ‚Ρ‹ Arduino

Иногда количСства ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π° Π½Π° ΠΏΠ»Π°Ρ‚Π°Ρ… Uno ΠΈ Leonardo оказываСтся нСдостаточно для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ поставлСнных Π·Π°Π΄Π°Ρ‡. Π’ Ρ‚Π°ΠΊΠΈΡ… ситуациях Π²Ρ‹ ΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚Π΅ΡΡŒ ΠΏΠ΅Ρ€Π΅Π΄ Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Ρ‚Π΅Π½ΠΈΠ΅ΠΌ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ для Uno ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΎΠΌ Π½Π° использованиС ΠΏΠ»Π°Ρ‚ большСго Ρ€Π°Π·ΠΌΠ΅Ρ€Π°.

Π‘ΠžΠ’Π•Π’

Если Π²Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚Π΅ Π·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с Arduino, Π²ΠΎΠ·Π΄Π΅Ρ€ΠΆΠΈΡ‚Π΅ΡΡŒ ΠΎΡ‚ ΠΏΠΎΠΊΡƒΠΏΠΊΠΈ большой ΠΏΠ»Π°Ρ‚Ρ‹. Они выглядят ΠΏΡ€ΠΈΠ²Π»Π΅ΠΊΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, обладая большим числом ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² ΠΈ большим быстродСйствиСм, Π½ΠΎ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ совмСстимости с ΠΏΠ»Π°Ρ‚Π°ΠΌΠΈ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ. Пока Π²Π°ΠΌ Π»ΡƒΡ‡ΡˆΠ΅ ΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ свой Π²Ρ‹Π±ΠΎΡ€ Π½Π° стандартной ΠΌΠΎΠ΄Π΅Π»ΠΈ Uno.

МодСли Arduino большСго Ρ€Π°Π·ΠΌΠ΅Ρ€Π° ΠΈΠΌΠ΅ΡŽΡ‚ Ρ‚ΠΎΡ‚ ΠΆΠ΅ Π½Π°Π±ΠΎΡ€ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ², Ρ‡Ρ‚ΠΎ ΠΈ Uno, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ ряд Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π° с Ρ‚ΠΎΡ€Ρ†Π΅Π²ΠΎΠΉ стороны ΠΈ Π±ΠΎΠ»Π΅Π΅ Π΄Π»ΠΈΠ½Π½Ρ‹Π΅ ряды ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² ΠΏΠΎ Π±ΠΎΠΊΠΎΠ²Ρ‹ΠΌ сторонам (рис. 1.10).

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌ Arduino. ΠžΡΠ½ΠΎΠ²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ со скСтчами - _12.jpg

Рис. 1.10. Arduino Due

Π’Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎ самой большой считаСтся Arduino Mega 2560. Π­Ρ‚ΠΈ ΠΏΠ»Π°Ρ‚Ρ‹, ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ всСм Π΄Ρ€ΡƒΠ³ΠΈΠΌ большим ΠΏΠ»Π°Ρ‚Π°ΠΌ Arduino, ΠΈΠΌΠ΅ΡŽΡ‚ большС памяти ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π°. ΠŸΠ»Π°Ρ‚Ρ‹ Mega 2560 ΠΈ Mega ADK ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚ΡƒΡŽΡ‚ΡΡ процСссорами с ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ, схоТСй с ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ процСссора Π² ΠΌΠΎΠ΄Π΅Π»ΠΈ Arduino Uno. Но Π² Ρ†Π΅Π»ΠΎΠΌ Arduino Due β€” Π±ΠΎΠ»Π΅Π΅ «мощная машина». Π­Ρ‚Π° ΠΏΠ»Π°Ρ‚Π° комплСктуСтся процСссором с Ρ‚Π°ΠΊΡ‚ΠΎΠ²ΠΎΠΉ частотой 84 ΠœΠ“Ρ† (сравнитС с 16 ΠœΠ“Ρ† ΠΌΠΎΠ΄Π΅Π»ΠΈ Uno), Π½ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ совмСстимости с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ модСлями. Бамая большая ΠΈΠ· Π½ΠΈΡ… состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ для элСктропитания Due Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ напряТСниС 3,3 Π’ вмСсто 5 Π’, ΠΊΠ°ΠΊ для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ Arduino. ΠΠ΅ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΏΠ»Π°Ρ‚Ρ‹ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ нСсовмСстимы с Π½Π΅ΠΉ.

Однако эта ΠΏΠ»Π°Ρ‚Π° ΠΈΠΌΠ΅Π΅Ρ‚ мноТСство прСимущСств, Π·Π½Π°Ρ‡ΠΈΠΌΡ‹Ρ… для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² с высокими трСбованиями:

β€’ большой объСм памяти для ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΈ Π΄Π°Π½Π½Ρ‹Ρ…;

β€’ аппаратная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π²Ρ‹Π²ΠΎΠ΄Π° Π·Π²ΡƒΠΊΠΎΠ² (Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Π΅ Ρ†ΠΈΡ„Ρ€ΠΎΠ°Π½Π°Π»ΠΎΠ³ΠΎΠ²Ρ‹Π΅ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ);

β€’ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠΎΡ€Ρ‚Π°;

β€’ Π΄Π²Π° ΠΏΠΎΡ€Ρ‚Π° USB;

β€’ интСрфСйсы USB-хоста ΠΈ USB OTG;

β€’ имитация USB-ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ ΠΈ USB-ΠΌΡ‹ΡˆΠΈ.

МалСнькиС ΠΏΠ»Π°Ρ‚Ρ‹ Arduino

Для ΠΎΠ΄Π½ΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² модСль Uno ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ слишком малСнькой, Π½ΠΎ для Π΄Ρ€ΡƒΠ³ΠΈΡ… β€” слишком большой. НСсмотря Π½Π° Π½Π΅Π²Ρ‹ΡΠΎΠΊΡƒΡŽ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ ΠΏΠ»Π°Ρ‚ Arduino, ΠΎΠ½ΠΈ становятся слишком Π΄ΠΎΡ€ΠΎΠ³ΠΈΠΌ ΡƒΠ΄ΠΎΠ²ΠΎΠ»ΡŒΡΡ‚Π²ΠΈΠ΅ΠΌ, Ссли Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΈΡ… Π² ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚. БущСствуСт Ρ†Π΅Π»Ρ‹ΠΉ спСктр ΠΌΠ°Π»Π΅Π½ΡŒΠΊΠΈΡ… ΠΈ спСциализированных ΠΏΠ»Π°Ρ‚ Arduino, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ мСньший Ρ€Π°Π·ΠΌΠ΅Ρ€, Ρ‡Π΅ΠΌ обычная модСль Uno, ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ Π½ΠΈΠ·ΠΊΡƒΡŽ Ρ†Π΅Π½Ρƒ Π·Π° счСт отсутствия ΠΊΠ°ΠΊΠΈΡ…-Ρ‚ΠΎ особСнностСй, Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰ΠΈΡ…ΡΡ Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ².

На рис. 1.11 ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½Π° ΠΏΠ»Π°Ρ‚Π° Arduino Mini. Π­Ρ‚Π° модСль Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ интСрфСйса USB, Π° Π΅Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ осущСствляСтся с ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ модуля Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ. Помимо Mini ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ Nano ΠΈ Micro. ОбС ΠΎΠ½ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ встроСнный интСрфСйс USB, Π½ΠΎ ΠΈ стоят Π΄ΠΎΡ€ΠΎΠΆΠ΅.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌ Arduino. ΠžΡΠ½ΠΎΠ²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ со скСтчами - _13.jpg

Рис. 1.11. Arduino Mini и Arduino Programmer

ΠŸΠ»Π°Ρ‚Ρ‹ LilyPad ΠΈ LilyPad USB

ΠŸΠ»Π°Ρ‚Π° LilyPad ΠΈ Π±ΠΎΠ»Π΅Π΅ новая Π΅Π΅ вСрсия LilyPad USB β€” ΠΎΠ΄Π½ΠΈ ΠΈΠ· самых интСрСсных ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ Arduino (рис. 1.12). Π­Ρ‚ΠΈ ΠΏΠ»Π°Ρ‚Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡˆΠΈΠ²Π°Ρ‚ΡŒ Π² элСмСнты ΠΎΠ΄Π΅ΠΆΠ΄Ρ‹ ΠΈ ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡ‚ΡŒ ΠΈΡ… токопроводящими нитями со свСтодиодами, Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡΠΌΠΈ, аксСлСромСтрами ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ устройствами. Для программирования Π±ΠΎΠ»Π΅Π΅ старых ΠΏΠ»Π°Ρ‚ LilyPad трСбуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ интСрфСйс USB, ΠΊΠ°ΠΊ Π² случаС с Arduino Mini. Однако эти ΠΏΠ»Π°Ρ‚Ρ‹ постСпСнно Π²Ρ‹Ρ‚Π΅ΡΠ½ΡΡŽΡ‚ΡΡ Π±ΠΎΠ»Π΅Π΅ Π½ΠΎΠ²ΠΎΠΉ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠ΅ΠΉ Arduino LilyPad USB, ΠΈΠΌΠ΅ΡŽΡ‰Π΅ΠΉ встроСнный Ρ€Π°Π·ΡŠΠ΅ΠΌ USB.

Рис. 1.12. Arduino LilyPad

ΠΠ΅ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ»Π°Ρ‚Ρ‹ Arduino

Благодаря статусу ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ обСспСчСния ΠΏΠΎΠΌΠΈΠΌΠΎ Β«ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ…Β» ΠΏΠ»Π°Ρ‚, описанных Ρ€Π°Π½Π΅Π΅, появилось мноТСство Π½Π΅ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΏΠΈΠΉ ΠΈ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΉ Arduino. ΠŸΡ€ΡΠΌΡ‹Π΅ ΠΊΠ»ΠΎΠ½Ρ‹ Arduino, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Π΅Π· Ρ‚Ρ€ΡƒΠ΄Π° ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π½Π° eBay ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π½Π΅Π΄ΠΎΡ€ΠΎΠ³ΠΈΡ… Ρ‚ΠΎΡ€Π³ΠΎΠ²Ρ‹Ρ… ΠΏΠ»ΠΎΡ‰Π°Π΄ΠΊΠ°Ρ…, ΡΠ²Π»ΡΡŽΡ‚ΡΡ простыми копиями ΠΏΠ»Π°Ρ‚ Arduino. ЕдинствСнноС ΠΈΡ… прСимущСство β€” нСвысокая Ρ†Π΅Π½Π°. Но сущСствуСт Ρ‚Π°ΠΊΠΆΠ΅ ряд интСрСсных Arduino-совмСстимых Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΎΠΊ, ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‰ΠΈΡ… Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ возмоТности.

Π’ числС ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² Ρ‚Π°ΠΊΠΎΠ³ΠΎ Ρ€ΠΎΠ΄Π° ΠΏΠ»Π°Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ стоит ΡƒΠ΄Π΅Π»ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π·Π²Π°Ρ‚ΡŒ:

β€’ EtherTen β€” Π°Π½Π°Π»ΠΎΠ³ ΠΏΠ»Π°Ρ‚Ρ‹ Arduino Ethernet (www.freetronics.com/products/etherten);

β€’ Leostick A β€” ΠΌΠ°Π»ΠΎΠ³Π°Π±Π°Ρ€ΠΈΡ‚Π½Ρ‹ΠΉ Π°Π½Π°Π»ΠΎΠ³ ΠΏΠ»Π°Ρ‚Ρ‹ Leonardo со встроСнным Ρ€Π°Π·ΡŠΠ΅ΠΌΠΎΠΌ USB (www.freetronics.com/collections/arduino/products/leostick).

Π’Π΅ΠΏΠ΅Ρ€ΡŒ, послС знакомства с Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΉ стороной Arduino, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ знакомству с возмоТностями ΠΈΡ… программирования.

Π―Π·Ρ‹ΠΊ программирования

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

ΠŸΡƒΡ€ΠΈΡΡ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π² Arduino ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ C++, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ языка C. Π‘Ρ‚Ρ€ΠΎΠ³ΠΎ говоря, ΠΎΠ½ΠΈ ΠΏΡ€Π°Π²Ρ‹, ΠΎΠ΄Π½Π°ΠΊΠΎ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ всСго 1–2 ΠšΠ±Π°ΠΉΡ‚ памяти ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ использованиС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ΅ΠΌΠΎΠ² ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ для Arduino Π½Π΅ самая Π»ΡƒΡ‡ΡˆΠ°Ρ идСя, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ особых ситуаций, ΠΈ фактичСски ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΈΡˆΡƒΡ‚ΡΡ Π½Π° C.

НачнСм с измСнСния скСтча Blink.

ИзмСнСниС скСтча Blink

ΠœΠΎΠΆΠ΅Ρ‚ Ρ‚Π°ΠΊ ΡΠ»ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΌ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ ваша ΠΏΠ»Π°Ρ‚Π° Arduino ΡƒΠΆΠ΅ ΠΌΠΈΠ³Π°Π΅Ρ‚ свСтодиодом. Π­Ρ‚ΠΎ ΠΎΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚ΡΡ Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΠ»Π°Ρ‚Ρ‹ Arduino часто ΠΏΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ с установлСнным скСтчСм Blink.

Если Ρƒ вас ΠΈΠΌΠ΅Π½Π½ΠΎ такая ΠΏΠ»Π°Ρ‚Π°, Π²Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ½Ρ€Π°Π²ΠΈΡ‚ΡŒΡΡ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ частоту мигания, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ. Π”Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим скСтч Blink, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ измСнСния слСдуСт внСсти, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ свСтодиод ΠΌΠΈΠ³Π°Ρ‚ΡŒ Ρ‡Π°Ρ‰Π΅.

ΠŸΠ΅Ρ€Π²Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ скСтча β€” это ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠΉ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ скСтча. ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ Π½Π΅ являСтся ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌ ΠΊΠΎΠ΄ΠΎΠΌ. Π’ процСссС ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΈ ΠΊΠΎΠ΄Π° ΠΊ Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠ΅ всС Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΡƒΠ΄Π°Π»ΡΡŽΡ‚ΡΡ. ВсС, Ρ‡Ρ‚ΠΎ находится ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠ°Ρ€Π°ΠΌΠΈ символов /* ΠΈ */, игнорируСтся ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠΌ ΠΈ адрСсовано людям.

/*

Β Β Blink

Β Β Π’ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ свСтодиод Π½Π° ΠΎΠ΄Π½Ρƒ сСкунду, Π·Π°Ρ‚Π΅ΠΌ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π½Π° ΠΎΠ΄Π½Ρƒ сСкунду, ΠΈ Ρ‚Π°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π·.

Β Β Π­Ρ‚ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π° находится Π² свободном доступС.

*/

Π”Π°Π»Π΅Π΅ ΠΈΠ΄ΡƒΡ‚ Π΄Π²Π° однострочных коммСнтария. Они ΠΏΠΎΡ…ΠΎΠΆΠΈ Π½Π° Π±Π»ΠΎΡ‡Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ, Π½ΠΎ Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Π½ΠΈΡ… Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с ΠΏΠ°Ρ€Ρ‹ символов //. Π­Ρ‚ΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ происходящСС. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ сообщаСт Π²Π°ΠΌ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ с Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ 13 β€” это Ρ‚ΠΎΡ‚ самый ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΌΡ‹ собираСмся ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ. ΠœΡ‹ Π²Ρ‹Π±Ρ€Π°Π»ΠΈ этот ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Arduino Uno ΠΎΠ½ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΊ свСтодиоду L.

// На Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ ΠΏΠ»Π°Ρ‚ Arduino ΠΊ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρƒ 13 ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ свСтодиод.

// Π”Π°Π΄ΠΈΠΌ Π΅ΠΌΡƒ имя:

int led = 13;

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ скСтча β€” функция setup. Π­Ρ‚Π° функция Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ скСтчС, ΠΈ ΠΎΠ½Π° выполняСтся всякий Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° происходит сброс ΠΏΠ»Π°Ρ‚Ρ‹ Arduino, Π»ΠΈΠ±ΠΎ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ (ΠΊΠ°ΠΊ сообщаСт ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ) наТатия Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ сброса Reset, Π»ΠΈΠ±ΠΎ послС ΠΏΠΎΠ΄Π°Ρ‡ΠΈ элСктропитания Π½Π° ΠΏΠ»Π°Ρ‚Ρƒ.

// ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° setup выполняСтся ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· послС наТатия Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ сброса

void setup(){

Β Β // ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ ΠΊΠ°ΠΊ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ Π²Ρ‹Ρ…ΠΎΠ΄

Β Β pinMode(led, OUTPUT);

}

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° этого тСкста ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ странной Ρ‚Π΅ΠΌ, ΠΊΡ‚ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅. Ѐункция β€” это Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΉ собствСнноС имя (Π² Π΄Π°Π½Π½ΠΎΠΌ случаС setup). Пока просто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΉ тСкст ΠΊΠ°ΠΊ шаблон ΠΈ ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ скСтч Π΄ΠΎΠ»ΠΆΠ΅Π½ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒΡΡ строкой void setup() {, Π·Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΡΠ»Π΅Π΄ΡƒΡŽΡ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, каТдая Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ строкС, Π·Π°Π²Π΅Ρ€ΡˆΠ°ΡŽΡ‰ΠΈΠ΅ΡΡ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ с запятой (;). ΠšΠΎΠ½Π΅Ρ† Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ отмСчаСтся символом }.