Читаем Программируем Arduino. Основы работы со скетчами полностью

Традиционно самой большой считается Arduino Mega 2560. Эти платы, подобно всем другим большим платам Arduino, имеют больше памяти каждого вида. Платы Mega 2560 и Mega ADK комплектуются процессорами с производительностью, схожей с производительностью процессора в модели Arduino Uno. Но в целом Arduino Due — более «мощная машина». Эта плата комплектуется процессором с тактовой частотой 84 МГц (сравните с 16 МГц модели Uno), но имеет проблемы совместимости с другими моделями. Самая большая из них состоит в том, что для электропитания Due должно использоваться напряжение 3,3 В вместо 5 В, как для большинства предыдущих моделей Arduino. Неудивительно, что многие платы расширения несовместимы с ней.

Однако эта плата имеет множество преимуществ, значимых для большинства проектов с высокими требованиями:

• большой объем памяти для программ и данных;

• аппаратная поддержка вывода звуков (аппаратные цифроаналоговые преобразователи);

• четыре последовательных порта;

• два порта USB;

• интерфейсы USB-хоста и USB OTG;

• имитация USB-клавиатуры и USB-мыши.

Маленькие платы Arduino

Для одних проектов модель Uno может оказаться слишком маленькой, но для других — слишком большой. Несмотря на невысокую стоимость плат Arduino, они становятся слишком дорогим удовольствием, если включать их в каждый проект. Существует целый спектр маленьких и специализированных плат Arduino, которые имеют меньший размер, чем обычная модель Uno, или более низкую цену за счет отсутствия каких-то особенностей, не требующихся в большинстве проектов.

На рис. 1.11 изображена плата Arduino Mini. Эта модель не имеет интерфейса USB, а ее программирование осуществляется с применением отдельного модуля расширения. Помимо Mini существуют также модели Nano и Micro. Обе они имеют встроенный интерфейс USB, но и стоят дороже.

Рис. 1.11. Arduino Mini и Arduino Programmer

Платы LilyPad и LilyPad USB

Плата LilyPad и более новая ее версия LilyPad USB — одни из самых интересных моделей Arduino (рис. 1.12). Эти платы можно вшивать в элементы одежды и соединять их токопроводящими нитями со светодиодами, выключателями, акселерометрами и другими устройствами. Для программирования более старых плат LilyPad требуется использовать отдельный интерфейс USB, как в случае с Arduino Mini. Однако эти платы постепенно вытесняются более новой модификацией Arduino LilyPad USB, имеющей встроенный разъем USB.

Рис. 1.12. Arduino LilyPad

Неофициальные платы Arduino

Благодаря статусу открытого аппаратного обеспечения помимо «официальных» плат, описанных ранее, появилось множество неофициальных копий и модификаций Arduino. Прямые клоны Arduino, которые без труда можно найти на eBay и других недорогих торговых площадках, являются простыми копиями плат Arduino. Единственное их преимущество — невысокая цена. Но существует также ряд интересных Arduino-совместимых разработок, предлагающих дополнительные возможности.

В числе примеров такого рода плат, которым стоит уделить внимание, можно назвать:

• EtherTen — аналог платы Arduino Ethernet (www.freetronics.com/products/etherten);

• Leostick A — малогабаритный аналог платы Leonardo со встроенным разъемом USB (www.freetronics.com/collections/arduino/products/leostick).

Теперь, после знакомства с аппаратной стороной Arduino, можно перейти к знакомству с возможностями их программирования.

Язык программирования

Многие ошибочно полагают, что платы Arduino имеют собственный язык программирования. В действительности программы для них пишутся на языке с простым названием C. Этот язык существует с самых первых дней развития вычислительной техники. А вот что действительно привносит Arduino — это набор простых в использовании команд, написанных на C, которые вы можете использовать в своих программах.

Пуристы могут заметить, что в Arduino используется C++, объектно-ориентированное расширение языка C. Строго говоря, они правы, однако наличие всего 1–2 Кбайт памяти обычно означает, что использование объектно-ориентированных приемов при программировании для Arduino не самая лучшая идея, за исключением особых ситуаций, и фактически программы пишутся на C.

Начнем с изменения скетча Blink.

Изменение скетча Blink

Может так случиться, что при первом включении ваша плата Arduino уже мигает светодиодом. Это объясняется тем, что платы Arduino часто поставляются с установленным скетчем Blink.

Если у вас именно такая плата, вам может понравиться предложение изменить частоту мигания, чтобы убедиться, что вы можете сделать что-то своими руками. Давайте рассмотрим скетч Blink, чтобы понять, какие изменения следует внести, чтобы заставить светодиод мигать чаще.

Первая часть скетча — это комментарий, описывающий назначение скетча. Комментарий не является программным кодом. В процессе подготовки кода к выгрузке все такие комментарии удаляются. Все, что находится между парами символов /* и */, игнорируется компьютером и адресовано людям.

/*

  Blink

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

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

Основы программирования в Linux
Основы программирования в Linux

В четвертом издании популярного руководства даны основы программирования в операционной системе Linux. Рассмотрены: использование библиотек C/C++ и стан­дартных средств разработки, организация системных вызовов, файловый ввод/вывод, взаимодействие процессов, программирование средствами командной оболочки, создание графических пользовательских интерфейсов с помощью инструментальных средств GTK+ или Qt, применение сокетов и др. Описана компиляция программ, их компоновка c библиотеками и работа с терминальным вводом/выводом. Даны приемы написания приложений в средах GNOME® и KDE®, хранения данных с использованием СУБД MySQL® и отладки программ. Книга хорошо структурирована, что делает обучение легким и быстрым. Для начинающих Linux-программистов

Нейл Мэтью , Ричард Стоунс , Татьяна Коротяева

ОС и Сети / Программирование / Книги по IT
97 этюдов для архитекторов программных систем
97 этюдов для архитекторов программных систем

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

Билл де Ора , Майкл Хайгард , Нил Форд

Программирование, программы, базы данных / Базы данных / Программирование / Книги по IT
Программист-прагматик. Путь от подмастерья к мастеру
Программист-прагматик. Путь от подмастерья к мастеру

Находясь на переднем крае программирования, книга "Программист-прагматик. Путь от подмастерья к мастеру" абстрагируется от всевозрастающей специализации и технических тонкостей разработки программ на современном уровне, чтобы исследовать суть процесса – требования к работоспособной и поддерживаемой программе, приводящей пользователей в восторг. Книга охватывает различные темы – от личной ответственности и карьерного роста до архитектурных методик, придающих программам гибкость и простоту в адаптации и повторном использовании.Прочитав эту книгу, вы научитесь:Бороться с недостатками программного обеспечения;Избегать ловушек, связанных с дублированием знания;Создавать гибкие, динамичные и адаптируемые программы;Избегать программирования в расчете на совпадение;Защищать вашу программу при помощи контрактов, утверждений и исключений;Собирать реальные требования;Осуществлять безжалостное и эффективное тестирование;Приводить в восторг ваших пользователей;Формировать команды из программистов-прагматиков и с помощью автоматизации делать ваши разработки более точными.

А. Алексашин , Дэвид Томас , Эндрю Хант

Программирование / Книги по IT