Автор: Петин В. А.
Издательство: СПб.: БХВ-Петербург
Серия: Электроника
Год издания: 2019
Страниц: 496
ISBN: 978-5-9775-4004-9
Формат: DjVu
Качество: отличное
Для сайта: litgu.ru
Размер: 111 Мб
Язык: русский
Рассмотрены основные платы Arduino и платы расширения (шилды), добавляющие функциональность основной плате. Подробно описан язык и среда программирования Arduino IDE. Приведены практические проекты с использованием контроллеров семейства Arduino в области робототехники, погодных метеостанций, «умного дома», вендинга, телевидения, беспроводной связи (bluetooth, радиоуправление, связь с устройствами Android) и др. Все проекты сопровождаются схемами и листингами.
Третье издание существенно переработано. Описаны новые датчики, исполнительные и беспроводные устройства, дисплеи. Рассмотрены платы Arduino YUN и Arduino Esplora, камера Pixy, проекты в области Интернета вещей и компьютерного зрения. Описано программирование плат ESP8266 и Z-UNO в среде Arduino IDE.
Для читателей, интересующихся современной электроникой.
Оглавление
Предисловие
Для кого и о чем эта книга?
Структура книги
Благодарности
ЧАСТЬ I. ARDUINO — ОБЩИЙ ОБЗОР
Глава 1. Введение в Arduino
1.1. Arduino — что это?
1.2. В чем преимущество Arduino?
1.3. История создания Arduino
Глава 2. Платы семейства Arduino и платы расширения для них
2.1. Обзор плат семейства Arduino
2.1.1. Arduino Uno
2.1.2. Arduino Nano
2.1.3. Arduino Pro Mini
2.1.4. Arduino LilyPad
2.1.5. Arduino Mega2560
2.1.6. Arduino Leonardo
2.1.7. Arduino Due
2.1.8. Arduino Yun
2.2. Платы расширения для Arduino
ЧАСТЬ II. СРЕДЫ РАЗРАБОТКИ И ПРОГРАММИРОВАНИЕ ПЛАТ ARDUINO
Глава 3. Среда разработки Arduino IDE
3.1. Установка Arduino IDE в Windows
3.2. Установка Arduino IDE в Linux
3.3. Настройка среды Arduino IDE
Глава 4. Облачная среда разработки Arduino Create
4.1. Начало работы в среде Arduino Create
Глава 5. Программирование плат Arduino
5.1. Базовые знания
5.1.1. Цифровые выводы
5.1.2. Аналоговые входы
5.1.3. Широтно-импульсная модуляция
5.1.4. Память в Arduino
5.2. Структура программы
5.2.1. Функции setup() и loop()
5.3. Синтаксис и операторы
5.3.1. Управляющие операторы
5.3.1.1. Оператор if(условие) и операторы сравнения ==, !=, < , >
5.3.1.2. Оператор if...else
5.3.1.3. Оператор for
5.3.1.4. Оператор switch
5.3.1.5. Оператор while
5.3.1.6. Оператор do...while
5.3.1.7. Оператор break
5.3.1.8. Оператор continue
5.3.1.9. Оператор return
5.3.2. Синтаксис
5.3.2.1.; (semicolon, точка с запятой)
5.3.2.2. {} (curly braces, фигурные скобки)
5.3.2.3. Комментарии: //(single line comment, однострочный), /* */ (multi-line comment, многострочный)
5.3.3. Арифметические операторы
5.3.3.1. = (assignment, оператор присваивания)
5.3.3.2. + (сложение), - (вычитание), * (умножение), /(деление)
5.3.3.3. % (modulo)
5.3.4. Операторы сравнения
5.3.5. Логические операторы
5.3.5.1. && (логическое И)
5.3.5.2. || (логическое ИЛИ)
5.3.5.3. ! (логическое отрицание)
5.3.6. Унарные операторы
5.3.6.1. ++ (увеличение значения), /--(уменьшение значения)
5.3.6.2. +=,-=, *= ,/=
5.4. Данные
5.4.1. Типы данных
5.4.1.1. boolean
5.4.1.2. char
5.4.1.3.byte
5.4.1.4. int
5.4.1.5. unsigned int
5.4.1.6. long
5.4.1.7. unsigned long
5.4.1.8. float
5.4.1.9. double
5.4.1.10 string — текстовые строки
5.4.1.11. Массивы
5.4.1.12. void
5.4.2. Константы
5.4.3. Переменные
5.4.3.1. Объявление переменных
5.4.3.2. Границы переменных
5.4.4. Преобразование типов данных
5.4.4.1. char()
5.4.4.2. byte()
5.4.4.3.int()
5.4.4.4. long()
5.4.4.5. float()
5.5. Функции
5.5.1. Цифровой ввод/вывод
5.5.1.1. ФункцияpinMode
5.5.1.2. Функция digitalWrite()
5.5.1.3. Функция digitalRead()
5.5.2. Аналоговый ввод/вывод
5.5.2.1. Функция analogRead()
5.5.2.2. Функция analogReference()
5.5.2.3. Функция analogWrite()
5.5.3. Дополнительные фунции ввода/вывода
5.5.3.1. Функция tone()
5.5.3.2. Функция noTone()
5.5.3.3. Функция shiftOut()
5.5.3.4. Функция pulseln()
5.5.4. Работа со временем
5.5.4.1. Функция millis()
5.5.4.2. Функция micros()
5.5.4.3. Функция delay()
5.5.4.4. Функция delayMicroseconds()
5.5.5. Математические функции
5.5.5.1. Функция min(x,y)
5.5.5.2. Функция max(x,у)
5.5.5.3. Функция abs()
5.5.5.4. Функция constrain(x, a, b)
5.5.5.5. Функция map(value, fromLow, fromHigh, toLow, toHigh)
5.5.5.6. Функцияpow(base, exponent)
5.5.5.7. Функция sq(x)
5.5.5.8. Функция sqrt(x)
5.5.6. Тригонометрические функции
5.5.6.1. Функция sin(rad)
5.5.6.2. Функция cos(rad)
5.5.6.3. Функция tan(rad)
5.5.7. Генераторы случайных значений
5.5.7.1. Функция randomSeed(seed)
5.5.7.2. Функция random()
5.5.8. Операции с битами и байтами
5.5.8.1. Функция lowByte()
5.5.8.2. Функция highByte()
5.5.8.3. Функция bitRead()
5.5.8.4. Функция bitWrite()
5.5.8.5. Функция bitSet()
5.5.8.6. Функция bitClear()
5.5.8.7. Функция bit()
5.5.9. Внешние прерывания
5.5.9.1. Функция attachlnterrupt
5.5.9.2. Функция detachlnterrupt
5.6. Управление портами через регистры ATmega
ЧАСТЬ III. СОПРЯЖЕНИЕ ARDUINO СО ВСПОМОГАТЕЛЬНЫМИ УСТРОЙСТВАМИ
Глава 6. Arduino: вводы и выводы
6.1. Цифровые выводы — «бегущий огонь» на светодиодах
6.1.1. Подключение светодиода к выводу Arduino
6.1.2. Подключение к плате Arduino 8-ми светодиодов
6.2. Цифровые входы — управляем светодиодами с помощью кнопок
6.2.1. Подключение кнопки к плате Arduino
6.2.2. Управление кнопками количеством горящих светодиодов
6.3. Аналоговые входы — светодиодный индикатор аналоговых значений
6.3.1. Подключение потенциометра к плате Arduino
6.3.2. Вывод показаний потенциометра на светодиодную шкалу
6.4. ШИМ — радуга на RGB-светодиоде
6.4.1. Подключение к плате Arduino RGB-светодиода
6.5. Светодиодные индикаторы
6.5.1. Подключение к плате Arduino семисегментного индикатора
6.6. Расширение цифровых выходов — микросхема 74НС595
6.6.1. Подключение к плате Arduino сдвигового регистра 74НС595
6.7. Расширение цифровых входов и выходов — микросхема МСР23017
6.8. Расширение аналоговых входов — мультиплексор CD4051
Глава 7. Использование библиотек в проектах Arduino
7.1. Установка библиотек
7.1.1. Установка библиотеки через Менеджер библиотек
7.1.2. Установка библиотеки из ZIP-архива
7.1.3. Установка библиотеки вручную
7.2. Подключение библиотеки
7.3. Создание собственной библиотеки
7.3.1. Создание заголовочного файла D5651.h
7.3.2. Создание файла реализации D5651.cpp
7.3.3. Создание файла keywords.txt
Глава 8. Arduino и последовательный порт UART
8.1. Библиотека Serial
8.1.1. Функция Serial.begin
8.1.2. Функция Serial.print
8.1.3. Функция Serial.println
8.1.4. Функция Serial.write
8.1.5. Функция Serial.available
8.1.6. Функция Serial.read
8.2. Использование UART для отладки программ
8.2.1. Подключение к плате Arduino нескольких кнопок
8.3. Использование UART для установки параметров
8.4. Библиотека SoftwareSerial
8.5. Соединение по UART двух плат Arduino
Глава 9. Подключение датчиков к плате Arduino
9.1. Подключение аналоговых датчиков
9.1.1. Подключение к плате Arduino аналогового датчика температуры LM335
9.2. Подключение датчиков по протоколу 1-Wire
9.2.1. Подключение к плате Arduino цифрового датчика температуры DS18B20
9.3. Подключение датчиков влажности и температуры DHT
9.4. Подключение датчиков по протоколу I2С
9.4.1. Подключение к плате Arduino датчика интенсивности света ВН1750
Глава 10. Использование дисплеев в проектах Arduino
10.1. Символьные дисплеи на микроконтроллере HD44780
10.1.1. Функция begin()
10.1.2. Функция clear()
10.1.3. Функция home()
10.1.4. Функция setCursor()
10.1.5. Функция write()
10.1.6. Функция print()
10.1.7. Функция cursor()
10.1.8. Функция noCursor()
10.1.9. Функция blink()
10.1.10. Функция noBlink()
10.1.11. Функция display()
10.1.12. Функция noDisplay()
10.1.13. Функция scrollDisplayLeft()
10.1.14. Функция scrollDisplayRight()
10.1.15. Функция autoscroll()
10.1.16. Функция noAutoscroll()
10.1.17. Функция leftToRight()
10.1.18. Функция rightToLeft()
10.1.19. Функция createChar()
10.2. Подключение дисплеев на контроллере HD44780 по протоколу I2С
10.2.1. Вывод на ЖК-дисплей данных с датчика, работающего по протоколу I2С
10.3. Графический дисплей Nokia
10.4. OLED-дисплеи
10.4.1. Электронные часы на OLED-дисплее
10.5. Дисплеи Nextion
10.5.1. Создание нового проекта для дисплея Nextion
10.5.2. Прошивка дисплея через UART
10.5.3. Прошивка дисплея с помощью карты microSD
10.5.4. Подключение дисплея Nextion к плате Arduino
Глава 11. Подключение к Arduino исполнительных устройств
11.1. Подключение к плате Arduino электромагнитного или твердотельного реле
11.2. Подключение к плате Arduino электродвигателя постоянного тока
11.2.1. Управление двигателем с помощью транзистора
11.3. Управление двигателями с помощью драйвера
11.4. Подключение к плате Arduino сервопривода
11.4.1. Использование сервопривода в проекте звуковой сигнализации
11.5. Подключение к плате Arduino шагового двигателя
11.5.1. Управление дроблением шага и направлением вращения шагового двигателя с платы Arduino
11.6. Подключение к плате Arduino бесколлекторного двигателя
Глава 12. Arduino и беспроводная связь
12.1. ИК-управление
12.1.1. Управление сервоприводом с помощью ИК-связи
12.2. Радиомодули для частоты 433 МГц
12.2.1. Управление светодиодом платы Arduino с другой такой же платы по радиоканалу 433 МГц
12.3. Радиомодули NRF24L01
12.3.1. Организация связи между двумя платами Arduino с использованием модулей NRF24L01
12.4. Использование Arduino с аппаратурой радиоуправления
12.4.1. Принципы формирования радиосигнала
12.4.2. Организация связи приемника с передатчиком
12.4.3. Разработка скетча для приема платой Arduino команд передатчика
12.5. Arduino и Bluetooth
Глава 13. Arduino и Интернет вещей
13.1. Подключение к Интернету с помощью платы расширения Ethernet shield
13.1.1. Получение IP-адреса по DHCP
13.1.2. Отправка данных на сайт «Народный мониторинг» через Ethernet shield
13.2. Подключение к Интернету с помощью платы расширения GSM/GPRS shield
13.2.1. Отправка и получение SMS-сообщений с помощью GSM/GPRS shield
13.2.2. Отправка данных на сайт «Народный мониторинг» через GSM/GPRS shield
Глава 14. Специальные возможности отдельных плат Arduino
14.1. Использование Arduino Leonardo в качестве USB-устройства
14.1.1. Arduino Leonardo: имитация клавиатуры
14.1.2. Блокируем клавиатуру с наступлением темноты
14.1.3. Arduino Leonardo: имитация компьютерной мыши
14.2. Плата Arduino Esplora
14.2.1. Arduino Esplora: установка цветов RGB-светодиода
14.2.2. Arduino Esplora: создание игры
14.3. Плата Arduino LilyPad
14.4. Плата Arduino Yun
14.4.1. Arduino Yun shield: управляем веб-камерой
Глава 15. Взаимодействие Arduino с другими программируемыми системами
15.1. Использование Arduino в проектах LEGO
15.1.1. Получение микрокомпьютером LEGO данных с датчика влажности и температуры DHT11, подключенного к плате Arduino
15.2. Arduino в проектах ROS
15.2.1. Установка ROS
15.2.2. Узлы и темы в ROS
15.2.3. Пакет rosserial
15.2.4. Подготовка сообщения (publisher) на Arduino
15.2.5. Создание подписки (subscriber) на Arduino
15.2.6. Связь через ROS двух плат Arduino
Глава 16. Программирование в среде Arduino IDE других плат
16.1. ESP8266 — микроконтроллер с интерфейсом Wi-Fi
16.1.1. Установка Arduino IDE для работы с ESP8266
16.1.2. Печать курса валют на термопринтере в проекте Интернета вещей
16.2. Z-Uno — плата для прототипирования устройств Z-Wave
16.2.1. Установка Arduino IDE для Z-Uno
16.2.2. Подключение к плате Z-Uno датчика влажности DHT11
ЧАСТЬ IV. ПРАКТИКА РАЗРАБОТКИ ПРОЕКТОВ ДЛЯ ARDUINO
Глава 17. Умная теплица «Домашний цветок»
17.1. Мониторинг климатических параметров умной теплицы
17.2. Индикация показаний умной теплицы
17.3. Организация полива, обдува и освещения в умной теплице
17.4. Переносим функции мониторинга и управления теплицей на смартфон с ОС Android
17.5. Создаем собственное мобильное приложение для управления умной теплицей
17.6. Превращаем нашу умную теплицу в объект Интернета вещей
Глава 18. Светодиодное табло футбольных матчей
18.1. RGB-светодиодная лента WS2812
18.2. Arduino-библиотека Adafruit_NeoPixel
18.3. Создание табло результатов ЧМ-2018 по футболу на RGB-ленте WS2812
Глава 19. Голосовое управление исполнительными устройствами
19.1. Управление электроприборами с помощью радиорозеток UNIEL
19.2. Радиомодули FS1000A/MX-RM-5V
19.3. Модуль распознавания голоса Voice Recognition Module V2
19.4. Система голосового управления
Глава 20. Проекты для вендинга: всюду деньги, деньги, деньги
20.1. Купюроприемник ICT серий А7 и V7
20.1.1. Подключение купюроприемника ICT V7 к плате Arduino
20.1.2. Скетч для получения номинала принимаемой купюры
20.2. Монетоприемник СН-926
20.2.1. Настройка монетоприемника
20.2.2. Калибровка монетоприемника
20.3. Разменный автомат (хоппер) Cube Hopper MK II
20.3.1. Подключение хоппера к плате Arduino
20.3.2. Программирование хоппера
Глава 21. Makey: импровизированные клавиатуры
21.1. Makey: управление новогодней RGB-гирляндой
21.2. Программирование новогодней RGB-гирлянды
Глава 22. Arduino и интерфейс USB: управление роботами
22.1. Интерфейс USB
22.2. Плата расширения USB Host Shield
22.3. HID-устройства USB
22.4. Подключение HID-мыши USB
22.5. Управление роботом с помощью руля Defender
22.6. Управление роботом с помощью геймпада Defender
Глава 23. Камера Pixy: организация компьютерного зрения
23.1. Настройка камеры
23.2. Подключение камеры Pixy к плате Arduino
23.3. Организация слежения камерой за объектом
ПРИЛОЖЕНИЯ
Приложение 1. Перечень использованных источников
Приложение 2. Описание электронного архива
Предметный указатель
Для кого и о чем эта книга?
Структура книги
Благодарности
ЧАСТЬ I. ARDUINO — ОБЩИЙ ОБЗОР
Глава 1. Введение в Arduino
1.1. Arduino — что это?
1.2. В чем преимущество Arduino?
1.3. История создания Arduino
Глава 2. Платы семейства Arduino и платы расширения для них
2.1. Обзор плат семейства Arduino
2.1.1. Arduino Uno
2.1.2. Arduino Nano
2.1.3. Arduino Pro Mini
2.1.4. Arduino LilyPad
2.1.5. Arduino Mega2560
2.1.6. Arduino Leonardo
2.1.7. Arduino Due
2.1.8. Arduino Yun
2.2. Платы расширения для Arduino
ЧАСТЬ II. СРЕДЫ РАЗРАБОТКИ И ПРОГРАММИРОВАНИЕ ПЛАТ ARDUINO
Глава 3. Среда разработки Arduino IDE
3.1. Установка Arduino IDE в Windows
3.2. Установка Arduino IDE в Linux
3.3. Настройка среды Arduino IDE
Глава 4. Облачная среда разработки Arduino Create
4.1. Начало работы в среде Arduino Create
Глава 5. Программирование плат Arduino
5.1. Базовые знания
5.1.1. Цифровые выводы
5.1.2. Аналоговые входы
5.1.3. Широтно-импульсная модуляция
5.1.4. Память в Arduino
5.2. Структура программы
5.2.1. Функции setup() и loop()
5.3. Синтаксис и операторы
5.3.1. Управляющие операторы
5.3.1.1. Оператор if(условие) и операторы сравнения ==, !=, < , >
5.3.1.2. Оператор if...else
5.3.1.3. Оператор for
5.3.1.4. Оператор switch
5.3.1.5. Оператор while
5.3.1.6. Оператор do...while
5.3.1.7. Оператор break
5.3.1.8. Оператор continue
5.3.1.9. Оператор return
5.3.2. Синтаксис
5.3.2.1.; (semicolon, точка с запятой)
5.3.2.2. {} (curly braces, фигурные скобки)
5.3.2.3. Комментарии: //(single line comment, однострочный), /* */ (multi-line comment, многострочный)
5.3.3. Арифметические операторы
5.3.3.1. = (assignment, оператор присваивания)
5.3.3.2. + (сложение), - (вычитание), * (умножение), /(деление)
5.3.3.3. % (modulo)
5.3.4. Операторы сравнения
5.3.5. Логические операторы
5.3.5.1. && (логическое И)
5.3.5.2. || (логическое ИЛИ)
5.3.5.3. ! (логическое отрицание)
5.3.6. Унарные операторы
5.3.6.1. ++ (увеличение значения), /--(уменьшение значения)
5.3.6.2. +=,-=, *= ,/=
5.4. Данные
5.4.1. Типы данных
5.4.1.1. boolean
5.4.1.2. char
5.4.1.3.byte
5.4.1.4. int
5.4.1.5. unsigned int
5.4.1.6. long
5.4.1.7. unsigned long
5.4.1.8. float
5.4.1.9. double
5.4.1.10 string — текстовые строки
5.4.1.11. Массивы
5.4.1.12. void
5.4.2. Константы
5.4.3. Переменные
5.4.3.1. Объявление переменных
5.4.3.2. Границы переменных
5.4.4. Преобразование типов данных
5.4.4.1. char()
5.4.4.2. byte()
5.4.4.3.int()
5.4.4.4. long()
5.4.4.5. float()
5.5. Функции
5.5.1. Цифровой ввод/вывод
5.5.1.1. ФункцияpinMode
5.5.1.2. Функция digitalWrite()
5.5.1.3. Функция digitalRead()
5.5.2. Аналоговый ввод/вывод
5.5.2.1. Функция analogRead()
5.5.2.2. Функция analogReference()
5.5.2.3. Функция analogWrite()
5.5.3. Дополнительные фунции ввода/вывода
5.5.3.1. Функция tone()
5.5.3.2. Функция noTone()
5.5.3.3. Функция shiftOut()
5.5.3.4. Функция pulseln()
5.5.4. Работа со временем
5.5.4.1. Функция millis()
5.5.4.2. Функция micros()
5.5.4.3. Функция delay()
5.5.4.4. Функция delayMicroseconds()
5.5.5. Математические функции
5.5.5.1. Функция min(x,y)
5.5.5.2. Функция max(x,у)
5.5.5.3. Функция abs()
5.5.5.4. Функция constrain(x, a, b)
5.5.5.5. Функция map(value, fromLow, fromHigh, toLow, toHigh)
5.5.5.6. Функцияpow(base, exponent)
5.5.5.7. Функция sq(x)
5.5.5.8. Функция sqrt(x)
5.5.6. Тригонометрические функции
5.5.6.1. Функция sin(rad)
5.5.6.2. Функция cos(rad)
5.5.6.3. Функция tan(rad)
5.5.7. Генераторы случайных значений
5.5.7.1. Функция randomSeed(seed)
5.5.7.2. Функция random()
5.5.8. Операции с битами и байтами
5.5.8.1. Функция lowByte()
5.5.8.2. Функция highByte()
5.5.8.3. Функция bitRead()
5.5.8.4. Функция bitWrite()
5.5.8.5. Функция bitSet()
5.5.8.6. Функция bitClear()
5.5.8.7. Функция bit()
5.5.9. Внешние прерывания
5.5.9.1. Функция attachlnterrupt
5.5.9.2. Функция detachlnterrupt
5.6. Управление портами через регистры ATmega
ЧАСТЬ III. СОПРЯЖЕНИЕ ARDUINO СО ВСПОМОГАТЕЛЬНЫМИ УСТРОЙСТВАМИ
Глава 6. Arduino: вводы и выводы
6.1. Цифровые выводы — «бегущий огонь» на светодиодах
6.1.1. Подключение светодиода к выводу Arduino
6.1.2. Подключение к плате Arduino 8-ми светодиодов
6.2. Цифровые входы — управляем светодиодами с помощью кнопок
6.2.1. Подключение кнопки к плате Arduino
6.2.2. Управление кнопками количеством горящих светодиодов
6.3. Аналоговые входы — светодиодный индикатор аналоговых значений
6.3.1. Подключение потенциометра к плате Arduino
6.3.2. Вывод показаний потенциометра на светодиодную шкалу
6.4. ШИМ — радуга на RGB-светодиоде
6.4.1. Подключение к плате Arduino RGB-светодиода
6.5. Светодиодные индикаторы
6.5.1. Подключение к плате Arduino семисегментного индикатора
6.6. Расширение цифровых выходов — микросхема 74НС595
6.6.1. Подключение к плате Arduino сдвигового регистра 74НС595
6.7. Расширение цифровых входов и выходов — микросхема МСР23017
6.8. Расширение аналоговых входов — мультиплексор CD4051
Глава 7. Использование библиотек в проектах Arduino
7.1. Установка библиотек
7.1.1. Установка библиотеки через Менеджер библиотек
7.1.2. Установка библиотеки из ZIP-архива
7.1.3. Установка библиотеки вручную
7.2. Подключение библиотеки
7.3. Создание собственной библиотеки
7.3.1. Создание заголовочного файла D5651.h
7.3.2. Создание файла реализации D5651.cpp
7.3.3. Создание файла keywords.txt
Глава 8. Arduino и последовательный порт UART
8.1. Библиотека Serial
8.1.1. Функция Serial.begin
8.1.2. Функция Serial.print
8.1.3. Функция Serial.println
8.1.4. Функция Serial.write
8.1.5. Функция Serial.available
8.1.6. Функция Serial.read
8.2. Использование UART для отладки программ
8.2.1. Подключение к плате Arduino нескольких кнопок
8.3. Использование UART для установки параметров
8.4. Библиотека SoftwareSerial
8.5. Соединение по UART двух плат Arduino
Глава 9. Подключение датчиков к плате Arduino
9.1. Подключение аналоговых датчиков
9.1.1. Подключение к плате Arduino аналогового датчика температуры LM335
9.2. Подключение датчиков по протоколу 1-Wire
9.2.1. Подключение к плате Arduino цифрового датчика температуры DS18B20
9.3. Подключение датчиков влажности и температуры DHT
9.4. Подключение датчиков по протоколу I2С
9.4.1. Подключение к плате Arduino датчика интенсивности света ВН1750
Глава 10. Использование дисплеев в проектах Arduino
10.1. Символьные дисплеи на микроконтроллере HD44780
10.1.1. Функция begin()
10.1.2. Функция clear()
10.1.3. Функция home()
10.1.4. Функция setCursor()
10.1.5. Функция write()
10.1.6. Функция print()
10.1.7. Функция cursor()
10.1.8. Функция noCursor()
10.1.9. Функция blink()
10.1.10. Функция noBlink()
10.1.11. Функция display()
10.1.12. Функция noDisplay()
10.1.13. Функция scrollDisplayLeft()
10.1.14. Функция scrollDisplayRight()
10.1.15. Функция autoscroll()
10.1.16. Функция noAutoscroll()
10.1.17. Функция leftToRight()
10.1.18. Функция rightToLeft()
10.1.19. Функция createChar()
10.2. Подключение дисплеев на контроллере HD44780 по протоколу I2С
10.2.1. Вывод на ЖК-дисплей данных с датчика, работающего по протоколу I2С
10.3. Графический дисплей Nokia
10.4. OLED-дисплеи
10.4.1. Электронные часы на OLED-дисплее
10.5. Дисплеи Nextion
10.5.1. Создание нового проекта для дисплея Nextion
10.5.2. Прошивка дисплея через UART
10.5.3. Прошивка дисплея с помощью карты microSD
10.5.4. Подключение дисплея Nextion к плате Arduino
Глава 11. Подключение к Arduino исполнительных устройств
11.1. Подключение к плате Arduino электромагнитного или твердотельного реле
11.2. Подключение к плате Arduino электродвигателя постоянного тока
11.2.1. Управление двигателем с помощью транзистора
11.3. Управление двигателями с помощью драйвера
11.4. Подключение к плате Arduino сервопривода
11.4.1. Использование сервопривода в проекте звуковой сигнализации
11.5. Подключение к плате Arduino шагового двигателя
11.5.1. Управление дроблением шага и направлением вращения шагового двигателя с платы Arduino
11.6. Подключение к плате Arduino бесколлекторного двигателя
Глава 12. Arduino и беспроводная связь
12.1. ИК-управление
12.1.1. Управление сервоприводом с помощью ИК-связи
12.2. Радиомодули для частоты 433 МГц
12.2.1. Управление светодиодом платы Arduino с другой такой же платы по радиоканалу 433 МГц
12.3. Радиомодули NRF24L01
12.3.1. Организация связи между двумя платами Arduino с использованием модулей NRF24L01
12.4. Использование Arduino с аппаратурой радиоуправления
12.4.1. Принципы формирования радиосигнала
12.4.2. Организация связи приемника с передатчиком
12.4.3. Разработка скетча для приема платой Arduino команд передатчика
12.5. Arduino и Bluetooth
Глава 13. Arduino и Интернет вещей
13.1. Подключение к Интернету с помощью платы расширения Ethernet shield
13.1.1. Получение IP-адреса по DHCP
13.1.2. Отправка данных на сайт «Народный мониторинг» через Ethernet shield
13.2. Подключение к Интернету с помощью платы расширения GSM/GPRS shield
13.2.1. Отправка и получение SMS-сообщений с помощью GSM/GPRS shield
13.2.2. Отправка данных на сайт «Народный мониторинг» через GSM/GPRS shield
Глава 14. Специальные возможности отдельных плат Arduino
14.1. Использование Arduino Leonardo в качестве USB-устройства
14.1.1. Arduino Leonardo: имитация клавиатуры
14.1.2. Блокируем клавиатуру с наступлением темноты
14.1.3. Arduino Leonardo: имитация компьютерной мыши
14.2. Плата Arduino Esplora
14.2.1. Arduino Esplora: установка цветов RGB-светодиода
14.2.2. Arduino Esplora: создание игры
14.3. Плата Arduino LilyPad
14.4. Плата Arduino Yun
14.4.1. Arduino Yun shield: управляем веб-камерой
Глава 15. Взаимодействие Arduino с другими программируемыми системами
15.1. Использование Arduino в проектах LEGO
15.1.1. Получение микрокомпьютером LEGO данных с датчика влажности и температуры DHT11, подключенного к плате Arduino
15.2. Arduino в проектах ROS
15.2.1. Установка ROS
15.2.2. Узлы и темы в ROS
15.2.3. Пакет rosserial
15.2.4. Подготовка сообщения (publisher) на Arduino
15.2.5. Создание подписки (subscriber) на Arduino
15.2.6. Связь через ROS двух плат Arduino
Глава 16. Программирование в среде Arduino IDE других плат
16.1. ESP8266 — микроконтроллер с интерфейсом Wi-Fi
16.1.1. Установка Arduino IDE для работы с ESP8266
16.1.2. Печать курса валют на термопринтере в проекте Интернета вещей
16.2. Z-Uno — плата для прототипирования устройств Z-Wave
16.2.1. Установка Arduino IDE для Z-Uno
16.2.2. Подключение к плате Z-Uno датчика влажности DHT11
ЧАСТЬ IV. ПРАКТИКА РАЗРАБОТКИ ПРОЕКТОВ ДЛЯ ARDUINO
Глава 17. Умная теплица «Домашний цветок»
17.1. Мониторинг климатических параметров умной теплицы
17.2. Индикация показаний умной теплицы
17.3. Организация полива, обдува и освещения в умной теплице
17.4. Переносим функции мониторинга и управления теплицей на смартфон с ОС Android
17.5. Создаем собственное мобильное приложение для управления умной теплицей
17.6. Превращаем нашу умную теплицу в объект Интернета вещей
Глава 18. Светодиодное табло футбольных матчей
18.1. RGB-светодиодная лента WS2812
18.2. Arduino-библиотека Adafruit_NeoPixel
18.3. Создание табло результатов ЧМ-2018 по футболу на RGB-ленте WS2812
Глава 19. Голосовое управление исполнительными устройствами
19.1. Управление электроприборами с помощью радиорозеток UNIEL
19.2. Радиомодули FS1000A/MX-RM-5V
19.3. Модуль распознавания голоса Voice Recognition Module V2
19.4. Система голосового управления
Глава 20. Проекты для вендинга: всюду деньги, деньги, деньги
20.1. Купюроприемник ICT серий А7 и V7
20.1.1. Подключение купюроприемника ICT V7 к плате Arduino
20.1.2. Скетч для получения номинала принимаемой купюры
20.2. Монетоприемник СН-926
20.2.1. Настройка монетоприемника
20.2.2. Калибровка монетоприемника
20.3. Разменный автомат (хоппер) Cube Hopper MK II
20.3.1. Подключение хоппера к плате Arduino
20.3.2. Программирование хоппера
Глава 21. Makey: импровизированные клавиатуры
21.1. Makey: управление новогодней RGB-гирляндой
21.2. Программирование новогодней RGB-гирлянды
Глава 22. Arduino и интерфейс USB: управление роботами
22.1. Интерфейс USB
22.2. Плата расширения USB Host Shield
22.3. HID-устройства USB
22.4. Подключение HID-мыши USB
22.5. Управление роботом с помощью руля Defender
22.6. Управление роботом с помощью геймпада Defender
Глава 23. Камера Pixy: организация компьютерного зрения
23.1. Настройка камеры
23.2. Подключение камеры Pixy к плате Arduino
23.3. Организация слежения камерой за объектом
ПРИЛОЖЕНИЯ
Приложение 1. Перечень использованных источников
Приложение 2. Описание электронного архива
Предметный указатель
Скачать Проекты с использованием контроллера Arduino. 3-е изд. (+файлы)