Все уроки /

Урок №4. Условный оператор или "Как Ардуино принимает решения"

Подходит для: Набор 1 Набор 2

К данным урокам для домашнего изучения можно заказать учебный набор.

Стоимость набора 3 200 руб.

Заказать набор

Для занятия необходима установленная на компьютерах среда программирования miniBloq и драйвера для Arduino.

Макетные провода папа-папа

Мин. 8 шт 

 

Контроллер Arduino UNO

1 шт

Светодиод

1 шт

Беспаечная макетная плата

1 шт

Резистор 10 кОм

1 шт

Резистор 220 Ом

1 шт

Тактовая кнопка 1 шт      

Добрый день, ребята.

До сих пор наши устройства работали по заранее созданной линейной программе. Но на этом возможности Arduino, конечно же, не заканчиваются: наши программы можно и разветвлять — Для этого существует блок условие ЕСЛИ-ИНАЧЕ (Рис.1) 

Рис. 1 Блок ЕСЛИ-ИНАЧЕ

 

Давайте установим его в нашу программу. (Рис.2)

Рис.2 Блок Если-Иначе

 

Работает он следующим образом:

Если выполняется заданное в блоке "если" условие,

то ардуино обработает все блоки указанные между блоками "если" и "иначе".

Если же условие не выполнится, то ардуино обработает все блоки, указанные между блоками "иначе" и "конец если".

 

Давайте напишем программу, которая будет в случае выполнения заданного условия будет включать светодиод на пине № 5, а иначе будет его выключать. (Рис.3)

Рис.3

Отлично. Теперь, чтобы протестировать наше устройство надо задать блоку если какое либо условие.

Я предлагаю вам обрабатывать нажатие кнопки, и если кнопка нажата — включать светодиод, иначе — выключать.

 

Дел в том, что при работе с цифровыми пинами мы можем не только записывать в них логическую единицу или ноль или ШИМ, но и считывать с них значение.

Значения может быть только два: либо логический 0 (земля, минус), либо логическая 1 (5v).

Для того, чтобы в нашем условии получить логическое значение конкретного пина нужно выбрать блок, указанный на рисунке, нажав на красную стрелку в условии (Рис.4):

Рис.4

 

После этого необходимо выбрать пин, к которому мы в дальнейшем подключим кнопку. Пускай это будет пин № 3. (Рис.5)

Рис.5. Выбор пина для подключения кнопки.

 

 

Теперь, когда программа написана, осталось собрать устройство. (Рис. 6)

Рис.6. Обработка нажатия тактовой кнопки

 

Обратите внимание: при нажатии кнопки она соедняет красную шину (5v) и пином № 3 на ардуино.

Но есть в этой схеме один непонятный момент - это резистор на 10кОм около кнопки. Соединяет пин №3 с минусом и без него ничего не будет работать. 

Этот резистор называется подтягивающим. И действительно, без такого резистора, пин № 3 становится как бы подвешенным в воздухе, и в результате внешних наводок не может определиться: быть логической единицей или нулем.

Не забывайте про него и в ваших схемах.

 

Загрузим нашу программу в Arduino. Все должно работать.

 

Задания для самостотельного изучения

1. Измените программу таким образом, чтобы светодиод светился, когда кнопка отпущена, а когда нажата — выключался.

2. Измените программу таким образом, чтобы после нажатия кнопки сведодиод включался на 5 секунд.

 

Контакты наших кружков робототехники


Робототехника в Долгопрудном

г. Долгопрудный
пр. Ракетостроителей д3к1
2-й подъезд

+7 (495) 66-99-708 доб.1

edu@dollab.ru

Робототехника в Лобне

г. Лобня
Ул. Крупской, 24
ТЦ Олимп. 3-й этаж, каб. №21

+7 (495) 66-99-708 доб.2

edu@dollab.ru

Робототехника в Химках

г. Химки
Ул. Лавочкина, 25
Магазин «Буратино»

Робототехника в Некрасовском

г.п. Некрасовский
Ул. Заводская, 44
ДК «Керамик»

Робототехника в Дмитрове

г. Дмитров
Профессиональная улица, 26к1
ТЦ «ЛарАн»



ИНДИВИДУАЛЬНЫЙ ПРЕДПРИНИМАТЕЛЬ БОЛАШЕВ ВЛАДИСЛАВ ВЛАДИМИРОВИЧ
141800, РОССИЯ, ОБЛ МОСКОВСКАЯ, Р-Н ДМИТРОВСКИЙ, Г ДМИТРОВ, УЛ ПАРКОВАЯ, 27
ИНН 500711091721
ОГРН 311500701300014