Все когда-нибудь начинается. Освоение навыков программирования платформы Ардуино традиционно начинается с мигающего диода. Но, насмотря на то, что урок у нас 1, мы сразу усложним себе задачу. Мы подключим сразу три светодиода, заставим их мигать и посмотрим несколько вариантов программы для этой схемы.

ПЕРЕЧЕНЬ КОМПОНЕНТОВ

  • ARDUINO UNO R3 (оригинальная плата)
  • Монтажная плата
  • Светодиоды (красный, желтый, зеленый)
  • Резисторы — 3 шт (220 Ом)
  • Соединительные провода

МАКЕТ СХЕМЫ

Создание простых уроков сопровождается работой и над более серьезными проектами, поэтому на фото реальной схемы вы будете иногда видеть элементы от других проектов. ИТАК! Вот, что получилось в реальности…

КОД ПРОГРАММЫ

Для начала напишем самую-самую-самую простую, не эффективную и не красивую, но работающую программу…

А вот так эта программа выглядит без комментариев…

При написании небольших программ с простыми операторами можно несколько команд располагать в одну строчку.  Согласитесь… так программа выглядит компактнее.

НО!!! Понять в данной программе какой диод на каком шаге горит достаточно проблематично и требует разбирательства. К счастью, мы можем самостоятельно дать нужным портам более понятные имена.

Что же тут написано…. прежде всего мы создали 3 константы (const) — red, green и blue. Служебным словом int обозначили, что данные константы будут хранить только целые числа. Ну и наконец присвоили константам нужные нам значения, т.е. номера портов. В итоге программа стала более читаемой ))))

Помните, в начале урока, я сказал, что мы будем писать самую простую-простую и не эффективную программу. А как же выглядит не самая простая, но эффективная программа. Выглядит она просто, но вот объяснений точно потребует. Поверьте, если вы ее наберете и запустите… ОНА БУДЕТ РАБОТАТЬ ))))

А на самом деле тут все просто. Посмотрите на плату Ардуино… вы увидите, что порты разделены с 0..7 и с 8…13. Т.е. в одной группе 8 портов, а в другой 6 портов. Давайте вспомним… в 1 байте — 8 бит. Это значит, что 1 байт можно представить 8-ми разрядным 2-м числом ********.

В Ардуино есть 2 регистра D и B. Регистр B хранит состояние портов с 8…13 в виде байта. Каждый разряд байта соответствует своему порту **13,12,11,10,9,8.

В void setup() с помощью служебной команды DDRB устанавливаем в режим OUTPUT порты 10,9,8, т.е. В00000111, а в void loop() устанавливаем уровень HIGH для нужного порта… например для 10 порта PORTB=B00000100.