- Любовные романы
- Фантастика и фэнтези
- Ненаучная фантастика
- Ироническое фэнтези
- Научная Фантастика
- Фэнтези
- Ужасы и Мистика
- Боевая фантастика
- Альтернативная история
- Космическая фантастика
- Попаданцы
- Юмористическая фантастика
- Героическая фантастика
- Детективная фантастика
- Социально-психологическая
- Боевое фэнтези
- Русское фэнтези
- Киберпанк
- Романтическая фантастика
- Городская фантастика
- Технофэнтези
- Мистика
- Разная фантастика
- Иностранное фэнтези
- Историческое фэнтези
- LitRPG
- Эпическая фантастика
- Зарубежная фантастика
- Городское фентези
- Космоопера
- Разное фэнтези
- Книги магов
- Любовное фэнтези
- Постапокалипсис
- Бизнес
- Историческая фантастика
- Социально-философская фантастика
- Сказочная фантастика
- Стимпанк
- Романтическое фэнтези
- Ироническая фантастика
- Детективы и Триллеры
- Проза
- Юмор
- Феерия
- Новелла
- Русская классическая проза
- Современная проза
- Повести
- Контркультура
- Русская современная проза
- Историческая проза
- Проза
- Классическая проза
- Советская классическая проза
- О войне
- Зарубежная современная проза
- Рассказы
- Зарубежная классика
- Очерки
- Антисоветская литература
- Магический реализм
- Разное
- Сентиментальная проза
- Афоризмы
- Эссе
- Эпистолярная проза
- Семейный роман/Семейная сага
- Поэзия, Драматургия
- Приключения
- Детская литература
- Загадки
- Книга-игра
- Детская проза
- Детские приключения
- Сказка
- Прочая детская литература
- Детская фантастика
- Детские стихи
- Детская образовательная литература
- Детские остросюжетные
- Учебная литература
- Зарубежные детские книги
- Детский фольклор
- Буквари
- Книги для подростков
- Школьные учебники
- Внеклассное чтение
- Книги для дошкольников
- Детская познавательная и развивающая литература
- Детские детективы
- Домоводство, Дом и семья
- Юмор
- Документальные книги
- Бизнес
- Работа с клиентами
- Тайм-менеджмент
- Кадровый менеджмент
- Экономика
- Менеджмент и кадры
- Управление, подбор персонала
- О бизнесе популярно
- Интернет-бизнес
- Личные финансы
- Делопроизводство, офис
- Маркетинг, PR, реклама
- Поиск работы
- Бизнес
- Банковское дело
- Малый бизнес
- Ценные бумаги и инвестиции
- Краткое содержание
- Бухучет и аудит
- Ораторское искусство / риторика
- Корпоративная культура, бизнес
- Финансы
- Государственное и муниципальное управление
- Менеджмент
- Зарубежная деловая литература
- Продажи
- Переговоры
- Личная эффективность
- Торговля
- Научные и научно-популярные книги
- Биофизика
- География
- Экология
- Биохимия
- Рефераты
- Культурология
- Техническая литература
- История
- Психология
- Медицина
- Прочая научная литература
- Юриспруденция
- Биология
- Политика
- Литературоведение
- Религиоведение
- Научпоп
- Психология, личное
- Математика
- Психотерапия
- Социология
- Воспитание детей, педагогика
- Языкознание
- Беременность, ожидание детей
- Транспорт, военная техника
- Детская психология
- Науки: разное
- Педагогика
- Зарубежная психология
- Иностранные языки
- Филология
- Радиотехника
- Деловая литература
- Физика
- Альтернативная медицина
- Химия
- Государство и право
- Обществознание
- Образовательная литература
- Учебники
- Зоология
- Архитектура
- Науки о космосе
- Ботаника
- Астрология
- Ветеринария
- История Европы
- География
- Зарубежная публицистика
- О животных
- Шпаргалки
- Разная литература
- Зарубежная литература о культуре и искусстве
- Пословицы, поговорки
- Боевые искусства
- Прочее
- Периодические издания
- Фанфик
- Военное
- Цитаты из афоризмов
- Гиды, путеводители
- Литература 19 века
- Зарубежная образовательная литература
- Военная история
- Кино
- Современная литература
- Военная техника, оружие
- Культура и искусство
- Музыка, музыканты
- Газеты и журналы
- Современная зарубежная литература
- Визуальные искусства
- Отраслевые издания
- Шахматы
- Недвижимость
- Великолепные истории
- Музыка, танцы
- Авто и ПДД
- Изобразительное искусство, фотография
- Истории из жизни
- Готические новеллы
- Начинающие авторы
- Спецслужбы
- Подростковая литература
- Зарубежная прикладная литература
- Религия и духовность
- Старинная литература
- Справочная литература
- Компьютеры и Интернет
- Блог
Занимательная электроника - Юрий Ревич
Шрифт:
Интервал:
Закладка:
Это мое убеждение, однако, не исключает того факта, что в качестве элементарного введения в предмет Arduino подойдет очень неплохо. О недостатках этой платформы мы еще поговорим в самом конце, а в оставшихся главах книги покажем, как с минимальной затратой сил можно с помощью Arduino делать настоящие электронные приборы, которые будут работать лучше покупных, иметь больше функций и обойдутся при этом, как минимум, не дороже тех, что имеются на прилавках. При этом ограниченный объем книги не позволяет мне остановиться на многих интересных темах: например, совсем несложно пристегнуть к Arduino модуль GPS и построить свой собственный навигатор, превратить Arduino в универсальный пульт управления бытовой техникой и даже создать на его основе автономный веб-сервер. По необходимости мы также оставим в стороне работу в Arduino со звуком и одно из главных направлений применения этой платформы в области конструирования роботов. Хочу еще обратить ваше внимание на открытый проект Accessory Development Kit компании Google — он позволяет устройствам на Android обеспечивать двусторонний обмен данными с Arduino через USB или Bluetooth. Здесь же мы сосредоточимся на измерительной технике, вопросах взаимодействия с компьютером и выводе информации на дисплей, что даст хорошее и обстоятельное введение в платформу и позволит конструировать практически полезные вещи.
Большинство упоминаемых в этих главах комплектующих можно приобрести в интернет-магазине «Амперка» (http://amperka.ru), сотрудники которого оказали автору неоценимую помощь в написании этого раздела книги. Администрация магазина просила сообщить, что читатели этой книги могут в «Амперке» получить скидку 5 % при использовании кодового слова ZELECTRONIKA (его надо назвать по телефону или указать в тексте письма при обращении в магазин). Советую также заглянуть в их вики-раздел [24], где собрано большое количество сведений о применении различных компонентов Arduino.
Что такое Arduino?Платформа Arduino возникла в среде сотрудников Interaction Design Institute (что можно перевести, как «Институт конструирования взаимодействий»), находящегося в итальянском городке Ивреа, и получила свое почти толкиеновское название от имени реально существовавшего короля Ардуина, правившего этой местностью в начале прошлого тысячелетия. Arduino выросла из задачи научить студентов непрофильных специальностей создавать электронные устройства, причем быстро и, желательно, без опоры на углубленное изучение электроники, электротехники и программирования.
В конце концов группа, руководимая программистом Массимо Банци, создала универсальную аппаратную платформу на основе дешевых и доступных микроконтроллеров Atmel AVR, и решила ее распространять на принципах open source. Такие свободные лицензии, как знаменитая GPL, разработанная применительно к софту, для «железа» напрямую не годится, потому создатели взяли за основу пакет лицензий Creative Commons для творческих продуктов. Лицензия Arduino запрещает использование этой торговой марки для каких-то сторонних продуктов, кроме расширений основного проекта. Это привело к тому, что от Arduino стали отпочковываться аналогичные проекты, совместимые с ним, но желающие иметь иные названия — например, такие, как Freeduino, Craftduino, Carduino и многие другие.
Сама компания, носящая название Smart Projects, основанная в 2004 году, выпускает лишь платы контроллеров Arduino. В мире насчитывается более двухсот дистрибьюторов продукции Arduino, включая довольно крупные торговые фирмы. Контроллеров Arduino создано уже около 15 версий, причем некоторые из последних — на 32-разрядных AVR или даже на ARM-процессорах. Плата контроллера стоит приблизительно 30 долларов, или может быть изготовлена самостоятельно — документация доступна всем желающим (см. [23]). Бесплатно распространяется и среда программирования, основанная на адаптированной под непрофессионалов версии C/C++ под названием Processing. При желании платы Arduino можно программировать и напрямую на низком уровне или из других сред программирования, т. е. так, как описано в предыдущих главах этой книги, — на каждой из плат Arduino предусмотрен для этой цели ISP-разъем.
В основе платформы лежат несколько типовых плат-модулей, в современной версии большей частью построенных на контроллере ATmega328. Этот контроллер имеет 32 килобайта памяти программ, чего достаточно для загрузки даже столь объемных загрузочных файлов, какие получаются при компилировании в среде Arduino IDE. Подробно описывать базовые модули Arduino здесь нет особого смысла — с ними можно познакомиться на официальном сайте [23]. Они в целом соответствуют структуре типового AVR, описанной в главе 18, но дополнительно содержат стабилизаторы питания, несколько светодиодов и других компонентов, и, главное — встроенный загрузчик с преобразователем USB/UART, позволяющим и программировать контроллер через последовательный порт, и организовать «общение» программы с компьютером.
Для этой цели в контроллер на платах Arduino заранее записывается программа-загрузчик. Если вы будете программировать Arduino напрямую, через обычный ISP-программатор, то загрузчик, естественно, окажется испорченным. Однако его всегда можно восстановить с помощью среды Arduino IDE, потому любые эксперименты не приведут к фатальным последствиям. С другой стороны, на некоторых платах Arduino контроллер установлен на панельку, что позволяет применять плату совместно со средой программирования, как удобный программатор для МК AVR, которые потом можно устанавливать в другие схемы. Мы в основном воспользуемся одним из самых популярных модулей под названием Arduino Uno, а в главе 22 познакомимся с малогабаритным Arduino Mini.
Для начала работы необходимо установить и настроить среду Arduino IDE, чем мы сейчас и займемся.
Установка среды программирования ArduinoСреда программирования Arduino или Arduino IDE (Integrated Development Environment, интегрированная среда разработки) отличается от других подобных продуктов простотой и компактностью. Установки фактически не требуется — просто скачайте ZIP-архив с официального сайта и распакуйте его на компьютере в любую папку, учитывая при этом, что размещать среду предпочтительно не в привычной Program Files (или в Program Files (x86) для 64-разрядных Windows), а в отдельном каталоге вне системных папок — иначе придется возиться с правами доступа (см. далее).
Если качать архив не с официальной англоязычной страницы, на которую обычно ссылаются в руководствах (http://www.arduino.cc/en/Main/Software), а с русской версии сайта [23], то вы получите среду сразу на русском языке (правда, возможно, не самой последней версии). Затем для удобства можно вынести на рабочий стол ярлык файла arduino.exe, и на этом основная часть установки завершена.
Однако в Windows придется выполнить еще один шаг — установить драйвер arduino, чтобы Arduino IDE «видела» устройство. Проще всего это сделать, уже имея плату Arduino в наличии. Ранее для каждой разновидности плат имелся свой драйвер (и существующее на момент создания этой главы описание на русскоязычной странице http://arduino.ru/Guide/Windows рассчитано на такой случай), но в последних версиях он заменен на универсальный arduino.inf. Этот драйвер находится в каталоге Drivers внутри скачанной вами папки с программным обеспечением (будьте внимательны: именно в папке Drivers, а не в подпапке FTDI USB Drivers).
Для установки драйвера подсоедините любую имеющуюся плату Arduino к порту USB компьютера, для чего потребуется обычный АВ-кабель USB (подключать плату дополнительно к источнику питания не надо). На плате должен при этом загореться зеленый светодиод ON. Если у вас Windows настроена на автоматическую установку драйверов, то сразу начнется поиск драйверов, который, естественно, закончится впустую (его можно сразу прервать, чтобы не терять времени). В Диспетчере устройств (Панель управления | Диспетчер устройств) в разделе Порты (СОМ и LPT) появится название платы — например, Arduino UNO (COMxx:).
Может так случиться, что этого названия не появится, а вместо него в общем списке возникнет Неизвестное устройство (Windows, особенно в последних версиях, — типичная вещь в себе, и часто ведет себя совершенно не так, как вы от нее ожидаете). В обоих случаях драйвер для этого устройства можно установить двумя путями: или прямо из Диспетчера устройств через пункт контекстного меню Обновить драйвер, или через апплет Панель управления | Устройства и принтеры, где должно возникнуть это самое Неизвестное устройство. Установка тогда делается через контекстное меню: Свойства | Оборудование | Свойства | Драйвер | Обновить. После этого выберите ручной поиск драйверов и укажите упомянутую ранее папку Drivers. В Диспетчере устройств и в окне Устройства и принтеры после этого возникнет соответствующее устройство с указанием номера привязанного к нему виртуального СОМ-порта — например, Arduino Uno (COM3).

