Выбери формат для чтения
Загружаем конспект в формате ppt
Это займет всего пару минут! А пока ты можешь прочитать работу в формате Word 👇
Лекция № 2
Знакомство со средой разработки Arduino
Что т акое Arduino?
Arduino – это инструмент для проектирования электронных
устройств
(электронный
конструктор)
более
плотно
взаимодействующих с окружающей физической средой, чем
стандартные персональные компьютеры, которые фактически не
выходят за рамки виртуальности.
Это платформа, предназначенная для «physical computing» с
открытым программным кодом, построенная на простой печатной
плате с современной средой для написания программного
обеспечения.
PC – это подход к изучению общения в системе человеккомпьютер-компьютер-человек, в основе которого лежит попытка
понимания способов физического самовыражения людей.
Для чего все это нуж но?
Arduino применяется для создания электронных
устройств с возможностью приема сигналов от различных
цифровых и аналоговых датчиков, которые могут быть
подключены
к
нему,
и
управления
различными
исполнительными устройствами.
Проекты устройств, основанные на Arduino, могут
работать
самостоятельно
или
взаимодействовать
с
программным обеспечением на компьютере.
Платы могут быть собраны пользователем
самостоятельно или куплены в сборе. Среда разработки
программ с открытым исходным текстом доступна для
бесплатного скачивания.
Язы к программирования
Язык программирования Arduino является реализацией Wiring,
схожей платформы для «physical computing», основанной на
мультимедийной среде программирования Processing.
Processing представляет собой программное приложение,
которое позволяет создавать, изменять, компилировать и
запускать Java-код. Это Java-подобный язык программирования,
созданный в MIT Media Lab с открытым исходным кодом и
одновременно среда разработки.
Processing позволяет очень быстро создавать визуальные
интерактивные интерфейсы пользователей.
Достоинст ва
Arduino упрощает процесс работы с микроконтроллерами
и имеет ряд преимуществ перед другими устройствами:
•Низкая стоимость – платы Arduino относительно дешевы по
сравнению с другими платформами. Самая недорогая версия
модуля Arduino может быть собрана в ручную, а некоторые
даже готовые модули стоят меньше 10 долларов.
•Кросс-платформенность – программное обеспечение Arduino
работает под ОС Windows, Macintosh OSX и Linux. Большинство
микроконтроллеров ограничивается ОС Windows.
•Простая и понятная среда программирования – среда Arduino
подходит как для начинающих пользователей, так и для
опытных.
Назначение элемент ов Arduino
UNO
11
Под циф рой 1 на рисунке
объединены :
- 14 (0-13) цифровых контактов, которые могут
работать в режиме входа или выхода, а так же 6 из
них (~3,~5, ~6, ~9, ~10, ~11) – в качестве ШИМвыходов;
- GND – «земля»;
- AREF – аналоговое сравнительное напряжение;
- SDA и SCL – реализация интерфейса I2C.
Циф ра 2 – индикационный светодиод, показывает наличие
внешнего питания на плате;
Циф ра 3 - контакты интерфейса ICSP для программирования
микроконтроллера;
Циф ра 4 - Микроконтроллер ATmega 328;
Циф ра 5 - входы аналого-цифрового преобразователя;
Циф ра 6 - контакты питания и вспомогательные контакты;
Циф ра 7 - разъем для подключения внешнего источника
питания 7-12 В;
Циф ра 8 – конвертер последовательного и USB
интерфейсов;
Циф ра 9 – USB разъём;
Циф ра 10 – кнопка сброса;
Циф ра 11 – светодиод, подключенный к цифровому
контакту 13 (доступен разработчику).
Технические характ ерист ики
Входы и вы ходы
Каждый из 14 цифровых контактов может работать в
качестве входа или выхода.
Уровень напряжения на выводах ограничен 5В.
Максимальный ток, который может отдавать или
потреблять один вывод, составляет 40 мА.
Все выводы сопряжены с внутренними подтягивающими
резисторами (по умолчанию отключенными) номиналом 20-50
кОм.
Помимо эт ого, некот оры е вы воды могут
вы полнят ь дополнит ельны е ф ункции:
Последоват ельны й инт ерф ейс: выводы 0 (RX) и 1
(TX). Исполь-зуются для получения (RX) и передачи (TX)
данных по последовательному интерфейсу. Эти выводы
соединены с соответствующими выводами микро-схемы
ATmega8U2, выполняющей роль преобразователя USBUART.
Внешние преры вания: выводы 2 и 3. Могут служить
источниками прерываний, возникающих при фронте, спаде
или при низком уровне сигнала на этих выводах.
ШИМ: выводы 3, 5, 6, 9, 10 и 11. могут выводить 8-битные
аналоговые значения в виде ШИМ-сигнала.
Интерф ейс SPI: выводы 10 (SS), 11 (MOSI), 12 (MISO), 13
(SCK) данные выводы могут осуществлять связь по интерфейсу
SPI.
Светодиод 13: Встроенный светодиод, подсоединенный к
выводу 13. При отправке значения HIGH светодиод включается,
при отправке LOW - выключается.
В Arduino Uno есть 6 аналоговых входов (A0 - A5), каждый из
которых может представить аналоговое напряжение в виде 10-битного
числа (1024 различных значения).
По умолчанию, измерение напряжения осуществляется
относительно диапазона от 0 до 5 В.
Пит ание
• Arduino Uno может получать питание через подключение
USB или от внешнего источника питания. Источник питания
выбирается автоматически.
• Внешнее питание (не USB) может подаваться через
преобразователь напряжения AC/DC (блок питания) или
аккумуляторной батареей. Преобразователь напряжения
подключается посредством разъема 2.1 мм с центральным
положительным
полюсом.
Провода
от
батареи
подключаются к выводам Gnd и Vin разъема питания.
• Платформа может работать при внешнем питании от 6 В до
20 В. При напряжении питания ниже 7 В, вывод 5V может
выдавать менее 5 В, при этом платформа может работать
нестабильно. При использовании напряжения выше 12 В
регулятор напряжения может перегреться и повредить
плату. Рекомендуемый диапазон от 7 В до 12 В.
Вы воды пит ания:
•VIN. Вход используется для подачи питания от внешнего
источника (в отсутствие 5 В от разъема USB или другого
регулируемого источника питания). Подача напряжения
питания происходит через данный вывод.
•5V. Регулируемый источник напряжения, используемый для
питания микроконтроллера и компонентов на плате. Питание
может подаваться от вывода VIN через регулятор
напряжения,
или от разъема
USB, или другого
регулируемого источника напряжения 5 В.
•3V3. Напряжение на выводе 3.3 В генерируемое встроенным
регулятором на плате. Максимальное потребление тока 50
мА.
•GND. Выводы заземления.
Памят ь
Микроконтроллер ATmega328 располагает 32 кБ флэшпамяти, из которых 0.5 кБ используется для хранения
загрузчика, а также 2 кБ ОЗУ (SRAM) и 1 Кб EEPROM.
(которая читается и записывается с помощью библиотеки
EEPROM).
Связь
•На платформе Arduino Uno установлено несколько устройств
для
осуществления
связи
с
компьютером,
другими
устройствами Arduino или микроконтроллерами.
•ATmega328 поддерживают последовательный интерфейс
UART TTL (5 В), осуществляемый выводами 0 (RX) и 1 (TX).
Установленная на плате микросхема ATmega8U2 направляет
данный интерфейс через USB, программы на стороне
компьютера "общаются" с платой через виртуальный COM порт.
•Прошивка ATmega8U2 использует стандартные драйвера USB
COM, никаких стороних драйверов не требуется, но на Windows
для подключения потребуется файл ArduinoUNO.inf.
• Мониторинг последовательной шины (Serial Monitor) программы
Arduino позволяет посылать и получать текстовые данные при
подключении к платформе.
• Светодиоды RX и TX на платформе будут мигать при передаче
данных через микросхему FTDI или USB подключение (но не при
использовании последовательной передачи через выводы 0 и 1).
• Библиотекой SoftwareSerial возможно создать последовательную
передачу данных через любой из цифровых выводов Uno.
• ATmega328 поддерживает интерфейсы I2C (TWI) и SPI. В Arduino
включена библиотека Wire для удобства использования шины I2C.
Среда разработ ки Arduino Uno
Среда разработки Arduino представляет собой
текстовый редактор программного кода, область
сообщений, окно вывода текста(консоль), панель
инструментов и несколько меню. Для загрузки
программ и связи среда разработки подключается к
аппаратной части Arduino.
Меню « Файл»
Меню " Файл" . Меню содержит
разнообразные вкладки по работе с файлом.
Пункт " Папка со скет чами" : По
умолчанию Arduino IDE сохраняет каждый скетч в
отдельную папку. Имя папки совпадает с именем,
указанным для скетча при сохранении. Изменить
рабочую директорию для папок со скетчами можно в
пункте меню "Настройки".
Меню «Правка»
Меню «Скетч»
Меню «Сервис»
Команды панели управления
Ст рукт ура программы
Особенност и язы ка
программирования
Первая программа
/*
Необходимо заставить мигать светодиод, расположенный
на плате: 1 секунду светодиод светится, 1 секунду нет.
(Этот светодиод подключен к цифровому контакту 13.)
*/
int led = 13;
void setup() {
pinMode(led, OUTPUT); // конфигурируем контакт как
«выход»
}
void loop() {
digitalWrite(led, HIGH); // высокий уровень, диод
светится
delay(1000);
// задержка 1 с
digitalWrite(led, LOW);
// низкий уровень, диод
гаснет
delay(1000);
// задержка 1 с
}
Конструкция индикаторного
светодиода