Лабораторные работы        Технологии+Бизнес

 

Цель работы

Знакомство с базовыми функциями среды разработки Arduino IDE

Задачи работы

  1. Установка среды разработки.
  2. Дополнительные настройки для ОС Linux.
  3. Подключение платы Arduino к среде.
  4. Загрузка примера из набора примеров.
  5. Управление библиотеками.

Инструменты для выполения работы

  1. Компьютер с подключением к сети Internet.
  2. Плата Arduino с USB выходом (например, Arduino Leonardo).

Теоретическая часть


Платформа Arduino представляет собой семейство микроконтроллеров на базе процессоров Atmel, STM и ARM. Все микроконтроллеры программируются на С-подобном языке в среде разработки Arduino IDE. Большая часть плат Arduino (кроме маленьких, таких как micro, pro mini) имеют идентичное расположение пинов и позволяют подключать унифицированные сторонние модули, называемые шилдами (Shield). На всех платах имеется набор цифровых и аналоговых пинов, а так же интерфейсы SPI и I2C. Для работы со сторонними модулями в среде разработки имеется менеджер библиотек, куда собраны наиболее часто используемые для Arduino библиотеки.
 
Обзор ресурсов по arduino
 
Задание: собрать информацию по основным микроконтроллерам семейства Arduino в таблицы
Название контроллера CPU и рабочая частота объем flash памяти объем SRAM рабочее напряжение
         
         
         
         
         
         
         
         
         
 
Название контроллера количество цифровых пинов количество аналоговых входов распиновка SPI распиновка I2C пины с поддержкой PWM пины с поддержкой прерываний
             
             
             
             
             
             
             
             
             

Большинство микроконтроллеров имеют поддержку USB (встроенную либо вынесенную в отдельный преобразователь) и подключаются к операционной системе как последовательный порт. Последовательный порт (COM порт) - специальный порт для последовательной передачи данных между устройствами. Может быть аппаратным (специальный COM разъем на материнской плате ПК), либо эмулируется драйвером устройства поверх другого аппаратного протокола (например, поверх USB, как в случае с Arduino). Последовательный порт используется для загрузки программы на микроконтроллер, а так же может использоваться для взаимодействия ПК и программы для микроконтроллера (в Arduino IDE по другому эта программа называется "скетч").

Задание: опишите представление последовательных портов в ОС семейств WIndows и Linux (UNIX) и методы программного взаимодействия с ними
 

Скетч для микроконтроллера Arduino представляет собой файл с расширением .ino, содержащий код на языке C. Код состоит из нескольких основных блоков:
  1. Объявления глобальных переменных, констант, макроопределений, подключения заголовочных файлов библиотек.
  2. Определение пользовательских функций, структур и классов.
  3. Функция setup() - вызывается один раз в начале работы программы, в ней должна производится инициальзация контроллера - настройка пинов, запуск последовательного порта, SPI и I2C интерфейсов.
  4. Функция loop() - вызывается микроконтроллером в бесконечном цикле, в ней производится основная работа.

Выполнение работы

Установка среды разработки


Открываем веб-браузер, заходим на https://www.arduino.cc/en/Main/Software и скачиваем нужную версию среды разработки для установленной на ПК операционной системы. На момент написания лабораторной работы последняя версия 1.8.3. Запускаем установщик для ОС Windows или распаковываем архив.

Дополнительные настройки для ОС Linux

Для того, чтобы была возможность подключить плату к среде разработки на ОС Linux, необходимо добавить пользователя в группу dialout. Это можно сделать либо при помощи стандартного интерфейса управления пользователями и группами (если присутствует), либо командой
$ sudo usermod -aG dialout

Подключение платы к среде разработки

Подключаем плату к ПК USB кабелем. В среде разработки указываем нужную плату:


Далее указываем нужный порт:

(На ОС Windows будут названия портов вида COM1, COM2, и т.д.)
Вызвав пункт меню "Инструменты -> Get board info", можно проверить, что на выбранном порту действительно находится нужная плата.
 

Загрузка примера из набора примеров

Выбираем из библиотеки примеров скетч Blink (Файл -> Примеры -> 0.1Basics -> Blink). Проверяем выбранный порт и плату. Нажимаем кнопку Загрузить () или выбираем "Скетч -> Загрузка". После загрузки скетча на плате должен начать мигать светодиод раз в секунду.
 

Управление библиотеками


Иногда в процессе работы возникает необходимость подключения к скетчу сторонних библиотек, например, для работы с различными датчиками. Для этого нужно сначала загрузить необходимую библиотеку в IDE. Выбираем пункт меню "Скетч -> Подключить библиотеку -> Управление библиотеками". В менеджере библиотек присутствует множество библиотек для работы с различными модулями/протоколами и т.п. После загрузки библиотеки нужно подключить ее к скетчу. Для примера, подключим одну из стандартных библиотек Wire. Выбираем "Скетч -> Подключить библиотеку -> Wire". При этом IDE автоматически добавит изменения в скетч, необходимые для подключения библиотеки. В верху файла скетча должна появиться строка:
#include <Wire.h>
Задание: найдите в менеджере библиотек библиотеки для работы с датчиками температуры и выпишите их в список
 

Сформулируйте замечания к лабораторной работе. Есть ли в описании работы  непонятные места? 

 




Лабораторные работы        Технологии+Бизнес