Найти в Дзене
arduino-kidru

Первый скетч на Ардуино. Мигание светодиодами.

Сегодня разберём принцип работы с Ардуино и загрузим свой первый скетч. Узнаем структуру программы и научимся мигать светодиодами.
Оглавление

Сегодня разберём принцип работы с Ардуино и загрузим свой первый скетч. Узнаем структуру программы и научимся мигать светодиодами.

Бытует мнение, что первая программа обычного программиста – это написать код, который выведет на экран фразу «HELLO WORLD »,

HELLO  WORLD
HELLO WORLD

а программист работающий с микроконтроллерами должен помигать светодиодами. Не будем нарушать эту традицию.

Подключение светодиодов к Ардуино
Подключение светодиодов к Ардуино

Запускаем программу Arduino IDE и у вас открывается вот такое окно.

Начало работы с Ардуино
Начало работы с Ардуино

Разберём что это такое .
Здесь две основные функции, без них работать не будет. Они могут быть пустыми, но они обязательно должны быть.

Первая функция это void setup(),
void означает, что эта функция ничего не возвращает, а просто отработает и передаст управление следующей функции.
setup() начинает работать сразу при подачи питания к Ардуине, или после перезагрузки платы. Эта функция срабатывает только 1 раз.
Весь код надо писать внутри фигурных скобок.

Вот пример часто используемых команд, что мы будем использовать очень часто.

пример setup()
пример setup()

Serial.begin (9600); //Говорим, что последовательный порт будет работать на скорости 9600bod
pinMode(2, INPUT ); // Определяем, что PIN 2(вывод на плате Ардуино подписанный D2) будет входом
pinMode(13, OUTPUT ); // PIN 13(на этом выводе находится светодиод на плате) будет выходом
lcd.init(); // Инициализируем дисплей

Следующая функция это void loop().

функция loop()
функция loop()

Она тоже ничего не возвращает, но в отличии от setup она работает всё время пока на плату подано напряжение.
Это бесконечный цикл.
Если не заданы особые условия, программа выполняется по очереди, сверху вниз. Дойдя до конца, программа начнёт свою работу сначала.
Здесь так же действует принцип, что все команды должны находиться внутри фигурных скобок.
Повлиять на программу можно используя функцию
delay().
delay() - Останавливает программу на заданное время. Время задаётся в миллисекундах
1000 миллисекунд = 1 секунде.

Сегодня, так как мы только учимся, мы будем использовать delay(), но это плохая практика, и в следующих примерах мы постараемся обходиться без delay(). Внизу статьи есть ссылка на различные примеры работы со светодиодами.

Чем плох delay().

Он полностью останавливает выполнение программы, и пока не закончится время указанное в delay(), программа не будет выполняться. Например, если указать delay(60000) , то программа остановится на 1 минуту.

Вот мы вкратце познакомились с основными функциями Ардуино.

Теперь рассмотрим пример.
Давайте откроем пример
Blink.

Примеры в Ардуино
Примеры в Ардуино

Кстати после установки Arduino IDE, у вас появились десятки примеров, которые можно открыть и загрузить в Плату Ардуино.
Вот код примера
Blink.

Пример Blink
Пример Blink

Здесь загрузилось много строчек кода, но не все они нужны. Больше половины – это комментарии.

Комментарии – это текст который не является частью кода, а только рассказывает о том, что делает программа и разные команды.

// Он бывает однострочный. В начале ставятся 2 слэша
/* И многострочный. Обозначается так */
Сейчас я удалю лишнее и мы посмотрим более короткую версию.

Скетч blink
Скетч blink

Разберём код.

В setup() - мы даём команду, что 13 вывод платы Ардуино будет работать как Выход. А на этом выводе микроконтроллера установлен светодиод который находится на плате.

Рассмотрим loop()
digitalWrite(LED_BUILTIN, HIGH);
Это значит, что на цифровой выход 13 подаётся высокий уровень, +5 вольт и светодиод загорится.
delay(1000); Пауза в 1 секунду. Так как светодиод горел, он и продолжит гореть.
digitalWrite(LED_BUILTIN, LOW);
Подаём Низкий уровень на 13 вывод, 0 вольт. Светодиод гаснет.
delay(1000); Опять пауза 1 секунду. Так как светодиод не горел, то он и продолжит Не гореть.
После этого цикл закончится и начнётся снова, с верхней строки функции
loop().
И так без конца, пока включена Ардуина.

Теперь осталось скомпилировать код и прошить его в плату Ардуино.
Для этого нажимаем

Прошивка Ардуино
Прошивка Ардуино

и ждём когда прошивка завершится.

На этом мы заканчиваем этот урок.

Мы сегодня узнали:

  • Из чего состоит программа
  • Функции setup() и loop()
  • Как загружать примеры,
  • Разобрались как мигать светодиодом.

Если вам понравилось, то ставим лайк, а если вы ещё не подписались, то не забудьте это сделать,ведь впереди ещё много интересных уроков.
Это только начало. Надеюсь что заинтересовал вас, и мы ещё не раз встретимся на моём канале.

PS.

Вот на этой странице моего сайта "Ардуино для начинающих" находятся много примеров работы со светодиодами, а также видео по работе со светодиодами. Рассказано как найти у светодиода + и -, расчёт токоограничивающего резистора и много другого.

Вот список примеров.
1. Мигание 1 светодиодом
2. Мигание 3 светодиодами
3. Мигание светодиодом без delay
4. Светофор из 3-х светодиодов
5. Светодиодный модуль RGB. Случайное смешение цветов
6. Светодиодный модуль RGB. Поочерёдное включение цветов
7. Светодиодный модуль "Светофор". Имитация работы светофора
8. Плавное включение светодиодов.

-10