Читаем Изучаем Arduino: инструменты и методы технического волшебства полностью

6.4. Платы Arduino с микроконтроллером, снабженным встроенным интерфейсом USB

Плата Arduino Leonardo была первой платой, имеющей только одну микросхему, выполняющую функции и программируемого пользователем микроконтроллера, и интерфейса USB. На плате Arduino Leonardo (и ее клонах) установлен микроконтроллер 32U4, поддерживающий прямую передачу через USB. Это дает несколько преимуществ.

Во-первых, уменьшается стоимость платы, потому что на ней меньше компонентов и короче программа первоначальной загрузки платы. Во-вторых, плата способна эмулировать не только последовательный порт, но и другие устройства (такие как клавиатура, мышь или джойстик). В-третьих, обычный порт USART на ATmega не мультиплексирован с выводами интерфейса USB, поэтому возможен параллельный обмен данными как с главным компьютером, так и с внешним последовательным устройством (таким как модуль GPS).

Вот список плат Arduino, снабженных микроконтроллером со встроенным интерфейсом USB:

• Arduino Due ( ее также можно запрограммировать через вспомогательный микроконтроллер);

• LilyPad Arduino USB;

• Arduino Esplora;

• Arduino Leonardo;

• Arduino Micro.

- 124 -

6.5. Платы Arduino с возможностями USB-хоста


Некоторые платы Arduino обладают возможностями USB-хоста, что позволяет подсоединить к ним традиционные USB-устройства (клавиатуры, мыши, телефоны на базе Android). Естественно, для поддержки этих устройств потребуются дополнительные драйверы. Например, нельзя просто так соединить веб-камеру с Arduino Due и сразу же ожидать получения фотографий. Arduino Due поддерживает класс USB Host, что позволяет подключить к USB-порту клавиатуру или мышь. Arduino Mega ADK поддерживает протокол Android Open Accessory Protocol (АОА), что упрощает обмен данными между Arduino и устройством на базе Android. Прежде всего, это нужно для управления вводом-выводом Arduino из приложения, работающего на устройствах на базе Android.

Возможности USB-хоста поддерживают две платы: Arduino Due и Arduino Mega ADK (на основе Mega 2560).

6.6. Опрос Arduino с компьютера

Основная функция, которую обеспечивает последовательный интерфейс, - вывод данных с Arduino в терминал компьютера. В предыдущих главах об этом уже упоминалось. В этом разделе более детально остановимся на данном вопросе и позже рассмотрим примеры приложений, которые отвечают на данные, которые вы отправляете, вместо того, чтобы просто выводить их в терминал. Этот процесс одинаков для всех плат Arduino.

6.6.1. Пример вывода данных

Для вывода данных в терминал существуют три функции:

• Serial.begin (baud_rate);

• Serial.print ( "Message");

• Serial.println ("Message"),

где baud_rate и message- переменные, задаваемые пользователем.

Как вы уже знаете, функция Serial. begin() вызывается один раз в начале программы в setup(), чтобы настроить последовательный порт для связи. После этого можно вызвать функции Serial.print() и serial.println() для передачи данных в последовательный порт. Единственное различие между ними состоит в том, что функция serial.println() добавляет символ перевода в конце строки. Чтобы поэкспериментировать с этими функциями, соберем простую схему, подключив потенциометр к контакту A0 платы Arduino, как показано на рис. 6.6.

После подключения потенциометра загрузите простую программу, приведенную в листинге 6.1, которая выводит показания потенциометра в виде абсолютного значения и в процентах.


Рис. 6.6. Схема подключения потенциометра

Листинг 6.1. Тестовая программа ввода значений потенциомтре в последовательный порт - pot.ino

// Тестовая программа вывода значений потенциометра в последовательный порт

const int POT=0; // Подключение потенциометра к аналоговому входу A0


void setup()

{

Serial.begin(9600); // Инициализация последовательного порта на скорости 9600

}

- 126 -

void loop()

{

int val = analogRead(POT);// Чтение данных с потенциометра

int per = map(val, 0, 1023, 0, 100);// Перевод в процентное значение

Serial.print("Analog Reading: ");

Serial.print(val);// Вывод аналогового значения

Serial.print(" Percentage: ");

Serial.print(per);// Вывод значения в процентах

Serial.println("%");

delay(1000);// Ожидание 1 сек перед получением новых данных

}

6.6.2. Использование специальных символов

Вы также можете передавать различные "специальные" (или управляющие) символы, которые позволяют изменить форматирование последовательных данных при выводе на печать. Управляющий символ начинается с обратного слэша (\), за которым следует символ команды. Есть много специальных символов, но два из них представляют наибольший интерес: табуляция и переход на новую строку. Чтобы вставить символ табуляции, нужно добавить к строке управляющую последовательность \t. Символ перехода на новую строку вставляют, добавляя к строке \n.

Перейти на страницу:

Похожие книги

Самоучитель UML
Самоучитель UML

Самоучитель UMLПервое издание.В книге рассматриваются основы UML – унифицированного языка моделирования для описания, визуализации и документирования объектно-ориентированных систем и бизнес-процессов в ходе разработки программных приложений. Подробно описываются базовые понятия UML, необходимые для построения объектно-ориентированной модели системы с использованием графической нотации. Изложение сопровождается примерами разработки отдельных диаграмм, которые необходимы для представления информационной модели системы. Цель книги – помочь программистам освоить новую методологию разработки корпоративных программных приложений для последующего применения полученных знаний с использованием соответствующих CASE-инструментов.

Александр Васильевич Леоненков , Александр Леоненков

Зарубежная компьютерная, околокомпьютерная литература / Программирование / Прочая компьютерная литература / Книги по IT
Основы информатики: Учебник для вузов
Основы информатики: Учебник для вузов

Учебник состоит из двух разделов: теоретического и практического. В теоретической части учебника изложены основы современной информатики как комплексной научно-технической дисциплины, включающей изучение структуры и общих свойств информации и информационных процессов, общих принципов построения вычислительных устройств, рассмотрены вопросы организации и функционирования информационно-вычислительных сетей, компьютерной безопасности, представлены ключевые понятия алгоритмизации и программирования, баз данных и СУБД. Для контроля полученных теоретических знаний предлагаются вопросы для самопроверки и тесты. Практическая часть освещает алгоритмы основных действий при работе с текстовым процессором Microsoft Word, табличным редактором Microsoft Excel, программой для создания презентаций Microsoft Power Point, программами-архиваторами и антивирусными программами. В качестве закрепления пройденного практического курса в конце каждого раздела предлагается выполнить самостоятельную работу.

Вадим Васильевич Лысенко , Лариса Александровна Малинина , Максим Анатольевич Беляев

Зарубежная компьютерная, околокомпьютерная литература / Прочая компьютерная литература / Книги по IT
Внутреннее устройство Microsoft Windows (гл. 1-4)
Внутреннее устройство Microsoft Windows (гл. 1-4)

Книга посвящена внутреннему устройству и алгоритмам работы основных компонентов операционной системы Microsoft Windows — Windows Server 2003, Windows XP и Windows 2000 — и файловой системы NTFS. Детально рассмотрены системные механизмы: диспетчеризация ловушек и прерываний, DPC, APC, LPC, RPC, синхронизация, системные рабочие потоки, глобальные флаги и др. Также описываются все этапы загрузки операционной системы и завершения ее работы. B четвертом издании книги больше внимания уделяется глубокому анализу и устранению проблем, из-за которых происходит крах операционной системы или из-за которых ее не удается загрузить. Кроме того, рассматриваются детали реализации поддержки аппаратных платформ AMD x64 и Intel IA64. Книга состоит из 14 глав, словаря терминов и предметного указателя. Книга предназначена системным администраторам, разработчикам серьезных приложений и всем, кто хочет понять, как устроена операционная система Windows.Названия всех команд, диалоговых окон и других интерфейсных элементов операционной системы приведены как на английском языке, так и на русском.Версия Fb2 редакции — 1.5. Об ошибках просьба сообщать по адресу — general2008@ukr.net.

Дэвид Соломон , Марк Руссинович

Зарубежная компьютерная, околокомпьютерная литература / Прочая компьютерная литература / Книги по IT