Вы находитесь на странице: 1из 16

Программирование

микроконтроллеров
на Arduino
Урок № 2
Первый
проект Arduino.
Светодиоды.
Резисторы

Содержание
Первый проект Arduino. Светодиоды. Резисторы..... 3
Онлайн-платформа для создания
Arduino-проектов.............................................................. 3
Структура программы Arduino...................................... 8
Светодиод............................................................................ 9
Резистор............................................................................. 10
Небольшой проект.......................................................... 12
Список заданий................................................................ 14

2
Первый проект Arduino. Светодиоды. Резисторы

Первый проект Arduino.


Светодиоды. Резисторы
Онлайн-платформа для создания
Arduino-проектов
Что делать, если у Вас нет платы Arduino или нуж-
ных модулей для тестирования проекта? Именно для
таких ситуаций был создан интересный проект компании
Tinkercad — онлайн-платформа для создания и тестиро-
вания небольших Arduino-проектов. Для начала нужно
посетить сайт — https://www.tinkercad.com/circuits.
Создайте свой аккаунт и войдите в него.
После авторизации на сайте, Вы попадаете на стра-
ничку со списком проектов (модели — 3DDesigns, Ar­dui­
no — Circuits) (рис. 1).

Рисунок 1
Создадим новый проект. Выбираем «Circuits», затем —
«Create new circuits» (рис. 2).

3
Урок № 2

Рисунок 2
После этого, Вы перейдете на страницу нового про-
екта (рис. 3).

Рисунок 3
Рассмотрим базовый интерфейс (рис. 4).
Панель инструментов:
1. Поворот.
2. Удаление.
3. Назад (История).
4. Вперед (История).

4
Первый проект Arduino. Светодиоды. Резисторы

Рисунок 4
Панель управления проектом (рис. 5):

Рисунок 5
1. Редактор кода.
2. Список возможных компонентов.
3. Запуск симуляции работы проекта.
4. Экспорт проекта на другие платформы.
5. Поделится проектом.
▶▶ Комментарий к домашнему заданию: после создания
проекта щелкните «Share» и получите ссылку на
Ваш проект (для дальнейшей отправки домашнего
задания преподавателю).
Добавление компонентов
Добавьте плату Arduino. Выберите «Components».
Найдите в списке плату Arduino Uno и перетащите её
в рабочую область (рис. 6).

5
Урок № 2

Рисунок 6
Тестирование работы платы
После добавления платы, будет создана программа для
мигания светодиода. Нажмите кнопку «Start Simulation»
(рис. 7).

Рисунок 7

6
Первый проект Arduino. Светодиоды. Резисторы

Плата заработала, светодиод начал мигать. Но в ре-


альной жизни такого не будет. Сперва нужно будет уста-
новить скрипт для платы.
Рассмотрим код, который был создан автоматиче-
ски. Для этого нужно перейти во вкладку «Code Editor»
(рис. 8–9).

Рисунок 8

Рисунок 9
Слева размещен код в визуальном редакторе (аналог
Scratch), а справа — код на С.
Платформа «Circuits» позволяет тестировать проекты
онлайн и экспортировать код на реальную плату.
У Вас есть возможность разрабатывать код в визуаль-
ном редакторе. Однако, в рамках курса будет использован
способ программирования на С.

7
Урок № 2

Поэтому стоит отключить визуальный редактор, для


этого нажмите «Block» (рис. 10).

Рисунок 10
Структура Arduino программы
Любая программа на Arduino состоит из двух функций
(наборов команд, которые можно вызывать).
Функция «setup» — вызывается один раз, при запуске
платы (когда подается питание), а «loop» — вызывается
постоянно (рис. 11).

Рисунок 11
Теперь рассмотрим уже существующий код (рис. 12).

Рисунок 12
8
Первый проект Arduino. Светодиоды. Резисторы

Функция «setup» — с неё начинается принцип работы


пина.
Функция «pinMode» устанавливает принцип работы
для заданного пина. Необходимо добавить эту функцию
для всех пинов, которые используются.
Существует три возможных принципа работы: INPUT
(читаются данные пина), OUTPUT (данные передаются
в пин) и INPUT_PULLUP (для кнопки).
Для светодиода установлен принцип OUTPUT (не-
обходимо включать и выключать его).
В функции «loop» реализован алгоритм:
1. Зажечь светодиод.
2. Подождать секунду.
3. Потушить светодиод.
4. Подождать секунду.
Поскольку функция «loop» вызывается постоянно,
получается эффект мигания.
Рассмотрим код более детально.
Функция «digitalWrite» отправляет цифровое значение
в определенный пин. Значений два: HIGH (напряжение
подается) и LOW (напряжение не подается).
Функция «delay» создает задержку (ожидание) на
определенное время. Длительность задержки указывается
в миллисекундах.
Светодиод
Переходим к более интересным экспериментам. Возь-
мите светодиод и подключите его к Arduino. Сделайте так,
чтобы светодиод загорелся.

9
Урок № 2

Светодиод (англ. Light Emitting Diode или просто


LED) — миниатюрный аналог обычной лампочки (рис. 13).

Рисунок 13
Светодиод имеет маленькое сопротивление. Это зна-
чит, что нужно организовывать дополнительное сопро-
тивление — использовать резистор. Если не использовать
резистор, то светодиод может попросту сгореть. Порядок
установки резистора (до или после) — не важен.
Резистор
Резистор — искусственно созданное, сопротивление
для тока. Резистор снижает силу тока (рис. 14).

Рисунок 14
Классификация резисторов
Существует большое количество резисторов. Они
отличаются силой сопротивления.
На резисторах нет надписей о мощности. Это не прак-
тично, ведь занимает много места. Но как нам распозна-
вать резисторы?

10
Первый проект Arduino. Светодиоды. Резисторы

Номинал резистора определяется с помощью нане-


сенного на него «цветового кода» (рис. 15).

Рисунок 15

Наиболее популярные резисторы (рис. 16)

Рисунок 16

11
Урок № 2

Небольшой проект
После того, как рассмотрены нужные элементы, нач-
нём собирать свою схему.
Для этого понадобится макетная плата. Добавьте её
на свою область (с окна всех инструментов) (рис. 17).

Рисунок 17
Подключаем минус (землю) на макетную плату. Про-
тяните проводок от «GND»до полоски с минусом (для
создания проводов и поворотов используйте мышку)
(рис. 18).

Рисунок 18
Перетащите с окна компонентов на макетную плату
светодиод (рис. 19).

12
Первый проект Arduino. Светодиоды. Резисторы

Рисунок 19
Добавьте резистор на 220 ОМ. Перетащите его с окна
компонентов, не забудьте указать мощность (рис. 20).

Рисунок 20
Обратите внимание, что резистор подключен в минус.
Подключите любой пин к светодиоду (рис. 21).

Рисунок 21
13
Урок № 2

После сборки рабочей схемы, нужно отредактировать


программный код.
В примере светодиод подключен ко 2 пину. Все действия
необходимо проводить именно с этим пином (рис. 22).

Рисунок 22

Список заданий
■■ Создайте неравномерное мигание (светодиод больше
времени выключен, чем включён).
■■ Добавить два светодиода, которые горят по очереди
(горит первый — второй выключен; первый выклю-
чен — второй горит).
■■ Добавить три светодиода и реализовать движущею-
ся полосу (начинает гореть первый, затем загорается
второй, после него — третий и т.д.)

14
Первый проект Arduino. Светодиоды. Резисторы

15
Урок № 2
Первый Arduino проект.
Светодиоды. Резисторы

© Владислав Сорокопуд
© Компьютерная Академия «Шаг»
www.itstep.org

Все права на охраняемые авторским правом фото-, аудио- и видеопро-


изведения, фрагменты которых использованы в материале, принадле-
жат их законным владельцам. Фрагменты произведений используются в
иллюстративных целях в объёме, оправданном поставленной задачей, в
рамках учебного процесса и в учебных целях, в соответствии со ст. 1274
ч. 4 ГК РФ и ст. 21 и 23 Закона Украины «Про авторське право і суміжні
права». Объём и способ цитируемых произведений соответствует
принятым нормам, не наносит ущерба нормальному использованию
объектов авторского права и не ущемляет законные интересы автора
и правообладателей. Цитируемые фрагменты произведений на момент
использования не могут быть заменены альтернативными, не охраня-
емыми авторским правом аналогами, и как таковые соответствуют
критериям добросовестного использования и честного использования.
Все права защищены. Полное или частичное копирование материалов
запрещено. Согласование использования произведений или их фраг-
ментов производится с авторами и правообладателями. Согласованное
использование материалов возможно только при указании источника.
Ответственность за несанкционированное копирование и коммерческое
использование материалов определяется действующим законодатель-
ством Украины.