Урок №01. Знакомство с микроконтроллерной платформой Adruino.
Микроконтроллер представляет собой микросхему, которая используется для управления электронными устройствами. Типичный микроконтроллер сочетает на одном кристалле функции процессора и периферийных устройств, содержит ОЗУ и (или) ПЗУ. По сути, это однокристальный компьютер, способный выполнять относительно простые задачи. Не стоит путать с микропроцессором, так как он не содержит в себе периферийных устройств.
Под периферийными устройствами обычно понимают порты входа/выхода, ШИМ-модуляторы, таймеры, радиочастотные приёмники и так далее.
Что такое Arduino?
Arduino — эффективная аппаратно-программная платформа для проектирования и создания новых устройств, состоящая из самой платы и программного обеспечения.
Arduino применяется для создания электронных устройств с возможностью приема сигналов от различных цифровых и аналоговых датчиков, которые могут быть подключены к нему, и управления различными исполнительными устройствами. Проекты устройств, основанные на Arduino, могут работать самостоятельно или взаимодействовать с программным обеспечением на компьютере.
Arduino Uno — есть эталонная модель платформы типа Arduino.Существуют и другие модели, такие как Arduino Nano и Arduino Mega.
Как программировать Arduino?
Микроконтроллер Arduino программируется на специальном языке программирования, основанном на C/C ++. Язык программирования Arduino является разновидностью C++ и называется Wiring, другими словами, отдельного языка программирования для Arduino не существует.
C++ — компилируемый, статически типизированный язык программирования общего назначения. Код на таком языке состоит из отдельных блоков, называемых методами и функциями.
В программах для Arduino существуют две обязательные функции setup и loop . Их присутствие обязательно в любой программе на C++ для Arduino. Они могут ничего и не делать, но должны быть написаны. Так как любая программа состоит из отдельных блоков, то начало блока в C/C++ обозначается левой фигурной скобкой .
Ardublockly — это графический язык программирования для Arduino, предназначенный для новичков. Он прост в использовании.
Интерфейсы подключения
У микроконтроллерной платформы Arduino существует два типа интерфейсов входов/выходов(I/O ports) — аналоговые и цифровые порты, так же называемые пинами. Эти пины настраиваются как входы или как выходы, чтобы, соответственно, считывать информацию в виде электрического напряжения или передавать её в виде напряжения на определенный источник.
Цифровые порты
Цифровые порты 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13 позволяют подключить к Arduino различные датчики, сенсоры и прочие микросхемы. Цифровой порт имеет всего два значения для приёма/передачи: HIGH(высокий) и LOW(низкий). Они же соответственно 5V и 0V.
Аналоговые порты
Arduino Uno имеет на своей плате шесть
Первый опыт работы на Arduino
Что такое светодиод?
Простейшей задачей для новичков работы с Arduino можно назвать подключение светодиода к 5V.
Светодиод — это полупроводниковый прибор, способный излучать свет за счет того, что через него проходит электрический ток в прямом направлении от анода к катоду. Светодиоды можно разделить по цветам (желтый, зеленый, голубой, красный), а также по номинальному количеству потребляемого тока. Широко
распространены модели с током потребления 10 миллиампер (мА) и 20 мА.
Как подключить светодиод?
Первым делом вставляем светодиод в макетную плату. Затем подключаем к катоду ( короткая ножка светодиода) последовательно резистор. Далее первый провод одним концом подключаем к аноду (длинная ножка светодиода) , а другим концом к 5 пину на Arduino. Второй провод подключаем к резистору и к GND на Arduino
Код для примера
Скопируйте его в Arduino IDE, подключите Arduino к компьютеру и нажмите кнопку «Загрузить».
Arduino пробный тест
1. Как называется модуль, который легко соединяется с разными исполняющими устройствами, позволяя создавать и роботов, и устройства автоматики, и приборы.:
A) Atmel B) LEGO Mindstorms EV3
C) Arduino D) Ни один из перечисленных вариантов
2. Какие МК являются основами Arduino:
A) Microchip B) Intel 8051
C) Hitachi H8/3297 D) ATMEGA8 и ATMEGA168
3. Что из предложенных вариантов компилирует программный код и загружает его в устройство Arduino.:
A) B)
C) D)
4. Где на ПО находится поле для отображения служебных сообщений. Например, уведомлений об успешной загрузке программы:
A) В меню программы B) В панели иконок
C) Ниже окна отображения информации D) Внизу после текстового
5. Платформа Arduino имеет 14 цифровых вход/выходов. Сколько из них могут использоваться как выходы ШИМ:
6. Как называется этот элемент :
A) фоторезистор B) транзистор
C) ИК приемник D) ИК датчик движения
7. Какой функцией в программе можно назначить выводу порт ввода:
A) pinMode(pin, INPUT);
D) val = Serial.read ();
8. Каждый из 14 цифровых выводов Uno может настроен как вход или выход.
C) Только 1,2, 3, 4 – выходы, остальные входы
D) Только 1,2, 3, 4 – входы, остальные выходы
9. Что делает функция delay(n)?
A) Повторяет действие на n миллисекунд
B) Приостанавливает обработку программы на n миллисекунд
C) Прерывает программу на n миллисекунд
D) Переключает функцию
10. Для чего предназначен резистор?
A) Сопротивляться течению тока, преобразовывая его часть в тепло
B) Меняет сопротивление в зависимости от температуры
C) Преобразовывает электрическую энергию в механическую
D) Ничего из предложенного выше
11. Что такое Переменные?
A) Используется для повторения блока выражений, заключённых в фигурные скобки заданное число раз
B) Определяют начало и конец блока функции или блока выражений
C) Это способ именовать и хранить числовые значения для последующего использования программой
D)Открывают последовательный порт и задаёт скорость для последовательной передачи данных.
12. Каким образом обычно черный провод земля подключается к плате
B) К AREF выводу
13. Какая библиотека используется для работы с LCD дисплеем?
A) #include <Stepper.h>
C) #include <Servo.h>
D) #include <LiquidCrystal.h>
14. Какую функция используется для выключения светодиод:
A) digitalWrite(ledPin, LOW); B) digitalRead(ledPin, HIGH);
15. Какую флеш-память имеет микроконтроллер ATmega168 на Arduino?
16. Как можно сделать блок комментарий в Arduino:
A) с помощью () B) с помощью //
C) с помощью D) с помощью /* */
17. Какая функция записывает псевдо-аналоговое значение, используя схему с широтно-импульсной модуляцией (PWM), на выходной вывод, помеченный как PWM?
A) pinMode(pin, INPUT); B) analogWtite (pin, value)
C) analogRead (pin) D) digitalRead (pin)
18. Какой это датчик:
A) Датчик света B) Датчик температуры
C) Датчик вибрации D) Ультразвуковой датчик
19. Библиотека Stepper предоставляет удобный интерфейс управления:
A) LED дисплейем B) Шаговыми двигателями
C)Фоторезистором D) Сервоприводом
20. Язык программирования Arduino основан на _______.
A) Wiring, Processing, C/C++ B) Visual Basic
C) Python, Java D) Assembler
Просмотр содержимого документа
«Arduino пробный тест»
1. Как называется модуль, который легко соединяется с разными исполняющими устройствами, позволяя создавать и роботов, и устройства автоматики, и приборы.:
A) Atmel B) LEGO Mindstorms EV3
C) Arduino D) Ни один из перечисленных вариантов
2. Какие МК являются основами Arduino:
A) Microchip B) Intel 8051
C) Hitachi H8/3297 D) ATMEGA8 и ATMEGA168
3. Что из предложенных вариантов компилирует программный код и загружает его в устройство Arduino.:
A) B)
C) D)
4. Где на ПО находится поле для отображения служебных сообщений. Например, уведомлений об успешной загрузке программы:
A) В меню программы B) В панели иконок
C) Ниже окна отображения информации D) Внизу после текстового
5. Платформа Arduino имеет 14 цифровых вход/выходов. Сколько из них могут использоваться как выходы ШИМ:
6. Как называется этот элемент :
A) фоторезистор B) транзистор
C) ИК приемник D) ИК датчик движения
7. Какой функцией в программе можно назначить выводу порт ввода:
A) pinMode(pin, INPUT);
D) val = Serial.read ();
8. Каждый из 14 цифровых выводов Uno может настроен как вход или выход.
C) Только 1,2, 3, 4 – выходы, остальные входы
D) Только 1,2, 3, 4 – входы, остальные выходы
9. Что делает функция delay(n)?
A) Повторяет действие на n миллисекунд
B) Приостанавливает обработку программы на n миллисекунд
C) Прерывает программу на n миллисекунд
D) Переключает функцию
10. Для чего предназначен резистор?
A) Сопротивляться течению тока, преобразовывая его часть в тепло
B) Меняет сопротивление в зависимости от температуры
C) Преобразовывает электрическую энергию в механическую
D) Ничего из предложенного выше
11. Что такое Переменные?
A) Используется для повторения блока выражений, заключённых в фигурные скобки заданное число раз
B) Определяют начало и конец блока функции или блока выражений
C) Это способ именовать и хранить числовые значения для последующего использования программой
D)Открывают последовательный порт и задаёт скорость для последовательной передачи данных.
12. Каким образом обычно черный провод земля подключается к плате
B) К AREF выводу
13. Какая библиотека используется для работы с LCD дисплеем?
14. Какую функция используется для выключения светодиод:
A) digitalWrite(ledPin, LOW); B) digitalRead(ledPin, HIGH);
15. Какую флеш-память имеет микроконтроллер ATmega168 на Arduino?
16. Как можно сделать блок комментарий в Arduino:
A) с помощью () B) с помощью //
C) с помощью D) с помощью /* */
17. Какая функция записывает псевдо-аналоговое значение, используя схему с широтно-импульсной модуляцией (PWM), на выходной вывод, помеченный как PWM?
A) pinMode(pin, INPUT); B) analogWtite (pin, value)
C) analogRead (pin) D) digitalRead (pin)
18. Какой это датчик:
A) Датчик света B) Датчик температуры
C) Датчик вибрации D) Ультразвуковой датчик
19. Библиотека Stepper предоставляет удобный интерфейс управления:
Выпуск 3. Основы Arduino для начинающих. Arduino изнутри — структура, составляющие и их назначение. Микроконтроллер ATmega328P
Это третье видео (статья) из серии «основы Arduino для начинающих» и сегодня мы поговорим о внутренностях платы Arduino Uno и их предназначении, а так же уделим немного внимания её микроконтроллеру Atmega328.
Предыдущие выпуски вы найдете здесь: 0,1,2
Традиционно для вас доступны два варианта представления материала — видео и текст, надеюсь, оба варианта будут интересными 🙂
В прошлом выпуске мы говорили о том, какую плату для дальнейшего обучения лучше выбрать и остановились на использовании Arduino Uno третьей ревизии. Давайте же поближе познакомимся с компонентами этой платы и их предназначением, а также попробуем составить некоторую упрощенную структурную схему ее функционирования. Думаю, она позволит вам лучше понимать основной принцип взаимодействия отдельных узлов схемы и работу всей платы в целом.
Итак, слева я буду показывать китайский аналог Arduino Uno и его компоненты, а справа, шаг за шагом, мы будем строить функциональную схему.
С чего начинается любая схема? Конечно же, это различные компоненты, отвечающие за ее питание. Поэтому первым в нашей функциональной схеме мы выделим именно это. Вообще, у Arduino есть три пути получить энергию для работы: это питание по шине USB, от специального разъема питания на плате или входа Vin. Давайте разберем их все по отдельности.
Подключая плату к компьютеру посредством USB-интерфейса, вы подаете питание на Arduino благодаря четырехпроводной структуре шины USB, где 2 провода отвечают за передачу команд, а два других провода за непосредственное питание устройств. Именно по этим проводам Arduino и получает рабочее напряжение величиной 5В как это видно на принципиальной схеме. Так же, это напряжение поступает на вход стабилизатора напряжения, который понижает его до +3.3В, что необходимо для питания некоторых отдельных компонентов, подключаемых к Arduino, рассчитанных на это напряжение. Кстати, в качестве защиты от большого потребления тока вашей платой, на самом входе питающей линии разработчики установили небольшой предохранитель на 500мА, который, в случае различных обстоятельств, защитит USB-порт компьютера и плату Arduino от возможного выхода из строя.
все картинки кликабельны 🙂
Итак, следующим на очереди идет разъем питания для подключения, например, сетевого AC/DC-адаптера, аккумулятора или батареи. В отличие от USB-порта, где предполагается стабильное наличие напряжения 5В (или около того), в случае разъема питания ситуация складывается несколько иная, поскольку он рассчитан на подключение к нему источников питания различных напряжений. Диапазон этих значений колеблется в пределах от 6 до 20В и, при прямом подключении, это совсем не годится для компонентов нашей схемы. Поэтому разработчики поставили на входе питания стабилизаторы напряжения — один на 5В, другой на 3.3В. А так же парочку конденсаторов и диод, в качестве элементов борьбы с помехами и защиты от перепутывания полярности питания. Стоит отметить, что для стабилизатора напряжения всегда нужно напряжение, несколько выше того уровня, до которого он будет его понижать, и специфика стабилизатора такова, что уменьшение напряжения питания ниже 7В приводит к уменьшению напряжения на выводе 5V, что может стать причиной нестабильной работы устройства. Использование напряжения больше 12В может приводить к перегреву стабилизатора напряжения и выходу платы из строя. Именно поэтому, рекомендуется использовать источник питания с напряжением в диапазоне от 7 до 12В.
И, наконец, вывод Vin на плате Arduino. Если посмотреть на схему питания, то можно увидеть, что, при подключенном источнике питания к разъему, с этого вывода можно будет получить это же самое напряжение, правда, чуть меньшее из-за небольшого падения на диоде.
Ну а если теперь подключить источник питания к этому выводу, то напряжение так же попадет на стабилизатор 5В и плата будет запитана. Это удобно в случае использования различных батарей или аккумуляторов без специальных разъемов питания.
Стоит отметить, что Arduino сама выбирает источник питания с самым большим напряжением, и в этом ей помогает специальный элемент, называющийся компаратором. Если в двух словах, то компаратор, это такое устройство, которое сравнивает подаваемый на него сигнал с каким-либо опорным значением, и, если этот сигнал превышает опорное значение, то компаратор выдает на своем выходе логическую единицу (в нашем случае +5В).
Итак, с блоком питания разобрались, идем дальше.
На очереди у нас связующее звено между компьютером и программируемым нами микроконтроллером. Это еще один микроконтроллер ATmega8U2, либо, в более новых версиях ATmega16U2, который практически не заметен на плате.
Этот микроконтроллер представляет собой USART, что в переводе означает «Универсальный синхронно-асинхронный приемо-передатчик». Именно он осуществляет передачу данных по самому распространенному на сегодняшний день протоколу RS-232, c помощью которого связывает COM-порт вашего компьютера и программируемый микроконтроллер.
Помните, мы говорили, что USB-кабель имеет 4 провода, два из которых питающие, а два других – сигнальные? Так вот, именно по сигнальным проводам и происходит передача данных от ПК к микроконтроллеру и обратно, а свидетельствуют о приеме, либо передаче, специальные светодиоды на плате, имеющие названия Rx и Tx, где R это сокращение слова Receive, то есть прием, а T – transmit – то есть отправление. Причем выводы Rx и Tx всегда подключаются разноименно, то есть Rx принимающего устройства соединяется с Tx передающего, и наоборот. Это видно из схемы подключения двух микроконтроллеров на плате Arduino. Для тех, кто желает знать о том, как передаются данные по USB при помощи UART, я рекомендую ознакомиться с этой ссылкой.
Ну вот, наконец, мы и подошли с вами к главному компоненту платы Arduino – микроконтроллеру Atmega328P, который, собственно, и является основным вычислительным центром этой платформы. Давайте разберемся, из каких основных частей он состоит.
В обобщенном виде, любой микроконтроллер можно разбить на три составляющие части:
1. Вычислительный блок, иначе именуемый как арифметико-логическое устройство или процессор. Также, наверняка многие из вас слышали или видели такую аббревиатуру как CPU (Central Processing Unit) что в переводе на русский значит «центральное процессорное устройство». Именно этот блок является самой главной частью системы и предназначен он для выполнения различных операций с числами. А вот уже последовательность этих операций называется программой. Каждая операция кодируется в виде числа и записывается в память микроконтроллера, но об этом, в другой раз..
2. Собственно, второй основной частью микроконтроллера и является модуль памяти. Это специализированное электронное устройство, которое представляет собой набор ячеек, в каждой из которых может храниться одно число. Именно здесь хранится написанная вами программа и другие команды микроконтроллера. Память делится на оперативную — ОЗУ (оперативное запоминающее устройство) и постоянную – ПЗУ (постоянное запоминающее устройство. Принципиальная разница между этими видами памяти в том, что в случае с оперативной памятью, при выключении питания микроконтроллера, записанные значения не сохраняются и существуют только до тех пор, пока это питание присутствует. Например, такая память используется для хранения каких-либо промежуточных результатов вычислений. А вот данные, хранимые в постоянной памяти, наоборот, никак не зависят от наличия питания и могут быть использованы микроконтроллером сразу же после включения. В такую память, например, записывается вся разработанная вами программа, и она никуда не пропадет при повторной подаче напряжения на микроконтроллер.
3. Наконец, третьей составляющей частью микроконтроллера являются так называемые порты ввода-вывода. Если процессор и память находятся где-то в глубине корпуса микроконтроллера и мы их не видим, то порты ввода-вывода всегда на виду – вот они, в виде небольших металлических ножек.
Конечно же, не стоит забывать, что некоторые ножки отвечают за питание и прочие компоненты, подключаемые к микроконтроллеру, но большинство из них все-таки являются портами ввода-вывода, отвечающими за непосредственное управление микроконтроллером различными датчиками, модулями, светодиодами, транзисторами и так далее. Подавляющее большинство этих портов были выведены разработчиками Arduino по краям платы и, для удобства работы, подписаны.
Именно с этими портами нам и предстоит работать в дальнейшем, ведь суть любой микропроцессорной системы сводится к управлению чем-то извне, а иначе, зачем нам микроконтроллеры? 🙂
Как уже было сказано ранее, центральный процессор является основным мозгом микроконтроллера и именно он управляет модулем памяти и портами ввода-вывода. Более подробно о работе с портами ввода-вывода мы поговорим уже через один выпуск, когда будем работать со светодиодом и кнопкой, ну а сейчас я бы хотел заострить внимание на еще одном компоненте на плате, который мы не назвали – это генератор тактовых импульсов или кварцевый резонатор.
Не пугайтесь таких сложных названий, на самом деле, все просто – для работы любого микроконтроллера нужен некий генератор импульсов, благодаря которому он сможет осуществлять свою деятельность по последовательному выполнению команд. Например, мы написали с вами программу мигания светодиодом 10 раз в секунду. Но как микроконтроллер узнает, не имея никакого представления о длительности одной секунды, когда ему пора включить светодиод, а когда пора выключить? Именно благодаря кварцевому резонатору, который, в зависимости от его номинала, генерирует определенное число импульсов за одну секунду, это число имеет единицы измерения – герцы и называется частотой. Например, частота, равная 5Гц означает 5 импульсов в секунду, 10Гц — десять импульсов и так далее.
На плате Arduino Uno для двух микроконтроллеров установлены, соответственно, два кварцевых резонатора с частотой 16МГц, что означает работу резонатора с частотой 16 миллионов(!) импульсов в секунду — только представьте, какая это огромная скорость! Именно эти импульсы и считает наш микроконтроллер, а впоследствии, по их количеству, делает вывод о том, сколько времени прошло с запуска какой-либо процедуры. За весь этот счет отвечают различные счетчики и таймеры, о которых мы обязательно поговорим в следующих выпусках, но пока вам достаточно знать, отчего зависит скорость работы микроконтроллера и как он ориентируется во времени.
Так же на плате Arduino вы могли заметить небольшую кнопку – она называется кнопкой сброса или RESET, и при нажатии на нее переводит наш микроконтроллер в исходную позицию, с которой он начинал свою работу.
Итак, мы познакомились с вами с основными составляющими платы Arduino и совсем немного поговорили о микроконтроллере ATmega. Хочу заметить, что изучению структуры и принципам работы микроконтроллеров можно посвятить большой отдельный курс, поэтому я не стал углубляться в эту тему и рассчитываю на вашу дальнейшую любознательность и стремление изучить и понять как можно большее в этой интересной сфере. В качестве дальнейшего учебного пособия по изучению микроконтроллеров AVR, не сочтите за рекламу, я советую вам книгу Белова А.В., в которой, на мой взгляд, достаточно доступным языком описаны все нюансы работы с микроконтроллерами.
Ну а на этом обзорный пост платы Arduino подходит к концу и в следующем выпуске мы познакомимся со средой программирования Arduino IDE – то есть её установкой, настройкой и пользовательским интерфейсом. Надеюсь, что данный материал был полезным и интересным для вас, спасибо за внимание и до встречи в новом выпуске! 🙂
Методическое пособие для урока технологии (7 класс) «Микроконтроллер «Ардуино». Устройство и программирование.»
Для понимания работы АСУ необходимы уроки теоретической подготовки, на которых даются основы электротехники, устройство и принцип действия микроконтроллеров, особенности их программирования и использования в быту и на производстве. Далее необходимы практические занятия, где бы ученики смогли применить свои умения.
Я предлагаю построить мини-блок из двух уроков на основе работы с микроконтроллером «Ардуино»
В этой методической разработке объяснены принципы использования микроконтроллера, и даны рекомендации по этапности урочной деятельности. Учитель, использующий эту разработку, может сконструировать свой индивидуальный урок, основываясь на поставленных педагогических целях, учитывая особенности классного коллектива и уровень подготовленности учеников.
Урок 1. Микроконтроллер «Ардуино». Устройство и программирование.
Первый урок в этом модуле посвящён практическому знакомству учеников с устройством «Ардуино», способами его программирования, программным обеспечением; созданию простейших управляющих программ.
Далее я привожу фрагменты информации, выдаваемой учащимся, и пояснения для учителя (курсивом).
Для эффективной работы ученики делятся на группы от 2 до 4 человек в каждой. На каждую группу необходимо иметь лабораторный набор, включающий микроконтроллер «Ардуино», светодиод с прямым падением напряжения от 1 до 3 В и током от 5 до 20 мА, резистор сопротивлением 150-300 Ом, беспаечная макетная плата, компьютер или ноутбук с программным обеспечением Arduino IDE, USB-провод для подключения микроконтроллера к компьютеру.
Микроконтро́ллер ( англ. Micro Controller Unit, MCU) — микросхема для управления электронными устройствами . Говоря простым языком, это маленький компьютер для выполнения несложных задач.
В последнее время широкое распространение получили микроконтроллеры семейства Ардуино. Нужно отметить, что кроме доступности и большого разнообразия этих контроллеров, они используют открытое бесплатное программное обеспечение.
Виды микроконтроллеров семейства Ардуино (Arduino)
Наиболее удобным для использования в учебном процессе является микроконтроллер Arduino UNO (функционал/цена) или его клон.
Обозначение на схеме
Микроконтроллер Arduino UNO имеет 20 портов для подключения внешних устройств. Они обозначены А0-А5 и D0-D13.
Для удобства сборки схем мы будем использовать беспаечную макетную плату (breadboard), которая позволяет достаточно просто осуществлять соединение деталей электрических цепей, не прибегая к пайке или скрутке.
Макетная плата имеет внутреннее соединение 5 вертикально расположенных контактов обозначенных буквами a1-b1-c1-d1-e1, a2-b2-c2d2-e2, и т.д. Аналогично соединены контакты f1-g1-h1-i1-j1, f2-g2-h2-i2-j2, и т.д. Горизонтальные ряды контактов, обозначенные красными и синими линиями, также имеют внутренние перемычки.
Обратите внимание как соединены контакты на вашей макетной плате. Если на ней горизонтальные линии, обозначенные красным и синим цветом имеют разрыв, то и проводник внутри макетной платы тоже прерывается!
А теперь давайте соберем простое автоматическое устройство для управления освещением и запрограммируем его.
Роль осветительного прибора будет играть светодиод белого света
При подключении светодиода нужно соблюдать полярность: анод («плюс») светодиода – длинная ножка, катод («минус») светодиода — короткая ножка.
Рассмотрим принципиальную схему устройства.
Светодиод VD1 можно подключать к любому из 20 портов Микроконтроллера Arduino UNO. В нашем примере мы используем порт 12. Этот номер мы учтем при программировании микроконтроллера.
Резистор R1 нужен для ограничения тока через светодиод, без него светодиод выйдет из строя. Плата Arduino Uno имеет три пина GND (англ. ground — земля), являющиеся общим («минусовым») проводом питания, можно использовать любой из них .
Соберем устройство, используя монтажную схему
Еще раз обратите внимание на полярность подключения светодиода « + » к 12 порту микроконтроллера, « — » к резистору.
Теперь перейдем к программированию устройства. Нам потребуется компьютер (ноутбук) с установленной на нем средой программирования Arduino IDE. ( Последнюю версию можно скачать по ссылке http://www.arduino.cc/en/Main/Software )
Среда программирования устройств Arduino IDE использует язык, основанный на C++. Этот язык достаточно прост в изучении, и сейчас является одним из наиболее удобных способов программирования устройств на микроконтроллерах. Но начальном этапе мы будем использовать среду графического программирования Ardublock. Ardublock – это графический язык программирования для Ардуино, предназначенный для начинающих. Эта среда достаточно проста в использовании, ее легко установить (последнюю версию можно скачать по ссылке http://ardublock.ru/ru ), она практически полностью переведена на русский язык. Визуально сконструированную программу, напоминающую блоки Scratch, легко конвертировать в код Arduino IDE.
Сначала запустим среду программирования Arduino IDE. Значок на рабочем столе. И в открывшемся окне
Перейдем на вкладку «Инструменты»(«Tools») и выберем строку Ardublock
В открывшемся окне мы видим основное рабочее поле. На нем мы можем размещать последовательность блоков команд (напоминающих пазлы), которые будет выполнять наша программа.
Сами блоки команд сгруппированы по разделам в столбце слева от основного рабочего поля.
На основном поле уже размещен блок «цикл», который необходим для работы программы.
На этом занятии нам потребуются команды:
— «Установить цифровой порт», которая будет управлять выбранным нами портом 12 (включать и выключать присоединенный к нему светодиод),
— «Задержка в миллисекундах», которая приостанавливает выполнение программы на заданный промежуток времени.
Для выбора номера порта воспользуемся выпадающим списком возле коричневого блока с номером «D13»
Для выбора состояния порта (включен – высокий(HIGH) или выключен – низкий(LOW)) воспользуемся выпадающим списком возле фиолетового блока с надписью «HIGH»
Для установки промежутка времени, на который программа приостановит свое выполнение, нужно ввести с клавиатуры число в поле розового блока, присоединенного к блоку «задержка в миллисекундах».
Обратите внимание , что данное число задает промежуток времени в МИЛЛИСЕКУНДАХ!
(Для тренировки задайте в миллисекундах временной интервал 3 секунды, полсекунды,…)
Теперь создадим программу, которая будет включать и выключать наш световой прибор, подключенный к порту 12, с интервалом времени 1 секунда.
Для того, чтобы созданная программа начала выполняться, её необходимо загрузить в плату микроконтроллера (кнопка «Загрузить в Ардуино» сверху основного рабочего поля).
После завершения загрузки вы увидите как светодиод на макетной плате мигает с периодом 2 секунды (1 секунда – свечение, 1 секунда — пауза).
1. Измените программу так, чтобы ваше автоматическое устройство включало свет на 2 секунды, а выключало на 4 секунды.
2. Измените подключение светодиода к микроконтроллеру так, чтобы управление шло через порт 6 (не забудьте внести изменения в программу).
Сегодня мы научились управлять включением и выключением электрических устройств на примере светодиода с помощью микроконтроллера семейства Ардуино. На следующем уроке мы создадим и запрограммируем с помощью этого микроконтроллера действующую модель светофора.
Следующая методическая разработка будет посвящена второму уроку представленного мини-блока.