Π£Π½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΉ внСшний Π½Π°ΠΊΠΎΠΏΠΈΡ‚Π΅Π»ΡŒ для всСх iOS-устройств, совмСстим с PC/Mac, Android
Header Banner
8 800 100 5771 | +7 495 540 4266
c 9:00 Π΄ΠΎ 24:00 ΠΏΠ½-ΠΏΡ‚ | c 10:00 Π΄ΠΎ 18:00 сб
0 Comments

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

Как Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ с Arduino 🚩 Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° Delphi 🚩 Π­Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½ΠΈΠΊΠ°

Π’Π°ΠΌ понадобится

  • – Arduino;
  • – ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€.

Π˜Π½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡ

Начнём со срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ PROGRAMINO. Π­Ρ‚ΠΎ платная срСда Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Π½ΠΎ Π΅Ρ‘ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ 14-Ρ‚ΠΈ Π΄Π½Π΅ΠΉ бСсплатно. Programino, ΠΊΠ°ΠΊ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚, ΠΎΠ΄Π½Π°ΠΊΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρƒ вас Π±Ρ‹Π»Π° установлСна Arduino IDE. ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΌ запускС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ слСдуСт Π² настройках ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΡƒΡ‚ΡŒ ΠΊ исполняСмому Ρ„Π°ΠΉΠ»Ρƒ arduino.exe. Для этого ΠΈΠ΄Ρ‘ΠΌ Π² мСню настройки: Options -> Editor Settings. ΠŸΠΎΡΠ²ΠΈΡ‚ΡΡ ΠΎΠΊΠ½ΠΎ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΡƒΡ‚ΠΈ ΠΊ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ с Arduino IDE ΠΈ ΡΠΎΠΏΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² Programino.

Π―Π·Ρ‹ΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² Π΄Π°Π½Π½ΠΎΠΉ срСдС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ – Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π² ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠΉ Arduino IDE – Π‘ΠΈ. Π’ΠΎ Π΅ΡΡ‚ΡŒ, ΠΏΠΎ сути, Ссли Π²Ρ‹ ΡƒΠΆΠ΅ ΠΏΠΈΡˆΠ΅Ρ‚Π΅ скСтчи Π² Arduino IDE, Ρ‚ΠΎ Π²Π°ΠΌ Π½Π΅ придётся ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ язык программирования, Ρ‡Ρ‚ΠΎ являСтся большим плюсом Π΄Π°Π½Π½ΠΎΠΉ срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.
Однако ΠΏΠΎΠΌΠΈΠΌΠΎ этого, данная IDE ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ Ρ‚Π°ΠΊΠΎΠΉ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ способ быстрой Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΊΠ°ΠΊ Π°Π²Ρ‚ΠΎΠ΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°. Π’ΠΎ Π΅ΡΡ‚ΡŒ, Π²Π°ΠΌ Π½Π΅ придётся постоянно Π»Π°Π·ΠΈΡ‚ΡŒ Π² справочник ΠΏΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌ Arduino. Π’Ρ‹ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚Π΅ Π½Π°Π±ΠΈΡ€Π°Ρ‚ΡŒ ΠΊΠΎΠ΄, ΠΈ срСда Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ Π²Π°ΠΌ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΈΠ· доступных Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² Ρ‚ΠΎΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Π°ΠΌ Π½ΡƒΠΆΠ΅Π½. НапримСр, Π²Ρ‹ Π½Π°Π±ΠΈΡ€Π°Π΅Ρ‚Π΅ “digi” ΠΈ IDE ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ Π²Π°ΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹: “digitalRead”, “digitalWrite”.
Π”Π°Π²Π°ΠΉΡ‚Π΅ напишСм простой скСтч, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄Π΅ΠΌ постоянно ΠΎΠΏΡ€Π°ΡˆΠΈΠ²Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²Ρ‹Ρ… Π²Ρ‹Π²ΠΎΠ΄ΠΎΠ² Arduino ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ считанныС показания Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΡ€Ρ‚. ΠŸΠΎΡΡ‚Π°Ρ€Π°ΠΉΡ‚Π΅ΡΡŒ Π½Π°Π±ΠΈΡ€Π°Ρ‚ΡŒ скСтч Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ, Π° Π½Π΅ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π²ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΡ‡ΡƒΠ²ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ удобство автодополнСния ΠΊΠΎΠ΄Π° Programino.

Π§Ρ‚ΠΎ Π΅Ρ‰Ρ‘ интСрСсного ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ Programino IDE? Π’ Π΄Π°Π½Π½ΠΎΠΉ срСдС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ нСсколько интСрСсных инструмСнтов, доступных Ρ‡Π΅Ρ€Π΅Π· мСню Tools. НапримСр, Π±Π»ΠΎΠΊΠ½ΠΎΡ‚, Π΄ΠΈΠ·Π°ΠΉΠ½Π΅Ρ€ LCD символов, ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ DEC-BIN-HEX, Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π» ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡ€Ρ‚Π°, Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²Ρ‹ΠΉ ΠΏΠ»ΠΎΡ‚Ρ‚Π΅Ρ€ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅.
ΠžΡΡ‚Π°Π½ΠΎΠ²ΠΈΠΌΡΡ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ Π½Π° инструмСнтС Analog Plotter. Π­Ρ‚ΠΎ срСдство позволяСт Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Π°ΠΌ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ Π² COM-ΠΏΠΎΡ€Ρ‚ ΠΎΡ‚ Arduino. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для отобраТСния ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΈΠΉ ΠΊΠ°ΠΊΠΈΡ…-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²Ρ‹Ρ… Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ²: Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹, влаТности, давлСния, освСщённости ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ….
Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠ»ΠΎΡ‚Ρ‚Π΅Ρ€Π° Π² скСтчС Π½ΡƒΠΆΠ½ΠΎ Π°ΠΊΡ‚ΠΈΠ²ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΡ€Ρ‚ Π½Π° скорости 19200 ΠΊΠ±/сСк. Π”Π°Π½Π½Ρ‹Π΅ выводятся Π½Π° ΠΏΠ»ΠΎΡ‚Ρ‚Π΅Ρ€ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Serial.println(). Запустим Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²Ρ‹ΠΉ ΠΏΠ»ΠΎΡ‚Ρ‚Π΅Ρ€. НаТмём ΠΊΠ½ΠΎΠΏΠΊΡƒ Connect для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ ΠΏΠΎΡ€Ρ‚Ρƒ, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ Ρƒ нас ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Ρ‘Π½ Arduino.

Π•Ρ‰Ρ‘ ΠΎΠ΄Π½Π° интСрСсная Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π° Arduino IDE – B4R, ΠΈΠ»ΠΈ “Basic for Arduino”. Бсылка Π½Π° ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ сайт Ρ‚Π°ΠΊΠΆΠ΅ Π΄Π°Π½Π° Π² ΠΊΠΎΠ½Ρ†Π΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ. Π­Ρ‚Π° срСда Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ интСрСсна Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ язык Basic вмСсто Π‘ΠΈ. Она Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ автодополнСния ΠΊΠΎΠ΄Π°. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΎΠ½Π° ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ бСсплатна.
ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΌ запускС срСда B4R Ρ‚Π°ΠΊΠΆΠ΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΡƒΡ‚ΡŒ ΠΊ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ с Arduino IDE, Π° Ρ‚Π°ΠΊΠΆΠ΅, ΠΏΡ€ΠΈ нСобходимости, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ нСстандартным Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌ ΠΈ ΠΎΠ±Ρ‰ΠΈΠΌ модулям. Π­Ρ‚ΠΈ настройки ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ ΠΈ ΠΏΠΎΠ·ΠΆΠ΅ Ρ‡Π΅Ρ€Π΅Π· мСню Tools -> Configure Paths.

Π”Π°Π²Π°ΠΉΡ‚Π΅ напишСм Π²ΠΎΡ‚ Ρ‚Π°ΠΊΠΎΠΉ скСтч ΠΈ Π·Π°ΠΎΠ΄Π½ΠΎ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π±Π»ΠΈΠΆΠ΅ познакомимся с IDE B4R.
Π’ Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½ΠΎΠΉ части находится ΠΏΠΎΠ»Π΅ для рСдактирования ΠΊΠΎΠ΄Π°. Π’ ΠΏΡ€Π°Π²ΠΎΠΉ – ΠΎΠ±Π»Π°ΡΡ‚ΡŒ Π²ΠΊΠ»Π°Π΄ΠΎΠΊ ΠΈ сами Π²ΠΊΠ»Π°Π΄ΠΊΠΈ: доступных Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ скСтча, ΠΆΡƒΡ€Π½Π°Π»Π° ΠΈ поиска. На ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½Π½Ρ‹ΠΉ Ρ„ΠΎΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Π° Π²ΠΊΠ»Π°Π΄ΠΊΠ° с ΠΆΡƒΡ€Π½Π°Π»ΠΎΠΌ. Π’ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ сюда выводятся сообщСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π·Π°Π΄Π°ΡŽΡ‚ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ Log(). Π’ Π΄Π°Π½Π½ΠΎΠΉ срСдС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Ρ‚ΠΎΡ‡ΠΊΠΈ останова, Ρ‡Ρ‚ΠΎ вСсьма ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π² процСссС ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π·Π°ΠΊΠ»Π°Π΄ΠΊΠΈ для Π±ΠΎΠ»Π΅Π΅ быстрой Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΊΠΎΠ΄Ρƒ.
Π’Ρ‹ Π½Π΅ смоТСтС сразу Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² этой срСдС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Ρ‚.ΠΊ. ΠΎΠ½Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π΄Ρ€ΡƒΠ³ΠΎΠΉ, Π±ΠΎΠ»Π΅Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык, Ρ‡Π΅ΠΌ классичСская Arduino IDE, с Π΄Ρ€ΡƒΠ³ΠΈΠΌ синтаксисом. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, удобство этой срСды ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π³ΠΎ руководства ΠΎΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΎΠΊΡƒΠΏΠ°Π΅Ρ‚ эти нСдостатки.

Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ для Arduino ΠΊΡ€ΠΎΠΌΠ΅ пСрСчислСнных. НапримСр, Codeblocks. Она ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ Ρ‚Π΅ΠΌΠΈ ΠΆΠ΅ возмоТностями, Ρ‡Ρ‚ΠΎ описанныС IDE, поэтому Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ Π΅Ρ‘ Π½Π΅ Π±ΡƒΠ΄Ρƒ.
Но Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅, Π³ΠΎΡ€Π°Π·Π΄ΠΎ Π±ΠΎΠ»Π΅Π΅ ΡƒΠ΄ΠΎΠ±Π½Ρ‹Π΅, срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ для Arduino. Π˜Ρ… использованиС сущСствСнно упростит ΠΈ ускорит Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ Π²Π°ΡˆΠΈΡ… собствСнных скСтчСй.

www.kakprosto.ru

ARDUINO – Π“Π΄Π΅ Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ с нуля?

ΠŸΡ€ΠΈΠ²Π΅Ρ‚. Если стоит Π·Π°Π΄Π°Ρ‡Π° Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠΌΠ΅Π½Π½ΠΎ с нуля, Ρ‚ΠΎ Π½Π΅ стоит сразу Π±Ρ€ΠΎΡΠ°Ρ‚ΡŒΡΡ Π² ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ синтаксиса ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Ρ‚ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ языка, Π° Π½Π°Ρ‡Π°Ρ‚ΡŒ с основ, ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΠΎΠΎΠ±Ρ‰Π΅ Ρ‚Π°ΠΊΠΎΠ΅ ΠΈ ΠΊΠ°ΠΊ ΠΎΠ½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. На эту Ρ‚Π΅ΠΌΡƒ Π΅ΡΡ‚ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΎΠ½Π»Π°ΠΉΠ½-курс ΠΎΡ‚ Π³Π°Ρ€Π²Π°Ρ€Π΄Π° (ΠΎΠ½ бСсплатный, Π΅ΡΡ‚ΡŒ Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ… Ρ‚ΠΈΠΏΠ° edx, Π΅ΡΡ‚ΡŒ Π½Π° Ρ€ΡƒΡ‚Ρ€Π΅ΠΊΠ΅Ρ€Π΅, Π΅ΡΡ‚ΡŒ Π½Π° гарвардском cdn записи всСх Π»Π΅ΠΊΡ†ΠΈΠΉ/сСминаров ΠΈ ΠΏΠ΄Ρ„-ΠΊΠΈ с домашними заданиями). МнС Π² своС врСмя ΠΎΠ½ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠΌΠΎΠ³, называСтся CS50 introduction to computer science. По-ΠΌΠΎΠ΅ΠΌΡƒ, Π΅Π³ΠΎ Π΄Π°ΠΆΠ΅ Π½Π° русский ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΠ» ΠΊΡ‚ΠΎ-Ρ‚ΠΎ Π³Π΄Π΅-Ρ‚ΠΎ. Π’Π°ΠΌ расскаТут ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π±Π°Π·ΠΎΠ²Ρ‹Ρ… понятиях (Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°Ρ…, структурах Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΠ΅-Ρ‡Ρ‚ΠΎ ΠΎΠ± Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°) ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π½Π° C. Π₯ΠΎΡ€ΠΎΡˆΠΈΠΉ курс, Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ.
ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π΅ΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Ρ…ΠΎΡ€ΠΎΡˆΠΈΡ… ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… курсов ΠΎΡ‚ Ρ€Π°Π·Π½Ρ‹Ρ… ΠΈΠ·Π΄Π°Ρ‚Π΅Π»Π΅ΠΉ Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΡƒΡŽ Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΡƒ Π½Π° рСсурсах Π²Ρ€ΠΎΠ΄Π΅ edx ΠΈΠ»ΠΈ udacity, Π² Ρ‚ΠΎΠΌ числС ΠΏΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌ языкам программирования ΠΈ тСхнологиям.
Π•Ρ‰Π΅ для ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ рСсурсы, ΠΊΠ°ΠΊ codecademy.com (Ρ€Π°Π·Π½Ρ‹Π΅ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Π΅ курсы с написаниСм ΠΊΠΎΠ΄Π° прямо Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅, ΠΌΠ½ΠΎΠ³ΠΎ бСсплатных) ΠΈ codewars.com (Π·Π°Π΄Π°Ρ‡ΠΊΠΈ ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… языках с ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ написанными тСстами, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, ΡΡ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ со своим ΠΈ всС Ρ‚Π°ΠΊΠΎΠ΅).
Из русскоязычных рСсурсов – Π½Π° ΡŽΡ‚ΡƒΠ±Π΅ ΠΌΠΎΠΆΠ½ΠΎ довольно ΠΌΠ½ΠΎΠ³ΠΎ Π»Π΅ΠΊΡ†ΠΈΠΉ Π½Π°ΠΉΡ‚ΠΈ. НапримСр, Ρƒ Π’. Π€. Π₯ΠΈΡ€ΡŒΡΠ½ΠΎΠ²Π° Π΅ΡΡ‚ΡŒ ΠΊΠ°Π½Π°Π», Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π»Π΅ΠΆΠ°Ρ‚ записи Π΅Π³ΠΎ Π»Π΅ΠΊΡ†ΠΈΠΉ Π² МЀВИ, Π²Ρ€ΠΎΠ΄Π΅. По структурам Π΄Π°Π½Π½Ρ‹Ρ… Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎΠΉ курс.
По ΠΏΠΎΠ²ΠΎΠ΄Ρƒ ΠΊΠ½ΠΈΠ³, ΠΎΠΏΡΡ‚ΡŒ ΠΆΠ΅, Π½Π΅ стоит Π±Ρ€ΠΎΡΠ°Ρ‚ΡŒΡΡ Π½Π° ΠΊΠ½ΠΈΠ³ΠΈ Π²Ρ€ΠΎΠ΄Π΅ “ΠΈΠ·ΡƒΡ‡ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° Π‘++ с нуля Π·Π° 21 дСнь”. Π£Π³Π»ΡƒΠ±Π»ΡΡ‚ΡŒΡΡ Π² синтаксис языка Π±Π΅Π· понимания Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ этот язык Π΄Π΅Π»Π°Π΅Ρ‚, довольно бСссмыслСнно. Π‘ΠΎΠ»ΡŒΡˆΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ стоит ΡƒΠ΄Π΅Π»ΡΡ‚ΡŒ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ ΠΈ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄, Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ.
И, Π΄Π°, Ссли Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ вопрос, ΠΊΠ°ΠΊΠΎΠΉ язык Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ для Π½Π°Ρ‡Π°Π»Π°, ΠΌΠΎΠ΅ ΠΌΠ½Π΅Π½ΠΈΠ΅ – любой. ΠŸΠΎΠ΄ΡƒΠΌΠ°ΠΉΡ‚Π΅, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠΈΡΠ°Ρ‚ΡŒ большС всСго (Ρ‚Π°ΠΌ, сайты, Π°Π½Π΄Ρ€ΠΎΠΈΠ΄-прилоТСния, дСсктопныС прилоТСния ΠΈ Ρ‚Π΄), ΠΏΠΎΠ³ΡƒΠ³Π»ΠΈΡ‚Π΅, ΠΊΠ°ΠΊΠΎΠΉ язык для этого ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ – ΠΈ Π²ΠΏΠ΅Ρ€Π΅Π΄.
И, самоС Π³Π»Π°Π²Π½ΠΎΠ΅ – Π½Π΅ Π½Π°Π΄ΠΎ “Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒ с паскаля, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ паскаль ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для обучСния”.

community.alexgyver.ru

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Arduino: справочник Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°

Главная

ΠœΡ‹ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌ Π²Π°ΠΌ самый ΠΏΠΎΠ»Π½Ρ‹ΠΉ ΠΈ дополняСмый справочник программиста Arduino. Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ постоянно дополняСтся ΠΈ обновляСтся.

Ардуино – ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ мноТСству ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΎΠ² со всСго ΠΌΠΈΡ€Π° ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ свои ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ с ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ влоТСниями. Π’ ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ – это ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ с ΠΎΠ΄Π½ΠΎΠΈΠΌΡ‘Π½Π½ΠΎΠΉ систСмой управлСния ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ, построСнными Π½Π° языкС Π‘++. БоотвСтствСнно, Ссли Π²Ρ‹ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅, Π²Π°ΠΌ слСдуСт ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ всС Π½ΡŽΠ°Π½ΡΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Arduino.

Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΆΠ΅ составим ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС программирования Arduino ΠΈ ΡƒΡ‚ΠΎΡ‡Π½ΠΈΠΌ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ стоит ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ссли Π²Ρ‹ Π²ΠΏΠ΅Ρ€Π²Ρ‹Π΅ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚Π΅ΡΡŒ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΌ.

ΠžΡΠ½ΠΎΠ²Ρ‹ Arduino

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ ΠΊ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡŽ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π° Ардуино, Π»ΡƒΡ‡ΡˆΠ΅ всСго ΠΈΠΌΠ΅Ρ‚ΡŒ базис Π² сфСрС программирования. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим, Ρ‡Ρ‚ΠΎ Π²ΠΎΠΎΠ±Ρ‰Π΅ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ этот Ρ‚Π΅Ρ€ΠΌΠΈΠ½.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ – это Π·Π°Π΄Π°Π½ΠΈΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ², ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Ρ‘Π½Π½Ρ‹Ρ… Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹ΠΉ язык, с Ρ†Π΅Π»ΡŒΡŽ выполнСния машиной ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ, поставлСнной ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ. БоотвСтствСнно, Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ любой ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ построСн Π½Π° поэтапной Π±Π»ΠΎΠΊ-ΠΌΠΎΠ΄Π΅Π»ΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ описываСтся, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Π°ΡˆΠ΅ΠΌΡƒ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρƒ ΠΈ ΠΊΠ°ΠΊ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ.

Для упрощСния Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π² Ардуино созданы Π³ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Π²Π°ΠΌ достаточно лишь Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΈΠ· Π½ΠΈΡ…, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ Ρ†Π΅Π»ΠΈ. ЕстСствСнно, Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Π²Ρ‹ ΠΌΠ½ΠΎΠ³ΠΎΠ³ΠΎ Π½Π΅ Π΄ΠΎΠ±ΡŒΡ‘Ρ‚Π΅ΡΡŒ, Π½ΠΎ для создания собствСнных Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ потрСбуСтся Π·Π½Π°Π½ΠΈΠ΅ языка Π‘++ Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΈ построСна ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ° Ρ‡ΠΈΠΏΠ°.

ΠšΠ»ΡŽΡ‡Π΅Π²Π°Ρ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ систСмы Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ характСристики Arduino ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½Ρ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄ΠΎΠΊΡƒΠΏΠ°Π΅ΠΌΡ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ², ΠΈ Π²Ρ‹ всСгда ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡ… ΠΏΠΎΠ΄ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΏΠΎΠ΄ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚. БоотвСтствСнно, СдинствСнным вашим ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ΠΌ являСтся Π·Π½Π°Π½ΠΈΠ΅ языка ΠΈ Π΅Π³ΠΎ возмоТностСй, Π° Ρ‚Π°ΠΊΠΆΠ΅ собствСнная фантазия.

ВсС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ строятся ΠΈΠ· ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Π½Π΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Π½Ρ‹ для Π‘++. Π­Ρ‚ΠΈΠΌΠΈ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π°ΠΌΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² ΠΈ способы ΠΈΡ… примСнСния. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ любая функция, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠ°Ρ Π² ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π΅ для получСния свСдСний ΠΈΠ»ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ сигнала, – это Π½Π°Π±ΠΎΡ€ ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ записан Π² Π³Π»Π°Π²Π½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅. И Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Ρ‹ Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ достаточно ΠΎΠΏΡ‹Ρ‚Π° ΠΈ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, ΠΊΠ°ΠΊΡƒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ ΠΈ для ΠΊΠ°ΠΊΠΎΠΉ Ρ†Π΅Π»ΠΈ Π²Π°ΠΌ стоит Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ.

Π“Π»Π°Π²Π½Ρ‹ΠΉ ΠΆΠ΅ нСдостаток конструирования с Arduino слоТных ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ придётся с нуля ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ ΠΈ ΠΏΠΎΠ΄Π±ΠΈΡ€Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ для систСмы, поэтому Π»ΡƒΡ‡ΡˆΠ΅ сначала ΠΏΠΎΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π° ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΡ… Π·Π°Π΄Π°Ρ‡Π°Ρ….

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

Π§Π°Ρ‰Π΅ всСго примСняСтся ООП. Π‘Π°ΠΌ Π‘++ ΠΈΠΌΠ΅Π΅Ρ‚ ядро ΠΈΠ· многочислСнных Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈΠ»ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², поэтому, Ссли Π²Ρ‹ ΡΠΎΠ±ΠΈΡ€Π°Π΅Ρ‚Π΅ΡΡŒ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π²ΠΎ всём ΠΊΠ°Ρ€Π΄ΠΈΠ½Π°Π»ΡŒΠ½ΠΎ, стоит Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒ с освоСния языка с нуля.

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ программирования Arduino

ИмСнно язык, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ базируСтся систСма, ΠΈ являСтся Π³Π»Π°Π²Π½ΠΎΠΉ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒΡŽ программирования Π½Π° Ардуино. Π’Π΅Π΄ΡŒ ΠΏΡ€ΠΈ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ сама ΠΏΠ»Π°Ρ‚Π° ΠΈ Ρ€Π°Π±ΠΎΡ‚Π° с Π½Π΅ΠΉ достаточно просты, с Π½ΠΈΠ·ΠΊΠΈΠΌ ΠΏΠΎΡ€ΠΎΠ³ΠΎΠΌ вхоТдСния, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡΠ²ΠΎΠΈΡ‚ΡŒ Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹ΠΉ язык программирования ΠΈ Π² ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²Π΅ Π²Π»Π°Π΄Π΅Ρ‚ΡŒ ΠΈΠΌ, потрСбуСтся нСсколько Π»Π΅Ρ‚.

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

  1. Низкий ΠΏΠΎΡ€ΠΎΠ³ вхоТдСния. Π­Ρ‚ΠΎΡ‚ ΠΏΡƒΠ½ΠΊΡ‚ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈ Π² нСдостатках, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΈΠ·-Π·Π° простоты систСмы ΠΈ отсутствия Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΊ базису ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ Π² сСти гуляСт мноТСство Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, написанных уТасным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ. На Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚, ΡƒΠΉΠ΄Ρ‘Ρ‚ большС Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Ρ‡Π΅ΠΌ Π½Π° созданиС своСй собствСнной. А стандартных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΎΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Π½Π΅ Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚ для ΡΠ΅Ρ€ΡŒΡ‘Π·Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡.
  2. ΠžΠ±ΡˆΠΈΡ€Π½ΠΎΠ΅ ΠΊΠΎΠΌΡŒΡŽΠ½ΠΈΡ‚ΠΈ. Π­Ρ‚ΠΎ Π³Π»Π°Π²Π½ΠΎΠ΅ достоинство Ардуино ΠΏΠ΅Ρ€Π΅Π΄ Π΅Π³ΠΎ ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ‚Π°ΠΌΠΈ, вСдь Π²Ρ‹ Π½Π°ΠΉΠ΄Ρ‘Ρ‚Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‰ΠΈΡ…ΡΡ созданиСм ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° Π½Ρ‘ΠΌ, ΠΊΠ°ΠΊ русскоязычных, Ρ‚Π°ΠΊ ΠΈ англоязычных. Но Ссли Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ†Π΅Π½Π½Ρ‹Π΅ совСты ΠΈ ΠΏΠΎΠ³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΡΡ Π² Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΊΠΎΠΌΡŒΡŽΠ½ΠΈΡ‚ΠΈ, слСдуСт всё ΠΆΠ΅ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ английский язык. Π’Π°ΠΊ ΠΊΠ°ΠΊ большая Ρ‡Π°ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ встрСтятся, ΡƒΠΆΠ΅ Π΄Π°Π²Π½ΠΎ Ρ€Π΅ΡˆΠ΅Π½Ρ‹ Π² Π“ΡƒΠ³Π»Π΅, Π½ΠΎ, Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ, ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ Π½Π° английском.
  3. Π‘ΠΎΠ»ΡŒΡˆΠΎΠ΅ количСство Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, ΠΏΠΎΠ΄ Ρ€Π°Π·Π½Ρ‹Π΅ случаи. Но, ΠΊΠ°ΠΊ ΡƒΠΆΠ΅ описано Ρ‡ΡƒΡ‚ΡŒ Π²Ρ‹ΡˆΠ΅, Ρƒ этого Π΅ΡΡ‚ΡŒ ΠΈ свои нСдостатки.

Π˜ΠΌΠ΅Π΅Ρ‚ΡΡ Ρƒ программирования Π½Π° Ардуино ΠΈ ряд вСсомых минусов:

  1. Низкая ΠΏΠ»Π°Π½ΠΊΠ° для вхоТдСния ΠΏΡ€Π΅Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, ΠΊΠΎΠΈΠΌΠΈ Π½Π°ΠΏΠΎΠ»Π½Π΅Π½Π° ΡΠ΅Ρ‚ΡŒ, Π² ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ бСсполСзный мусор. Π’Π΅Π΄ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ ΠΈΠ· Π½ΠΈΡ… Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ просто ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ ΠΈ написаны Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ Π·Π½Π°Π½ΠΈΠΉ основ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ, Π° Ρ‡Π°ΡΡ‚ΡŒ – вовсС Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, ΠΈ нСпонятно, Π·Π°Ρ‡Π΅ΠΌ Π°Π²Ρ‚ΠΎΡ€Ρ‹ ΠΈΡ… создавали. Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΠΉΡ‚ΠΈ ΠΏΠΎΠ΄ΡΠΏΠΎΡ€ΡŒΠ΅ ΠΏΠΎΠ΄ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅Ρ€Π΅Π»ΠΎΠΏΠ°Ρ‚ΠΈΡ‚ΡŒ нСсколько англоязычных Ρ„ΠΎΡ€ΡƒΠΌΠΎΠ² ΠΈΠ»ΠΈ ΠΆΠ΅ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ с нуля.
  2. БлоТности программирования Π½Π° Π‘++. На Π΄Π΅Π»Π΅ – это ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ»ΠΎΠΆΠ½Π΅ΠΉΡˆΠΈΡ… языков ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ программирования, для создания ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΎΠΊ ΠΈ Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡. Однако, Ссли Π²Ρ‹ ΠΈΠΌΠ΅Π»ΠΈ ΠΎΠΏΡ‹Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π½ΠΈΠΌ ΠΈ Π·Π½Π°Π΅Ρ‚Π΅ хотя Π±Ρ‹ основныС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ Ρ…ΠΎΡ‚ΡŒ с ΠΎΠ΄Π½ΠΈΠΌ Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ ЯП, Ρ‚Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, Π²Π°ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΡ‰Π΅ ΠΎΡΠ²ΠΎΠΈΡ‚ΡŒΡΡ.
  3. Низкая ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΎΡ‚ΠΊΠ»ΠΈΠΊΠ° самих Ρ‡ΠΈΠΏΠΎΠ² ΠΈ ΠΈΡ… слабыС характСристики. Π”Π°, ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρ‹ Ардуино ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ΄ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΡƒΡŽ Π·Π°Π΄Π°Ρ‡Ρƒ, Π΄ΠΎΠΊΡƒΠΏΠ°Ρ‚ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΈ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΈ, Π½ΠΎ это ΠΈΠ³Ρ€Π°Π΅Ρ‚ с Π½ΠΈΠΌΠΈ Π·Π»ΡƒΡŽ ΡˆΡƒΡ‚ΠΊΡƒ. Π’Π°ΠΊ ΠΊΠ°ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π½Π΅ Π·Π½Π°ΡŽΡ‚, для Ρ‡Π΅Π³ΠΎ Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… Π΄Π΅Ρ‚ΠΈΡ‰Π΅, ΠΎΠ½ΠΈ ΡƒΡΡ€Π΅Π΄Π½ΡΡŽΡ‚ всС ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ люди, ΡΠΎΠ·Π΄Π°ΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠ΅ ΠΏΠΎΠ΄Π΅Π»ΠΊΠΈ, ΠΏΠ΅Ρ€Π΅ΠΏΠ»Π°Ρ‡ΠΈΠ²Π°ΡŽΡ‚ Π·Π° Π½Π΅Π½ΡƒΠΆΠ½ΡƒΡŽ ΠΌΠΎΡ‰Π½ΠΎΡΡ‚ΡŒ, Π° Ρ‚Π΅ΠΌ, ΠΊΡ‚ΠΎ занимаСтся Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΡ‚Π΅Ρ…Π½ΠΈΠΊΠΎΠΉ ΠΈΠ»ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ ΠΊΠ°ΠΊΠΈΡ…-Ρ‚ΠΎ процСссов, приходится Π΄ΠΎΠΊΡƒΠΏΠ°Ρ‚ΡŒ ΠΈ ΠΏΠ°ΡΡ‚ΡŒ мноТСство Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚.

Как Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ардуино ΠΈΠΌΠ΅Π΅Ρ‚ мноТСство нюансов, ΠΈ Π½Π΅ ΡΡ‚ΠΎΠ»ΡŒ Π΄Ρ€ΡƒΠΆΠ΅Π»ΡŽΠ±Π½Π° для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ², ΠΊΠ°ΠΊ выглядит Π½Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ взгляд. Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, Ссли Π²Ρ‹ ΠΈΠΌΠ΅Π΅Ρ‚Π΅ малСйший ΠΎΠΏΡ‹Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с языками программирования, Π²Π°ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ ΠΊΡƒΠ΄Π° ΠΏΡ€ΠΎΡ‰Π΅ ΠΎΡΠ²ΠΎΠΈΡ‚ΡŒΡΡ.

Как Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Arduino

Если Π²Ρ‹ Π½ΠΈΠΊΠΎΠ³Π΄Π° Ρ€Π°Π½Π΅Π΅ Π½Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π»ΠΈ, ΠΈ это ваш ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΎΠΏΡ‹Ρ‚, Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² Arduino ΠΏΠΎΠΉΠ΄Ρ‘Ρ‚ ΠΊΡƒΠ΄Π° ΠΏΡ€ΠΎΡ‰Π΅, Ссли Π²Ρ‹ Π½Π°Ρ‡Π½Ρ‘Ρ‚Π΅ с основ. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΠΊΠΎΠ³Π΄Π° Π² ΠΏΠ»Π°Π½Π°Ρ… Ρƒ вас Π½Π΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… слоТных ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π° Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ… ΠΈ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒ, ΠΈΠ· Ρ‡Π΅Π³ΠΎ состоят ΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Π­Ρ‚ΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Ρ…ΠΎΡ€ΠΎΡˆΠΈΡ… способов обучСния, Π½ΠΎ Ρ‚ΠΎΠ³Π΄Π° стоит ΠΈΡΠΊΠ°Ρ‚ΡŒ Π½Π°Π±ΠΎΡ€Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ писались профСссионалами, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ²Π΅Ρ€Π΅Π½Π½Ρ‹ΠΌ Π² ΠΈΡ… ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ. Π˜Π½Π°Ρ‡Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ ΠΈ, Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅, ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ Ρ‚Π΅ Π² своих ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ….

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

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² Arduino

Π‘Π°ΠΌΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ардуино дСлится Π½Π° Ρ‚Ρ€ΠΈ этапа:

  1. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈΠ»ΠΈ скачиваниС Π³ΠΎΡ‚ΠΎΠ²ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ.
  2. Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° этих Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Π² ΠΏΠΎΡΡ‚ΠΎΡΠ½Π½ΡƒΡŽ ΠΏΠ°ΠΌΡΡ‚ΡŒ Ρ‡ΠΈΠΏΠ°. Π­Ρ‚ΠΎ Π΅Ρ‰Ρ‘ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΎΠΉ.
  3. Π’Π²ΠΎΠ΄ этих Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡƒΡŽ строку, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, АВ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠ»Π°Ρ‚Π° Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ»Π° Ρ‚Π΅ ΠΈΠ»ΠΈ ΠΈΠ½Ρ‹Π΅ дСйствия.

Если Π²Ρ‹ Π΄Π΅Π»Π°Π΅Ρ‚Π΅ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ простоС, ΠΈ Π²Π°ΠΌ Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚ Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π²Ρ‹Π΅ Π΄Π²Π° ΠΏΡƒΠ½ΠΊΡ‚Π°.

Π‘Π°ΠΌΡ‹Π΅ простыС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ с использованиСм Arduino

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² простых ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² с Ардуино мноТСство, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅:

  1. Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ Π΄Π°Ρ‚Ρ‡ΠΈΠΊ освСщённости, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ΄ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ LED Π»Π°ΠΌΠΏΡ‹ ΠΏΠΎΠ΄ Ρ‚Ρƒ ΡΡ€ΠΊΠΎΡΡ‚ΡŒ, которая Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ° Π² ΠΊΠΎΠΌΠ½Π°Ρ‚Π΅.
  2. Автоматизация Π»ΡŽΠ±Ρ‹Ρ… Π²Π΅Ρ‰Π΅ΠΉ Π² вашСм Π΄ΠΎΠΌΠ΅. НапримСр, Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ-Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ свСта, открытия Π΄Π²Π΅Ρ€Π΅ΠΉ ΠΈ ΠΏΡ€ΠΎΡ‡Π΅Π΅.
  3. Автоматизация ΠΎΡ€Π°Π½ΠΆΠ΅Ρ€Π΅ΠΈ.

Π₯отя это ΠΈ Π·Π²ΡƒΡ‡ΠΈΡ‚ достаточно ΡΡ‚Ρ€Π°ΡˆΠ½ΠΎ, Π½Π° Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ этих ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², благодаря обилию ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΏΠΎ Π½ΠΈΠΌ Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅, Π²Ρ‹ Π½Π΅ ΠΏΠΎΡ‚Ρ€Π°Ρ‚ΠΈΡ‚Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈ сил.

arduinoplus.ru

Arduino сайт Π½Π° русском для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… мастСров Π°Ρ€Π΄ΡƒΠΈΠ½ΠΎ

Ардуино для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

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

Arduino – это элСктронныС ΠΏΠ»Π°Ρ‚Ρ‹, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΈ, Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π»ΠΈ, экраны ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΡ… элСктронных ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ². ΠŸΠ»Π°Ρ‚Π° Ардуино Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ этими ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ Π² Π½Π΅Π΅ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅. Π‘Π°ΠΌΡ‹Π΅ популярныС ΠΏΠ»Π°Ρ‚Ρ‹ для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… – это Arduino Uno, Arduino Mega, Arduino Nano ΠΈ Arduino Leonardo. ΠšΡ€ΠΎΠΌΠ΅ этого Π΅ΡΡ‚ΡŒ мноТСство Β Π΄Ρ€ΡƒΠ³ΠΈΡ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ², подходящих для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… случаСв.

Arduino – это Π΅Ρ‰Π΅ ΠΈ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ бСсплатная срСда программирования Arduino IDE, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ (скСтчи) для ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Π΅Ρ‚ΡΡ Π² ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ Π±ΡƒΠΊΠ²Π°Π»ΡŒΠ½ΠΎ ΠΎΠ΄Π½ΠΈΠΌ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ. Никаких особых Π·Π½Π°Π½ΠΈΠΉ Π½Π΅ трСбуСтся! Β Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π°ΠΆΠ΅ Π½Π΅ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ – просто Π½Π°ΠΉΡ‚ΠΈ ΠΈ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ скСтч, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ просто ΠΎΡ‚ΠΊΡ€ΠΎΠ΅Ρ‚Π΅ Π² Arduino IDE.

Arduino – это сообщСство ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΎΠ², всСгда Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… ΠΏΠΎΠΌΠΎΡ‡ΡŒ совСтом. Π­Ρ‚ΠΎ ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ΅ количСство сайтов с Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ, ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ ΠΈ схСмами. ΠΠ°Ρ‡Π°Ρ‚ΡŒ ΠΌΠΎΠΆΠ½ΠΎ с ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ сайта, Π½ΠΎ ΠΊΡ€ΠΎΠΌΠ΅ Π½Π΅Π³ΠΎ сСгодня появилось ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ΅ количСство сайтов Π½Π° русском с Ρ„ΠΎΡ€ΡƒΠΌΠΎΠΌ русскоязычных ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΎΠ².

Arduino для Π΄Π΅Ρ‚Π΅ΠΉ

ΠŸΡ€ΠΈΠ½ΡΡ‚ΠΎ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Arduino довольно слоТСн для Π΄Π΅Ρ‚Π΅ΠΉ срСднСй ΡˆΠΊΠΎΠ»Ρ‹, Π½ΠΎ это Π½Π΅ Ρ‚Π°ΠΊ! БСгодня Π΅ΡΡ‚ΡŒ ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ΅ количСство инструмСнтов ΠΈ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΡ… Π±Π΅Π· ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ ΠΏΡ€Π΅ΠΏΠΎΠ΄Π°Π²Π°Ρ‚ΡŒ Π°Ρ€Π΄ΡƒΠΈΠ½ΠΎ Π½Π° ΠΊΡ€ΡƒΠΆΠΊΠ°Ρ… Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΡ‚Π΅Ρ…Π½ΠΈΠΊΠΈ Π΄Π°ΠΆΠ΅ самых ΠΌΠ°Π»Π΅Π½ΡŒΠΊΠΈΡ…! На нашСм сайтС Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΉΡ‚ΠΈ ΡƒΡ€ΠΎΠΊΠΈ Ардуино, ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‰ΠΈΠ΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π²Ρ‹Π΅ шаги Π² элСктроникС, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΈ Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΡ‚Π΅Ρ…Π½ΠΈΠΊΠ΅.

Arduino – это Ρ†Π΅Π»Ρ‹ΠΉ ΠΌΠΈΡ€, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡ‡ΡƒΠ²ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ сСбя волшСбником. Π›ΡƒΡ‡ΡˆΠΈΠΉ инструмСнт для приобщСния Π΄Π΅Ρ‚Π΅ΠΉ ΠΊ тСхнологиям ΠΈ Π²Π΄ΠΎΡ…Π½ΠΎΠ²Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€Π½ΠΎΠ³ΠΎ творчСства! Для обучСния Π΄Π΅Ρ‚Π΅ΠΉ элСктроникС Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρ‹ Arduino Uno, Mega ΠΈΠ»ΠΈ Nano, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°Π±ΠΎΡ€Ρ‹ ΠΈ конструкторы Π°Ρ€Π΄ΡƒΠΈΠ½ΠΎ российских ΠΈ китайских ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ΠΉ. ΠžΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π΄Π΅Ρ‚Π΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ Ардуино Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ с использованиСм срСды программирования Arduino IDE ΠΈΠ»ΠΈ ΠΆΠ΅ Π² Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… срСдах ArduBlock, S4A, mBlock, основанных Π½Π° Scratch.

arduinomaster.ru

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° языкС C++ для Arduino [АмпСрка / Π’ΠΈΠΊΠΈ]

Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€ минимально Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° C++ для Arduino, которая Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π΄Π΅Π»Π°Π΅Ρ‚:

void setup()
{
}
Β 
void loop()
{
}

РазбСрёмся Ρ‡Ρ‚ΠΎ здСсь написано ΠΈ ΠΏΠΎΡ‡Π΅ΠΌΡƒ это ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ: ΠΏΠΎΡ‡Π΅ΠΌΡƒ нСльзя ΠΎΠ±ΠΎΠΉΡ‚ΠΈΡΡŒ просто пустым Ρ„Π°ΠΉΠ»ΠΎΠΌ.

Из Ρ‡Π΅Π³ΠΎ состоит ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°

Для Π½Π°Ρ‡Π°Π»Π° стоит ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ нСльзя Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΊΠ½ΠΈΠ³Ρƒ: ΠΎΡ‚ ΠΊΠΎΡ€ΠΊΠΈ Π΄ΠΎ ΠΊΠΎΡ€ΠΊΠΈ, свСрху Π²Π½ΠΈΠ·, строку Π·Π° строкой. Π›ΡŽΠ±Π°Ρ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° состоит ΠΈΠ· ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Π±Π»ΠΎΠΊΠΎΠ². Начало Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠ΄Π° Π² C/C++ обозначаСтся Π»Π΅Π²ΠΎΠΉ Ρ„ΠΈΠ³ΡƒΡ€Π½ΠΎΠΉ скобкой {, Π΅Π³ΠΎ ΠΊΠΎΠ½Π΅Ρ† β€” ΠΏΡ€Π°Π²ΠΎΠΉ Ρ„ΠΈΠ³ΡƒΡ€Π½ΠΎΠΉ скобкой }.

Π‘Π»ΠΎΠΊΠΈ Π±Ρ‹Π²Π°ΡŽΡ‚ Ρ€Π°Π·Π½Ρ‹Ρ… Π²ΠΈΠ΄ΠΎΠ² ΠΈ ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ· Π½ΠΈΡ… ΠΊΠΎΠ³Π΄Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ зависит ΠΎΡ‚ Π²Π½Π΅ΡˆΠ½ΠΈΡ… условий. Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ минимальной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ 2 Π±Π»ΠΎΠΊΠ°. Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π±Π»ΠΎΠΊΠΈ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Ѐункция β€” это просто Π±Π»ΠΎΠΊ ΠΊΠΎΠ΄Π° с Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΊΡ‚ΠΎ-Ρ‚ΠΎ Π·Π°Ρ‚Π΅ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΈΠ·-Π²Π½Π΅.

Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС Ρƒ нас 2 Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ с ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ setup ΠΈ loop. Π˜Ρ… присутствиС ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π² любой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π½Π° C++ для Arduino. Они ΠΌΠΎΠ³ΡƒΡ‚ Π½ΠΈΡ‡Π΅Π³ΠΎ ΠΈ Π½Π΅ Π΄Π΅Π»Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊ Π² нашСм случаС, Π½ΠΎ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ написаны. Π˜Π½Π°Ρ‡Π΅ Π½Π° стадии компиляции Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ ΠΎΡˆΠΈΠ±ΠΊΡƒ.

Классика ΠΆΠ°Π½Ρ€Π°: ΠΌΠΈΠ³Π°ΡŽΡ‰ΠΈΠΉ свСтодиод

Π”Π°Π²Π°ΠΉΡ‚Π΅ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΠΌ Π½Π°ΡˆΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ происходило Ρ…ΠΎΡ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ. На Arduino, ΠΊ 13-ΠΌΡƒ ΠΏΠΈΠ½Ρƒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Ρ‘Π½ свСтодиод. Им ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ, Ρ‡Π΅ΠΌ ΠΌΡ‹ ΠΈ займёмся.

void setup()
{
    pinMode(13, OUTPUT);
}
Β 
void loop()
{
    digitalWrite(13, HIGH);
    delay(100);
    digitalWrite(13, LOW);
    delay(900);
}

Π‘ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠΉΡ‚Π΅, Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ. Π’Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΆΠ΄ΡƒΡŽ сСкунду свСтодиод Π½Π° ΠΏΠ»Π°Ρ‚Π΅ ΠΏΠΎΠΌΠΈΠ³ΠΈΠ²Π°Π΅Ρ‚. РазбСрёмся ΠΏΠΎΡ‡Π΅ΠΌΡƒ этот ΠΊΠΎΠ΄ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ СТСсСкундному миганию.

Π’ наши Ρ€Π°Π½Π΅Π΅ пустыС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΌΡ‹ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ нСсколько Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ. Они Π±Ρ‹Π»ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½Ρ‹ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ„ΠΈΠ³ΡƒΡ€Π½Ρ‹ΠΌΠΈ скобками Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ setup ΠΈ loop. Π’ setup появилось ΠΎΠ΄Π½ΠΎ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, Π° Π² loop сразу 4.

КаТдоС Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ β€” это ΠΏΡ€ΠΈΠΊΠ°Π· процСссору ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π½Π΅Ρ‡Ρ‚ΠΎ. ВыраТСния Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° ΠΈΡΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΠΎΠ΄Π½ΠΎ Π·Π° Π΄Ρ€ΡƒΠ³ΠΈΠΌ, строго ΠΏΠΎ порядку Π±Π΅Π· всяких ΠΏΠ°ΡƒΠ· ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ. Π’ΠΎ Π΅ΡΡ‚ΡŒ, Ссли ΠΌΡ‹ Π³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎΠ± ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌ Π±Π»ΠΎΠΊΠ΅ ΠΊΠΎΠ΄Π°, Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ свСрху Π²Π½ΠΈΠ·, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ Ρ‡Ρ‚ΠΎ дСлаСтся.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠΉΠΌΡ‘ΠΌ Π² ΠΊΠ°ΠΊΠΎΠΌ порядкС ΠΈΡΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ сами Π±Π»ΠΎΠΊΠΈ, Ρ‚.Π΅. Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ setup ΠΈ loop. НС Π·Π°Π΄ΡƒΠΌΡ‹Π²Π°ΠΉΡ‚Π΅ΡΡŒ ΠΏΠΎΠΊΠ° Ρ‡Ρ‚ΠΎ Π·Π½Π°Ρ‡Π°Ρ‚ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Π΅ выраТСния, просто ΠΏΠΎΠ½Π°Π±Π»ΡŽΠ΄Π°ΠΉΡ‚Π΅ Π·Π° порядком.

  • Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Arduino Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ, ΠΏΠ΅Ρ€Π΅ΠΏΡ€ΠΎΡˆΠΈΠ²Π°Π΅Ρ‚ΡΡ ΠΈΠ»ΠΈ наТимаСтся ΠΊΠ½ΠΎΠΏΠΊΠ° RESET, Β«Π½Π΅Ρ‡Ρ‚ΠΎΒ» Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ setup. Π’ΠΎ Π΅ΡΡ‚ΡŒ заставляСт ΠΈΡΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ выраТСния Π² Π½Π΅ΠΉ.

  • Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ€Π°Π±ΠΎΡ‚Π° setup Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ΡΡ, сразу ΠΆΠ΅ Β«Π½Π΅Ρ‡Ρ‚ΠΎΒ» Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ loop.

  • Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ€Π°Π±ΠΎΡ‚Π° loop Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ΡΡ, сразу ΠΆΠ΅ Β«Π½Π΅Ρ‡Ρ‚ΠΎΒ» Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ loop Π΅Ρ‰Ρ‘ Ρ€Π°Π· ΠΈ Ρ‚Π°ΠΊ Π΄ΠΎ бСсконСчности.

Если ΠΏΡ€ΠΎΠ½ΡƒΠΌΠ΅Ρ€ΠΎΠ²Π°Ρ‚ΡŒ выраТСния ΠΏΠΎ порядку, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ, получится:

void setup()
{
    pinMode(13, OUTPUT);     ❢
}
Β 
void loop()
{
    digitalWrite(13, HIGH);  ❷    ❻    ❿
    delay(100);              ❸    ❼    …
    digitalWrite(13, LOW);   ❹    ❽ 
    delay(900);              ❺    ❾ 
}

Π•Ρ‰Ρ‘ Ρ€Π°Π· Π½Π°ΠΏΠΎΠΌΠ½ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π½Π΅ стоит ΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ Π²ΠΎΡΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ всю ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, читая свСрху Π²Π½ΠΈΠ·. Π‘Π²Π΅Ρ€Ρ…Ρƒ Π²Π½ΠΈΠ· читаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ содСрТимоС Π±Π»ΠΎΠΊΠΎΠ². ΠœΡ‹ Π²ΠΎΠΎΠ±Ρ‰Π΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ порядок объявлСний setup ΠΈ loop.

void loop()
{
    digitalWrite(13, HIGH);  ❷    ❻    ❿
    delay(100);              ❸    ❼    …
    digitalWrite(13, LOW);   ❹    ❽ 
    delay(900);              ❺    ❾ 
}
Β 
void setup()
{
    pinMode(13, OUTPUT);     ❢
}

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΎΡ‚ этого Π½Π΅ измСнится Π½ΠΈ Π½Π° ΠΉΠΎΡ‚Ρƒ: послС компиляции Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ эквивалСнтный Π±ΠΈΠ½Π°Ρ€Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ».

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°ΡŽΡ‚ выраТСния

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ ΠΏΠΎΠ½ΡΡ‚ΡŒ ΠΏΠΎΡ‡Π΅ΠΌΡƒ написанная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ Π² ΠΈΡ‚ΠΎΠ³Π΅ ΠΊ миганию свСтодиода.

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

Π­Ρ‚ΠΎ дСлаСтся Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ setup:

pinMode(13, OUTPUT);

ВыраТСния Π±Ρ‹Π²Π°ΡŽΡ‚ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ: арифмСтичСскими, дСкларациями, опрСдСлСниями, условными ΠΈ Ρ‚.Π΄. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΌΡ‹ Π² Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ осущСствляСм Π²Ρ‹Π·ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅? Π£ нас Π΅ΡΡ‚ΡŒ свои Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ setup ΠΈ loop, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ Ρ‡Π΅ΠΌ-Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π½Π°Π·Π²Π°Π»ΠΈ Β«Π½Π΅Ρ‡Ρ‚ΠΎΒ». Π’Π°ΠΊ Π²ΠΎΡ‚ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΆΠ΅ написаны Π³Π΄Π΅-Ρ‚ΠΎ.

ΠšΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎ Π² нашСм setup ΠΌΡ‹ Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ с ΠΈΠΌΠ΅Π½Π΅ΠΌ pinMode. Она устанавливаСт Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎ Π½ΠΎΠΌΠ΅Ρ€Ρƒ ΠΏΠΈΠ½ Π² Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ: Π²Ρ…ΠΎΠ΄ ΠΈΠ»ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄. О ΠΊΠ°ΠΊΠΎΠΌ ΠΏΠΈΠ½Π΅ ΠΈ ΠΎ ΠΊΠ°ΠΊΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΈΠ΄Ρ‘Ρ‚ Ρ€Π΅Ρ‡ΡŒ указываСтся Π½Π°ΠΌΠΈ Π² ΠΊΡ€ΡƒΠ³Π»Ρ‹Ρ… скобках, Ρ‡Π΅Ρ€Π΅Π· Π·Π°ΠΏΡΡ‚ΡƒΡŽ, сразу послС ΠΈΠΌΠ΅Π½ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Π’ нашСм случаС ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ 13-ΠΉ ΠΏΠΈΠ½ Ρ€Π°Π±ΠΎΡ‚Π°Π» ΠΊΠ°ΠΊ Π²Ρ‹Ρ…ΠΎΠ΄. OUTPUT ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Π²Ρ‹Ρ…ΠΎΠ΄, INPUT β€” Π²Ρ…ΠΎΠ΄.

Π£Ρ‚ΠΎΡ‡Π½ΡΡŽΡ‰ΠΈΠ΅ значСния, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ 13 ΠΈ OUTPUT Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Π‘ΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎ Ρƒ всСх Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎ 2 Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°. Бколько Ρƒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² зависит ΠΎΡ‚ сути Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Π΅Ρ‘ написал Π°Π²Ρ‚ΠΎΡ€. ΠœΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ с ΠΎΠ΄Π½ΠΈΠΌ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠΌ, трСмя, Π΄Π²Π°Π΄Ρ†Π°Ρ‚ΡŒΡŽ; Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π±Π΅Π· Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² вовсС. Π’ΠΎΠ³Π΄Π° для ΠΈΡ… Π²Ρ‹Π·ΠΎΠ²Π° ΠΊΡ€ΡƒΠ³Π»Ρ‹Π΅ скобка открываСтся ΠΈ Ρ‚ΡƒΡ‚ ΠΆΠ΅ закрываСтся:

noInterrupts();

На самом Π΄Π΅Π»Π΅, Π²Ρ‹ ΠΌΠΎΠ³Π»ΠΈ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, наши Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ setup ΠΈ loop Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‚ Π½ΠΈΠΊΠ°ΠΊΠΈΠ΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹. И Π·Π°Π³Π°Π΄ΠΎΡ‡Π½ΠΎΠ΅ Β«Π½Π΅Ρ‡Ρ‚ΠΎΒ» Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΈΡ… с пустыми скобками Π² Π½ΡƒΠΆΠ½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚.

ВСрнёмся ΠΊ Π½Π°ΡˆΠ΅ΠΌΡƒ ΠΊΠΎΠ΄Ρƒ. Π˜Ρ‚Π°ΠΊ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΌΡ‹ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅ΠΌ Π²Π΅Ρ‡Π½ΠΎ ΠΌΠΈΠ³Π°Ρ‚ΡŒ свСтодиодом, ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ ΠΏΠΈΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· Π±Ρ‹Ρ‚ΡŒ сдСлан Π²Ρ‹Ρ…ΠΎΠ΄ΠΎΠΌ ΠΈ Π·Π°Ρ‚Π΅ΠΌ ΠΌΡ‹ Π½Π΅ Ρ…ΠΎΡ‚ΠΈΠΌ Π²ΡΠΏΠΎΠΌΠΈΠ½Π°Ρ‚ΡŒ ΠΎΠ± этом. Для этого идСологичСски ΠΈ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° функция setup: Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΏΠ»Π°Ρ‚Ρƒ ΠΊΠ°ΠΊ Π½ΡƒΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°Ρ‚Π΅ΠΌ с Π½Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ.

ΠŸΠ΅Ρ€Π΅ΠΉΠ΄Ρ‘ΠΌ ΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ loop:

void loop()
{
    digitalWrite(13, HIGH);
    delay(100);
    digitalWrite(13, LOW);
    delay(900);
}

Она, ΠΊΠ°ΠΊ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΎΡΡŒ, вызываСтся сразу послС setup. И вызываСтся снова ΠΈ снова ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ сама заканчиваСтся. Ѐункция loop называСтся основным Ρ†ΠΈΠΊΠ»ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ идСологичСски ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для выполнСния ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹. Π’ нашСм случаС полСзная Ρ€Π°Π±ΠΎΡ‚Π° β€” ΠΌΠΈΠ³Π°Π½ΠΈΠ΅ свСтодиодом.

ΠŸΡ€ΠΎΠΉΠ΄Ρ‘ΠΌΡΡ ΠΏΠΎ выраТСниям ΠΏΠΎ порядку. Π˜Ρ‚Π°ΠΊ, ΠΏΠ΅Ρ€Π²ΠΎΠ΅ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ β€” это Π²Ρ‹Π·ΠΎΠ² встроСнной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ digitalWrite. Она ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для ΠΏΠΎΠ΄Π°Ρ‡ΠΈ Π½Π° Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΠΈΠ½ логичСского нуля (LOW, 0 Π²ΠΎΠ»ΡŒΡ‚) ΠΈΠ»ΠΈ логичСской Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹ (HIGH, 5 Π²ΠΎΠ»ΡŒΡ‚) Π’ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ digitalWrite пСрСдаётся 2 Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°: Π½ΠΎΠΌΠ΅Ρ€ ΠΏΠΈΠ½Π° ΠΈ логичСскоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Π’ ΠΈΡ‚ΠΎΠ³Π΅, ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ Π΄Π΅Π»ΠΎΠΌ ΠΌΡ‹ Π·Π°ΠΆΠΈΠ³Π°Π΅ΠΌ свСтодиод Π½Π° 13-ΠΌ ΠΏΠΈΠ½Π΅, подавая Π½Π° Π½Π΅Π³ΠΎ 5 Π²ΠΎΠ»ΡŒΡ‚.

Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ это сдСлано процСссор ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎ приступаСт ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΡŽ. Π£ нас это Π²Ρ‹Π·ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ delay. Ѐункция delay β€” это, ΠΎΠΏΡΡ‚ΡŒ ΠΆΠ΅, встроСнная функция, которая заставляСт процСссор ΡƒΡΠ½ΡƒΡ‚ΡŒ Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠ΅ врСмя. Она ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ всСго ΠΎΠ΄ΠΈΠ½ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚: врСмя Π² миллисСкундах, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ слСдуСт ΡΠΏΠ°Ρ‚ΡŒ. Π’ нашСм случаС это 100 мс.

Пока ΠΌΡ‹ спим всё остаётся ΠΊΠ°ΠΊ Π΅ΡΡ‚ΡŒ, Ρ‚.Π΅. свСтодиод ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ Π³ΠΎΡ€Π΅Ρ‚ΡŒ. Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ 100 мс ΠΈΡΡ‚Π΅ΠΊΠ°ΡŽΡ‚, процСссор просыпаСтся ΠΈ Ρ‚ΡƒΡ‚ ΠΆΠ΅ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΡŽ. Π’ нашСм ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ это снова Π²Ρ‹Π·ΠΎΠ² Π·Π½Π°ΠΊΠΎΠΌΠΎΠΉ Π½Π°ΠΌ встроСнной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ digitalWrite. ΠŸΡ€Π°Π²Π΄Π° Π½Π° этот Ρ€Π°Π· Π²Ρ‚ΠΎΡ€Ρ‹ΠΌ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠΌ ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‘ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ LOW. Π’ΠΎ Π΅ΡΡ‚ΡŒ устанавливаСм Π½Π° 13-ΠΌ ΠΏΠΈΠ½Π΅ логичСский ноль, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΏΠΎΠ΄Π°Ρ‘ΠΌ 0 Π²ΠΎΠ»ΡŒΡ‚, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ гасим свСтодиод.

ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ свСтодиод погашСн ΠΌΡ‹ приступаСм ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΡŽ. И снова это Π²Ρ‹Π·ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ delay. На этот Ρ€Π°Π· ΠΌΡ‹ засыпаСм Π½Π° 900 мс.

Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ сон ΠΎΠΊΠΎΠ½Ρ‡Π΅Π½, функция loop Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ΡΡ. По Ρ„Π°ΠΊΡ‚Ρƒ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Β«Π½Π΅Ρ‡Ρ‚ΠΎΒ» Ρ‚ΡƒΡ‚ ΠΆΠ΅ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ Π΅Ρ‘ Π΅Ρ‰Ρ‘ Ρ€Π°Π· ΠΈ всё происходит снова: свСтодиод подТигаСтся, Π³ΠΎΡ€ΠΈΡ‚, гаснСт, ΠΆΠ΄Ρ‘Ρ‚ ΠΈ Ρ‚.Π΄.

Если пСрСвСсти написанноС Π½Π° русский, получится ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ:

  1. ПодТигаСм свСтодиод

  2. Π‘ΠΏΠΈΠΌ 100 миллисСкунд

  3. Гасим свСтодиод

  4. Π‘ΠΏΠΈΠΌ 900 миллисСкунд

  5. ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ ΠΊ ΠΏΡƒΠ½ΠΊΡ‚Ρƒ 1

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ Arduino с маячком, ΠΌΠΈΠ³Π°ΡŽΡ‰ΠΈΠΌ ΠΊΠ°ΠΆΠ΄Ρ‹Π΅ 100 + 900 мс = 1000 мс = 1 сСк.

Π§Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ

Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠ»ΡŒΠ·ΡƒΡΡΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΌΠΈ знаниями сдСлаСм нСсколько Π²Π°Ρ€ΠΈΠ°Ρ†ΠΈΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠΎΠ½ΡΡ‚ΡŒ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ внСшний свСтодиод ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠ΅ устройство, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π½ΡƒΠΆΠ½ΠΎ Β«ΠΌΠΈΠ³Π°Ρ‚ΡŒΒ» Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΠΈΠ½. НапримСр, Π½Π° 5-ΠΉ. Как Π² этом случаС Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°? ΠœΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²ΡΡŽΠ΄Ρƒ, Π³Π΄Π΅ ΠΎΠ±Ρ€Π°Ρ‰Π°Π»ΠΈΡΡŒ ΠΊ 13-ΠΌΡƒ ΠΏΠΈΠ½Ρƒ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π½ΠΎΠΌΠ΅Ρ€ Π½Π° 5-ΠΉ:

void setup()
{
    pinMode(5, OUTPUT);
}
Β 
void loop()
{
    digitalWrite(5, HIGH);
    delay(100);
    digitalWrite(5, LOW);
    delay(900);
}

ΠšΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠΉΡ‚Π΅, Π·Π°Π³Ρ€ΡƒΠΆΠ°ΠΉΡ‚Π΅, провСряйтС.

Π§Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ свСтодиод ΠΌΠΈΠ³Π°Π» 2 Ρ€Π°Π·Π° Π² сСкунду? Π£ΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ врСмя сна Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π² суммС ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ 500 мс:

void setup()
{
    pinMode(5, OUTPUT);
}
Β 
void loop()
{
    digitalWrite(5, HIGH);
    delay(50);
    digitalWrite(5, LOW);
    delay(450);
}

Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ свСтодиод ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Β«ΠΏΠΎΠ΄ΠΌΠΈΠ³ΠΈΠ²Π°Π½ΠΈΠΈΒ» ΠΌΠ΅Ρ€Ρ†Π°Π» Π΄Π²Π°ΠΆΠ΄Ρ‹? НуТно ΠΏΠΎΠ΄ΠΆΠΈΠ³Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π΄Π²Π°ΠΆΠ΄Ρ‹ с нСбольшой ΠΏΠ°ΡƒΠ·ΠΎΠΉ ΠΌΠ΅ΠΆΠ΄Ρƒ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡΠΌΠΈ:

void setup()
{
    pinMode(5, OUTPUT);
}
Β 
void loop()
{
    digitalWrite(5, HIGH);
    delay(50);
    digitalWrite(5, LOW);
    delay(50);
    digitalWrite(5, HIGH);
    delay(50);
    digitalWrite(5, LOW);
    delay(350);
}

Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π² устройствС Π±Ρ‹Π»ΠΈ 2 свСтодиода, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΈΠ³Π°Π»ΠΈ Π±Ρ‹ ΠΊΠ°ΠΆΠ΄ΡƒΡŽ сСкунду ΠΏΠΎΠΎΡ‡Π΅Ρ€Ρ‘Π΄Π½ΠΎ? НуТно ΠΎΠ±Ρ‰Π°Ρ‚ΡŒΡΡ с двумя ΠΏΠΈΠ½Π°ΠΌΠΈ ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² loop Ρ‚ΠΎ с ΠΎΠ΄Π½ΠΈΠΌ, Ρ‚ΠΎ с Π΄Ρ€ΡƒΠ³ΠΈΠΌ:

void setup()
{
    pinMode(5, OUTPUT);
    pinMode(6, OUTPUT);
}
Β 
void loop()
{
    digitalWrite(5, HIGH);
    delay(100);
    digitalWrite(5, LOW);
    delay(900);
    digitalWrite(6, HIGH);
    delay(100);
    digitalWrite(6, LOW);
    delay(900);
}

Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π² устройствС Π±Ρ‹Π»ΠΈ 2 свСтодиода, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Π»ΠΈΡΡŒ Π±Ρ‹ Π½Π° ΠΌΠ°Π½Π΅Ρ€ ΠΆΠ΅Π»Π΅Π·Π½ΠΎΠ΄ΠΎΡ€ΠΎΠΆΠ½ΠΎΠ³ΠΎ свСтофора: Π³ΠΎΡ€Π΅Π» Π±Ρ‹ Ρ‚ΠΎ ΠΎΠ΄ΠΈΠ½ Ρ‚ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠΉ? НуТно просто Π½Π΅ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ горящий свСтодиод Ρ‚ΡƒΡ‚ ΠΆΠ΅, Π° Π΄ΠΎΠΆΠΈΠ΄Π°Ρ‚ΡŒΡΡ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ:

void setup()
{
    pinMode(5, OUTPUT);
    pinMode(6, OUTPUT);
}
Β 
void loop()
{
    digitalWrite(5, HIGH);
    digitalWrite(6, LOW);
    delay(1000);
    digitalWrite(5, LOW);
    digitalWrite(6, HIGH);
    delay(1000);
}

ΠœΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΈΠ΄Π΅ΠΈ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ. Как Π²ΠΈΠ΄ΠΈΡ‚Π΅, всё просто!

О пустом мСстС ΠΈ красивом ΠΊΠΎΠ΄Π΅

Π’ языкС C++ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹, пСрСносы строк, символы табуляции Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ большого значСния для компилятора. Π’Π°ΠΌ Π³Π΄Π΅ стоит ΠΏΡ€ΠΎΠ±Π΅Π», ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ пСрСнос строки ΠΈ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚. На самом Π΄Π΅Π»Π΅ 10 ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ² подряд, 2 пСрСноса строки ΠΈ Π΅Ρ‰Ρ‘ 5 ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ² β€” это всё эквивалСнт ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ±Π΅Π»Π°.

ΠŸΡƒΡΡ‚ΠΎΠ΅ пространство β€” это инструмСнт программиста, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ»ΠΈ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ понятной ΠΈ наглядной, ΠΈΠ»ΠΈ ΠΈΠ·ΡƒΡ€ΠΎΠ΄ΠΎΠ²Π°Ρ‚ΡŒ Π΄ΠΎ нСузнаваСмости. НапримСр, вспомним ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для мигания свСтодиодом:

void setup()
{
    pinMode(5, OUTPUT);
}
Β 
void loop()
{
    digitalWrite(5, HIGH);
    delay(100);
    digitalWrite(5, LOW);
    delay(900);
}

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π΅Ρ‘ Ρ‚Π°ΠΊ:

void setup(
)
    {
pinMode(5, OUTPUT);
    }
Β 
        void loop
    () {
digitalWrite(5,HIGH);
delay(100
)
;
    digitalWrite(5,LOW);
    delay(900); }

Всё, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ сдСлали β€” Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Β«ΠΏΠΎΡ€Π°Π±ΠΎΡ‚Π°Π»ΠΈΒ» с пустым пространством. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ½ΠΎ наглядно Π²ΠΈΠ΄Π΅Ρ‚ΡŒ Ρ€Π°Π·Π½ΠΈΡ†Ρƒ ΠΌΠ΅ΠΆΠ΄Ρƒ стройным ΠΊΠΎΠ΄ΠΎΠΌ ΠΈ Π½Π΅Ρ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹ΠΌ.

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ нСгласному Π·Π°ΠΊΠΎΠ½Ρƒ оформлСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ уваТаСтся Π½Π° Ρ„ΠΎΡ€ΡƒΠΌΠ°Ρ…, ΠΏΡ€ΠΈ Ρ‡Ρ‚Π΅Π½ΠΈΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ людьми, Π»Π΅Π³ΠΊΠΎ воспринимаСтся Π²Π°ΠΌΠΈ ΠΆΠ΅, слСдуйтС нСскольким простым ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌ:

1. ВсСгда, ΠΏΡ€ΠΈ Π½Π°Ρ‡Π°Π»Π΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° ΠΌΠ΅ΠΆΠ΄Ρƒ { ΠΈ } ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°ΠΉΡ‚Π΅ отступ. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ 2 ΠΈΠ»ΠΈ 4 ΠΏΡ€ΠΎΠ±Π΅Π»Π°. Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΎΠ΄Π½ΠΎ ΠΈΠ· Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈ ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°ΠΉΡ‚Π΅ΡΡŒ Π΅Π³ΠΎ Π²ΡΡŽΠ΄Ρƒ.

ΠŸΠ»ΠΎΡ…ΠΎ:

void loop()
{
digitalWrite(5, HIGH);
delay(100);
digitalWrite(5, LOW);
delay(900);
}

Π₯ΠΎΡ€ΠΎΡˆΠΎ:

void loop()
{
    digitalWrite(5, HIGH);
    delay(100);
    digitalWrite(5, LOW);
    delay(900);
}

2. Как ΠΈ Π² СстСствСнном языкС: ΡΡ‚Π°Π²ΡŒΡ‚Π΅ ΠΏΡ€ΠΎΠ±Π΅Π» послС запятых ΠΈ Π½Π΅ ΡΡ‚Π°Π²ΡŒΡ‚Π΅ Π΄ΠΎ.

ΠŸΠ»ΠΎΡ…ΠΎ:

digitalWrite(5,HIGH);
digitalWrite(5 , HIGH);
digitalWrite(5 ,HIGH);

Π₯ΠΎΡ€ΠΎΡˆΠΎ:

digitalWrite(5, HIGH);

3. Π Π°Π·ΠΌΠ΅Ρ‰Π°ΠΉΡ‚Π΅ символ Π½Π°Ρ‡Π°Π»Π° Π±Π»ΠΎΠΊΠ° { Π½Π° Π½ΠΎΠ²ΠΎΠΉ строкС Π½Π° Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ отступа ΠΈΠ»ΠΈ Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ. А символ ΠΊΠΎΠ½Ρ†Π° Π±Π»ΠΎΠΊΠ° } Π½Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ строкС Π½Π° Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ отступа:

ΠŸΠ»ΠΎΡ…ΠΎ:

void setup()
{
    pinMode(5, OUTPUT); }
Β 
void setup()
    {
    pinMode(5, OUTPUT);
    }
Β 
void setup()
        {
    pinMode(5, OUTPUT);
        }

Π₯ΠΎΡ€ΠΎΡˆΠΎ:

void setup()
{
    pinMode(5, OUTPUT); 
}
Β 
void setup() {
    pinMode(5, OUTPUT); 
}

4. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ пустыС строки для раздСлСния смысловых Π±Π»ΠΎΠΊΠΎΠ²:

Π₯ΠΎΡ€ΠΎΡˆΠΎ:

void loop()
{
    digitalWrite(5, HIGH);
    delay(100);
    digitalWrite(5, LOW);
    delay(900);
    digitalWrite(6, HIGH);
    delay(100);
    digitalWrite(6, LOW);
    delay(900);
}

Π•Ρ‰Ρ‘ Π»ΡƒΡ‡ΡˆΠ΅:

void loop()
{
    digitalWrite(5, HIGH);
    delay(100);
Β 
    digitalWrite(5, LOW);
    delay(900);
Β 
    digitalWrite(6, HIGH);
    delay(100);
Β 
    digitalWrite(6, LOW);
    delay(900);
}

О Ρ‚ΠΎΡ‡ΠΊΠ°Ρ… с запятыми

Π’Ρ‹ ΠΌΠΎΠ³Π»ΠΈ Π·Π°ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΠΎΠ²Π°Ρ‚ΡŒΡΡ: Π·Π°Ρ‡Π΅ΠΌ Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ выраТСния ставится Ρ‚ΠΎΡ‡ΠΊΠ° с запятой? Π’Π°ΠΊΠΎΠ²Ρ‹ ΠΏΡ€Π°Π²ΠΈΠ»Π° C++. ΠŸΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ синтаксисом языка. По символу ; компилятор ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π³Π΄Π΅ заканчиваСтся Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅.

Как ΡƒΠΆΠ΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΎΡΡŒ, пСрСносы строк для Π½Π΅Π³ΠΎ β€” пустой Π·Π²ΡƒΠΊ, поэтому ориСнтируСтся ΠΎΠ½ Π½Π° этот Π·Π½Π°ΠΊ прСпинания. Π­Ρ‚ΠΎ позволяСт Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ сразу нСсколько Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π² ΠΎΠ΄Π½ΠΎΠΉ строкС:

void loop()
{
    digitalWrite(5, HIGH); delay(100); digitalWrite(5, LOW); delay(900);
}

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Π° ΠΈ эквивалСнтна Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΡƒΠΆΠ΅ Π²ΠΈΠ΄Π΅Π»ΠΈ. Однако ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ‚Π°ΠΊ β€” это Π΄ΡƒΡ€Π½ΠΎΠΉ Ρ‚ΠΎΠ½. Код Π³ΠΎΡ€Π°Π·Π΄ΠΎ слоТнСС читаСтся. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Ссли Ρƒ вас Π½Π΅Ρ‚ 100% вСских ΠΏΡ€ΠΈΡ‡ΠΈΠ½ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π² ΠΎΠ΄Π½ΠΎΠΉ строкС нСсколько Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, Π½Π΅ Π΄Π΅Π»Π°ΠΉΡ‚Π΅ этого.

О коммСнтариях

Одно ΠΈΠ· ΠΏΡ€Π°Π²ΠΈΠ» качСствСнного программирования: Β«ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΊΠΎΠ΄ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ Π±Ρ‹Π» Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ понятным, Ρ‡Ρ‚ΠΎ Π½Π΅ нуТдался Π±Ρ‹ Π² пояснСниях». Π­Ρ‚ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π½ΠΎ Π½Π΅ всСгда. Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΡΡΠ½ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ Π½Π΅ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹Π΅ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹ Π² ΠΊΠΎΠ΄Π΅ Π΅Π³ΠΎ читатСлям: вашим ΠΊΠΎΠ»Π»Π΅Π³Π°ΠΌ ΠΈΠ»ΠΈ Π²Π°ΠΌ самому Ρ‡Π΅Ρ€Π΅Π· мСсяц, ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ.

Π­Ρ‚ΠΎ конструкции Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ ΠΊΠΎΠ΄Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ компилятором ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для читатСля. ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ многострочными ΠΈΠ»ΠΈ однострочными:

/*
   Ѐункция setup вызываСтся самой ΠΏΠ΅Ρ€Π²ΠΎΠΉ,
   ΠΏΡ€ΠΈ ΠΏΠΎΠ΄Π°Ρ‡Π΅ питания Π½Π° Arduino
Β 
   А это многострочный ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ
 */
void setup()
{
    // устанавливаСм 13-ΠΉ ΠΏΠΈΠ½ Π² Ρ€Π΅ΠΆΠΈΠΌ Π²Ρ‹Π²ΠΎΠ΄Π°
    pinMode(13, OUTPUT);
}
Β 
void loop()
{
    digitalWrite(13, HIGH);
    delay(100); // спим 100 мс
    digitalWrite(13, LOW);
    delay(900);
}

Как Π²ΠΈΠ΄ΠΈΡ‚Π΅, ΠΌΠ΅ΠΆΠ΄Ρƒ символами /* ΠΈ */ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ сколько ΡƒΠ³ΠΎΠ΄Π½ΠΎ строк ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π². А послС ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ // ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅ΠΌ считаСтся всё, Ρ‡Ρ‚ΠΎ слСдуСт Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π° строки.

Π˜Ρ‚Π°ΠΊ, надССмся самыС основныС ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ составлСния написания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ стали понятны. ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ знания ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΏΠΎΠ΄Π°Ρ‡Π΅ΠΉ питания Π½Π° ΠΏΠΈΠ½Ρ‹ Arduino ΠΏΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹ΠΌ врСмСнны́м схСмам. Π­Ρ‚ΠΎ Π½Π΅ Ρ‚Π°ΠΊ ΡƒΠΆ ΠΌΠ½ΠΎΠ³ΠΎ, Π½ΠΎ всё ΠΆΠ΅ достаточно для ΠΏΠ΅Ρ€Π²Ρ‹Ρ… экспСримСнтов.

wiki.amperka.ru

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Arduino ΡƒΡ€ΠΎΠΊ 1 β€” ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ шаг

ΠŸΠ΅Ρ€Π²ΠΎΠ΅, с Ρ‡Π΅Π³ΠΎ слСдуСт Π½Π°Ρ‡Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΏΠΎ освоСнию Arduino – это приобрСсти ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½ΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρƒ (Ρ…ΠΎΡ€ΠΎΡˆΠΎ Π±Ρ‹ сразу приобрСсти ΠΌΠΎΠ½Ρ‚Π°ΠΆΠ½ΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρƒ ΠΈ Ρ‚.ΠΏ.). Π£ΠΆΠ΅ описывал, ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ΠΏΠ»Π°Ρ‚ Arduino прСдставлСны Π½Π° Ρ€Ρ‹Π½ΠΊΠ΅. ΠšΡ‚ΠΎ Π΅Ρ‰Π΅ Π½Π΅ Ρ‡ΠΈΡ‚Π°Π» ΡΡ‚Π°Ρ‚ΡŒΡŽ Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² курс Β«ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ²Β» ΡΠΎΠ²Π΅Ρ‚ΡƒΡŽ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ. Для изучСния основ Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρƒ Arduino Uno (ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π» ΠΈΠ»ΠΈ Ρ…ΠΎΡ€ΠΎΡˆΡƒΡŽ ΠΊΠΈΡ‚Π°ΠΉΡΠΊΡƒΡŽ копию β€” Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ Π²Π°ΠΌ). ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ‹ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ, Π° Π²ΠΎΡ‚ с Β«ΠΊΠΈΡ‚Π°ΠΉΡ†Π΅ΠΌΒ» Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠΊΠΎΠ²Ρ‹Ρ€ΡΡ‚ΡŒΡΡ (Π½Π΅ ΠΏΠ΅Ρ€Π΅ΠΆΠΈΠ²Π°ΠΉΡ‚Π΅ – всё ΠΏΠΎΠΊΠ°ΠΆΡƒ ΠΈ расскаТу).

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ Arduino ΠΊ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρƒ USB ΠΊΠ°Π±Π΅Π»Π΅ΠΌ. На ΠΏΠ»Π°Ρ‚Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π·Π°ΡΠ²Π΅Ρ‚ΠΈΡ‚ΡŒΡΡ свСтодиод Β«ONΒ«. Π’ диспСтчСрС устройств появится Π½ΠΎΠ²ΠΎΠ΅ устройство «НСизвСстноС устройство«. НСобходимо ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€. Π’ΡƒΡ‚ внСсу Π½Π΅Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Π½Π΅ΡΡΠ½ΠΎΡΡ‚ΡŒ (ΠΊΠΎΡ‚ ΠΎΡ‚Π²Π»Π΅ΠΊ – я Π½Π΅ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΠ», ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ· Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ² Ρ€Π΅ΡˆΠΈΠ» Β«ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ нСизвСстного устройства».

ΠŸΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ скачал ΠΈ распаковал ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΡƒΡŽ срСдy Arduino (arduino-1.6.6-windows). Π—Π°Ρ‚Π΅ΠΌ скачал этот Π°Ρ€Ρ…ΠΈΠ². Он ΡΠ°ΠΌΠΎΡ€Π°ΡΠΏΠ°ΠΊΠΎΠ²Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉΡΡ. Запустил Ρ„Π°ΠΉΠ» Ch441SER.EXE. Π’Ρ‹Π±Ρ€Π°Π» установку (INSTALL). ПослС установки появилось сообщСниС, Π½Π°ΠΆΠ°Π» «Ок» (ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π½Π΅ успСл).

ПослС ΠΏΠ΅Ρ€Π΅ΡˆΡ‘Π» Π² свойства всС Π΅Ρ‰Π΅ «нСизвСстного устройства» ΠΈ Π²Ρ‹Π±Ρ€Π°Π» ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«Update DriverΒ». Π’Ρ‹Π±Ρ€Π°Π» Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ «Установка ΠΈΠ· ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ мСста» – ΡƒΠΊΠ°Π·Π°Π» ΠΏΠ°ΠΏΠΊΡƒ с Ρ€Π°Π·Π°Ρ€Ρ…ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ срСдой Arduino. И ΠΎ Ρ‡ΡƒΠ΄ΠΎ – всё ΡƒΠ΄Π°Ρ‡Π½ΠΎ заработало…

ЗапускаСм ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Arduino (Π² ΠΌΠΎΡ‘ΠΌ случаС 1.6.6) ΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π΅ΠΌ доступ.

ВсС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ (ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹) для Arduino состоят ΠΈΠ· Π΄Π²ΡƒΡ… частСй: void setup ΠΈ void loop. void setup выполняСтся всСго ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·, Π° void loop выполняСтся снова ΠΈ снова.

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΠΌ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π΄Π²Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ:

β€” ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ срСдС Arduino, ΠΊΠ°ΠΊΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρƒ Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅. Tool->board-> Arduino Uno. Если ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΊΠ° ΡƒΠΆΠ΅ стоит Π½Π° Π½ΡƒΠΆΠ½ΠΎΠΉ Π²Π°ΠΌ ΠΏΠ»Π°Ρ‚Π΅ – это Ρ…ΠΎΡ€ΠΎΡˆΠΎ, Ссли Π½Π΅Ρ‚ – ставим ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΊΡƒ.

β€” ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ срСдС ΠΊΠ°ΠΊΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΡ€Ρ‚ Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ для связи с ΠΏΠ»Π°Ρ‚ΠΎΠΉ. Tool->port-> COM3. Если ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΊΠ° ΡƒΠΆΠ΅ стоит Π½Π° ΠΏΠΎΡ€Ρ‚Π΅ – это Ρ…ΠΎΡ€ΠΎΡˆΠΎ, Ссли Π½Π΅Ρ‚ – ставим ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΊΡƒ. Если Ρƒ вас Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΏΠΎΡ€Ρ‚Ρ‹ прСдставлСн большС, Ρ‡Π΅ΠΌ ΠΎΠ΄ΠΈΠ½ ΠΏΠΎΡ€Ρ‚, ΠΊΠ°ΠΊ ΠΆΠ΅ ΡƒΠ·Π½Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для соСдинСния с ΠΏΠ»Π°Ρ‚ΠΎΠΉ? Π‘Π΅Ρ€Ρ‘ΠΌ ΠΏΠ»Π°Ρ‚Ρƒ ΠΈ отсоСдиняСм ΠΎΡ‚ Π½Π΅Ρ‘ ΠΏΡ€ΠΎΠ²ΠΎΠ΄. Π‘Π½ΠΎΠ²Π° Π·Π°Ρ…ΠΎΠ΄ΠΈΠΌ Π² ΠΏΠΎΡ€Ρ‚Ρ‹ ΠΈ смотрим, ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ· Π½ΠΈΡ… исчСз. Π’ ΠΌΠΎΡ‘ΠΌ случаС Π²ΠΊΠ»Π°Π΄ΠΊΠ° Β«ΠΏΠΎΡ€Ρ‚Ρ‹Β» Π²ΠΎΠΎΠ±Ρ‰Π΅ стала Π½Π΅ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ.

Π‘Π½ΠΎΠ²Π° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ USB.

Для ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ. Π‘ΡƒΠ΄Π΅ΠΌ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ свСтодиод, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΡƒΠΆΠ΅ смонтирован Π½Π° ΠΏΠ»Π°Ρ‚Π΅ (Π½Π° 13 Π²Ρ‹Π²ΠΎΠ΄Π΅ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°).

Для Π½Π°Ρ‡Π°Π»Π° сконфигурим 13 Π²Ρ‹Π²ΠΎΠ΄ (Π½Π° Π²Ρ…ΠΎΠ΄ ΠΈΠ»ΠΈ Π½Π° Π²Ρ‹Ρ…ΠΎΠ΄).

Для этого Π²Π²ΠΎΠ΄ΠΈΠΌ Π² Π±Π»ΠΎΠΊ Β«void setupΒ» ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ pinMode, Π² скобках ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ (13, OUTPUT) (Какой Π²Ρ‹Π²ΠΎΠ΄ задСйствован, Π Π΅ΠΆΠΈΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹). ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Π°Ρ срСда выдСляСт слова/ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ Ρ†Π²Π΅Ρ‚ΠΎΠΌ ΡˆΡ€ΠΈΡ„Ρ‚Π°.

ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ Π² Π±Π»ΠΎΠΊ Β«void loopΒ» ΠΈ Π²Π²ΠΎΠ΄ΠΈΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ digitalWrite с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ (13, HIGH).

ΠŸΠ΅Ρ€Π²Π°Ρ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π³ΠΎΡ‚ΠΎΠ²Π°, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΎΡΡ‚Π°Π»ΠΎΡΡŒ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π΅Ρ‘ Π² ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€. НаТимаСм ΠΊΠ½ΠΎΠΏΠΊΡƒ UPLOAD.

Π‘Π²Π΅Ρ‚ΠΎΠ΄ΠΈΠΎΠ΄ засвСтился. Но Π½Π΅ стоит Ρ‚Π°ΠΊ скСптичСски ΠΎΡ‚Π½ΠΎΡΠΈΡ‚ΡŒΡΡ ΠΊ простотС ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π’Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ, Ρ‡Ρ‚ΠΎ освоили ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ. ВмСсто свСтодиода вСдь ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π»ΡŽΠ±ΡƒΡŽ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ (Π±ΡƒΠ΄ΡŒ-Ρ‚ΠΎ освСщСниС Π² ΠΊΠΎΠΌΠ½Π°Ρ‚Π΅ ΠΈΠ»ΠΈ сСрвопривод, ΠΏΠ΅Ρ€Π΅ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ ΠΏΠΎΠ΄Π°Ρ‡Ρƒ Π²ΠΎΠ΄Ρ‹), Π½ΠΎ ΠΎΠ± этом всём ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ позТС…

Π‘Π²Π΅Ρ‚ΠΎΠ΄ΠΈΠΎΠ΄ ΠΌΡ‹ Π²ΠΊΠ»ΡŽΡ‡ΠΈΠ»ΠΈ, ΠΎΠ½ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ посвСтил, ΠΏΠΎΡ€Π° Π΅Π³ΠΎ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ. Для этого Π²ΠΈΠ΄ΠΎΠΈΠ·ΠΌΠ΅Π½ΠΈΠΌ Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡƒΡŽ Π½Π°ΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ. ВмСсто Β«HIGHΒ» напишСм Β«LOWΒ».

НаТимаСм ΠΊΠ½ΠΎΠΏΠΊΡƒ UPLOAD. Π‘Π²Π΅Ρ‚ΠΎΠ΄ΠΈΠΎΠ΄ погас.

ΠœΡ‹ ΡƒΠΆΠ΅ познакомились с понятиСм Β«ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅Β», ΠΏΠΎΡ€Π° ΠΈΠΌ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ. Π”Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π±ΡƒΠ΄ΡƒΡ‚ становится всС ΠΎΠ±ΡŠΡ‘ΠΌΠ½Π΅Π΅ ΠΈ слоТнСС, Π° Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠΎ ΠΈΡ… измСнСнию Π±ΡƒΠ΄ΡƒΡ‚ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒ всС большС ΠΈ большС Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Ссли ΠΌΡ‹ оставим ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΉ ΡΡ‚ΠΈΠ»ΡŒ написания ΠΊΠΎΠ΄Π°.

Π‘ΠΌΠΎΡ‚Ρ€ΠΈΠΌ Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ (снова Π²ΠΊΠ»ΡŽΡ‡ΠΈΠΌ свСтодиод). Π—Π°Π΄Π°Π΄ΠΈΠΌ Π½ΠΎΠΌΠ΅Ρ€ Π²Ρ‹Π²ΠΎΠ΄Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° Π½Π΅ числом 13, Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±ΡƒΠ΄Π΅Ρ‚ присвоСно Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ Π²Ρ‹Π²ΠΎΠ΄Π° (Π² нашСм случаС 13). Π’ дальнСйшСм Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ значСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π² Π½Π°Ρ‡Π°Π»Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, вмСсто Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡˆΠ°Ρ€ΠΈΡ‚ΡΡ ΠΏΠΎ ΠΊΠΎΠ΄Ρƒ Π² поисках Ρ‚Π΅Ρ… мСст, Π³Π΄Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ произвСсти Π·Π°ΠΌΠ΅Π½Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.

Π‘ΠΎΠ·Π΄Π°Ρ‘ΠΌ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ int LED_pin = 13; (Ρ‚ΠΈΠΏ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, имя ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, присваиваСмоС Π΅ΠΉ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅).

НаТимаСм ΠΊΠ½ΠΎΠΏΠΊΡƒ UPLOAD. Π‘Π²Π΅Ρ‚ΠΎΠ΄ΠΈΠΎΠ΄ свСтится. ВсС Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ.

Π’ этом ΡƒΡ€ΠΎΠΊΠ΅, ΠΊΡ€ΠΎΠΌΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ/Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ свСтодиода, ΠΌΡ‹ Π΅Ρ‰Π΅ научимся ΠΌΠΈΠ³Π°Ρ‚ΡŒ ΠΈΠΌ.

Для этого Π²Π²ΠΎΠ΄ΠΈΠΌ Π²Ρ‚ΠΎΡ€ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Β«digitalWriteΒ» с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ (LED_pin, LOW).

НаТимаСм ΠΊΠ½ΠΎΠΏΠΊΡƒ UPLOAD. И Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ? Π‘Π²Π΅Ρ‚ΠΎΠ΄ΠΈΠΎΠ΄ свСтится Β«Π² ΠΏΠΎΠ» Π½Π°ΠΊΠ°Π·Π°Β». ΠŸΡ€ΠΈΡ‡ΠΈΠ½Π° кроСтся Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ врСмя ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π΄Π²ΡƒΡ… состояний (HIGH ΠΈ LOW) Π½ΠΈΡ‡Ρ‚ΠΎΠΆΠ½ΠΎ ΠΌΠ°Π»ΠΎ ΠΈ чСловСчСский Π³Π»Π°Π· Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠ»ΠΎΠ²ΠΈΡ‚ΡŒ эти ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ. НСобходимо ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ врСмя нахоТдСния свСтодиода Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· состояний. Для этого пишСм ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ delay с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ (1000). Π—Π°Π΄Π΅Ρ€ΠΆΠΊΠ° Π² миллисСкундах: 1000 миллисСкунд – 1 сСкунда. Алгоритм ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ: Π²ΠΊΠ»ΡŽΡ‡ΠΈΠ»ΠΈ свСтодиод – ΠΆΠ΄Ρ‘ΠΌ 1 сСкунду, Π²Ρ‹ΠΊΠ»ΡŽΡ‡ΠΈΠ»ΠΈ свСтодиод – ΠΆΠ΄Ρ‘ΠΌ 1 сСкунду ΠΈ Ρ‚.Π΄.

НаТимаСм ΠΊΠ½ΠΎΠΏΠΊΡƒ UPLOAD. Π‘Π²Π΅Ρ‚ΠΎΠ΄ΠΈΠΎΠ΄ Π½Π°Ρ‡Π°Π» ΠΌΠ΅Ρ€Ρ†Π°Ρ‚ΡŒ. ВсС Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚.

Π”ΠΎΡ€Π°Π±ΠΎΡ‚Π°Π΅ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ создав ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‰Π΅Π΅ Π·Π° Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ.

НаТимаСм ΠΊΠ½ΠΎΠΏΠΊΡƒ UPLOAD. Π‘Π²Π΅Ρ‚ΠΎΠ΄ΠΈΠΎΠ΄ ΠΌΠ΅Ρ€Ρ†Π°Π΅Ρ‚, ΠΊΠ°ΠΊ ΠΈ ΠΌΠ΅Ρ€Ρ†Π°Π».

Π”ΠΎΡ€Π°Π±ΠΎΡ‚Π°Π΅ΠΌ Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡƒΡŽ Π½Π°ΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ. Π—Π°Π΄Π°Ρ‡ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅:

  • Π‘Π²Π΅Ρ‚ΠΎΠ΄ΠΈΠΎΠ΄ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ 0,2 сСкунды ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ 0,8 сСкунды;
  • Π‘Π²Π΅Ρ‚ΠΎΠ΄ΠΈΠΎΠ΄ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ 0,7 сСкунды ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ 0,3 сСкунды.

Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ созданы 2 ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, Ρ‡Ρ‚ΠΎ ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‚ Π·Π° Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ. Одна опрСдСляСт врСмя Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ свСтодиода, Π° вторая – врСмя Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ свСтодиода.

Β 

Π’Ρ‹Π²ΠΎΠ΄Ρ‹ ΠΏΠΎ ΡƒΡ€ΠΎΠΊΡƒ:

  • ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠ»ΠΈ ΠΏΠ»Π°Ρ‚Ρƒ Arduino;
  • написали ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ;
  • ΠΌΠΎΠ΄Π΅Ρ€Π½ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π»ΠΈ Π΅Ρ‘ (ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠ»ΠΈ Ρ‚Π΅ΠΎΡ€ΠΈΡŽ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅).

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ написанных ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ:

Бпасибо Π·Π° Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅. Π”ΠΎ скорой встрСчи!

ΠšΠ°Ρ€Ρ‚ΠΎΡ‚Π΅ΠΊΠ° программирования


ΠŸΠžΠ”Π•Π›Π˜Π’Π•Π‘Π¬ Π‘ Π”Π Π£Π—Π¬Π―ΠœΠ˜!

About alexlevchenko
ЦСню Π² Π»ΡŽΠ΄ΡΡ… Ρ‡Π΅ΡΡ‚Π½ΠΎΡΡ‚ΡŒ ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΡΡ‚ΡŒ. Π›ΡŽΠ±Π»ΡŽ ΠΌΠ°ΡΡ‚Π΅Ρ€ΠΈΡ‚ΡŒ Ρ€Π°Π·Π½Ρ‹Π΅ самодСлки. Нравится ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΡΡ‚Π°Ρ‚ΡŒΠΈ, вСдь ΠΊΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΡƒΠ·Π½Π°Π΅ΡˆΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π½ΠΎΠ²ΠΎΠ΅ – Π΅Ρ‰Ρ‘ ΠΈ Π΄Π°Ρ€ΠΈΡˆΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΠΊΡƒΠ½ΡƒΡ‚ΡŒΡΡ Π² ΠΌΠΈΡ€ самодСлок.

mozgochiny.ru

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

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