Название: Программирование микроконтроллерных плат Arduino/Freeduino. 2-е издание
Автор: Улли Соммер
Издательство: БХВ-Петербург
Серия: Электроника
Год издания: 2017
Страниц: 256
ISBN: 978-5-9775-3680-6
Формат: DjVu
Язык: русский
Размер: 39,5 + 311 Мб
Качество: отличное
Рассмотрено программирование микроконтроллерных плат Arduino/Genuino/Freeduino. Описана структура и функционирование микроконтроллеров, среда программирования
Arduino, необходимые инструменты и комплектующие для проведения экспериментов. Подробно рассмотрены основы программирования плат Arduino: структура программы, команды, операторы и функции, аналоговый и цифровой ввод/вывод данных. Изложение материала сопровождается более 80 примерами по разработке различных устройств: реле температуры, школьных часов, цифрового вольтметра, сигнализации с датчиком перемещения, выключателя уличного освещения и др. Для каждого проекта приведен перечень необходимых компонентов, монтажная схема и листинги программ.
Во втором издании рассмотрена русскоязычная версия Arduino IDE, добавлена информация об особенностях использования кириллических символов, а также исправлены опечатки в программном коде.
Оглавление:Введение
Предисловие
Подготовка к экспериментам
Лицензия GPL
Требования к системе
Обновления и поддержка
Дополнительные материалы, сопровождающие книгу
Глава 1. Общие сведения о микроконтроллерах
1.1. Структура и принцип работы контроллера
1.1.1. Центральный процессор
1.1.2. Оперативная память и память программ
1.2. Внешние устройства
1.3. Сравнение технологий CISC и RISC
1.3.1. Технология CISC
1.3.2. Технология RISC
1.3.3. Выводы
Глава 2. Программирование микроконтроллеров
2.1. Что такое программа?
2.2. Программирование на языке С
Глава 3. Краткий обзор семейства микроконтроллеров Arduino
Глава 4. Платы расширения Arduino
4.1. Плата расширения Arduino ProtoShield
4.2. Плата расширения Ardumoto
4.3. Плата расширения TellyMate
4.4. Плата расширения ArduPilot
4.5. Модули XBeeZNet
4.6. Плата расширения Ethernet
Глава 5. Комплектующие изделия
5.1. Список основных комплектующих
5.2. Список деталей для дополнительных экспериментов
5.3. Экспериментальная плата Freeduino
5.3.1. Подключение платы Freeduino
5.3.2. Электропитание
5.3.3. Кнопка Reset
5.3.4. ISP-подключение
5.4. Замечания по технике безопасности
Глава 6. Электронные компоненты и их свойства
6.1. Светодиоды
6.2. Резисторы
6.3. Конденсаторы
6.4. Транзисторы
6.5. Диоды
6.6. Акустический пьезопреобразователь («пищалка»)
6.7. Монтажный провод
6.8. Кнопка
6.9. Потенциометр
6.10. Фоторезистор
6.11. Макетная плата с контактными гнездами
Глава 7. Предварительная подготовка
7.1. Установка программного обеспечения Arduino в ОС Windows
7.2. Установка программного обеспечения Arduino в ОС Linux
7.3. Установка программного обеспечения Arduino в Mac OS X
Глава 8. Среда разработки Arduino
8.1. Исходные установки Arduino IDE
8.2. Наша первая программа: ES_Blinkt
8.3. Что мы сделали?
Глава 9. Основы программирования Arduino и первые эксперименты
9.1. Биты и байты
9.2. Базовая структура программы
9.2.1. Последовательное выполнение программы
9.2.2. Прерывание выполнения программы
9.3. Структура программы Arduino
9.4. Первая программа для Arduino
9.5. Команды Arduino и их применение
9.5.1. Комментарии в исходном тексте
9.5.2. Фигурные скобки {}
9.5.3. Точка с запятой ;
9.5.4. Типы данных и переменные
9.5.5. Имя переменной
9.5.6. Локальные и глобальные переменные
9.5.7. Различные типы данных:
Переменная типа Boolean
Переменная типа Byte
Переменная типа Char
Переменная типа Unsigned Char
Переменная типа Int (Integer)
Переменная типа Unsigned int
Переменная типа Long
Переменная типа Unsigned Long
Переменная типа Float
Переменная типа String
Массив Arrays
9.5.8. Операторы
Арифметические операторы
Операторы сравнения
Побитовая арифметика
Булева арифметика
Увеличение и уменьшение значения
Константы
9.5.9. Директива #define
9.5.10. Управляющие конструкции
Оператор if
Оператор if...else
Конструкция switch case
9.5.11. Циклы
Цикл for
Циклы while и do while
9.5.12. Функции и процедуры
Подпрограмма
Функция
Команда continue
9.5.13. Функции преобразования типа
9.5.14. Математические функции
Функция min(x, у)
Функция mах(х, у)
Функция abs(x)
Функция constrain(x, а, Ь)
Функция mар(х, fromLow, fromHigh, toLow, toHigh)
Функция pow(base, exponent)
Функция sq(x)
Функция sqrt(x)
Функция sin(rad)
Функция cos(rad)
Функция tan(rad)
9.5.15. Последовательный ввод/вывод
Функция Serial.begin(Baudrate)
Функция Serial.end()
Функция Serial.read()
Функция Serial.available()
Функция Serial.flush()
Функция Serial.print()
Функция Serial.println()
Функция Serial.write()
Проблемы с выводом кириллицы в последовательный порт Arduino IDE
9.5.16. Функционирование последовательного интерфейса
Считывание строки символов через последовательный интерфейс
Последовательный вывод данных с вычислением
9.5.17. Программная эмуляция UART
9.5.18. Конфигурация входа/выхода и установка порта
Функция pinMode(pin, mode)
Функция digitalRead(pin)
Функция digitalWrite(pin,value)
Считывание состояния кнопки
Кнопка с согласующим резистором
Кнопка с внешним подтягивающим резистором
9.5.19. Аналоговый ввод данных и АЦП
Функция analogRead(pin)
9.5.20. Аналоговые выходы ШИМ
Команда analogWrite(pin, value)
9.6. Некоторые специальные функции
9.6.1. Установка паузы
С помощью команды delay()
С помощью команды micros()
9.6.2. Функции случайных чисел
Функция randomSeed(seed)
Функция random(min, max)
9.6.3. Сколько времени прошло?
Функция millis()
Функция micros()
Глава 10. Продолжаем эксперименты с Arduino
10.1. Регулятор уровня яркости светодиода с транзистором
10.2. Плавное мигание
10.3. Подавление дребезга контактов кнопок
10.4. Задержка включения
10.5. Задержка выключения
10.6. Arduino и светодиоды
10.7. Подключение больших нагрузок
10.8. ЦАП на основе ШИМ-порта
10.9. С музыкой веселей
10.10. Романтический вечер с микроконтроллером при свечах
10.11. Контроль персонала на проходной
10.12. Часы реального времени
10.13. Программа школьных часов
10.14. Управление вентилятором
10.15. Автомат уличного освещения
10.16. Сигнализация
10.17. Кодовый замок
10.18. Измеритель емкости с автоматическим выбором диапазона
10.19. Профессиональное считывание сопротивления потенциометра
10.20. Сенсорный датчик
10.21. Конечный автомат
10.22. Шестиканальный вольтметр на основе Arduino
10.23. Программирование самописца напряжения
10.24. Осциллограф с памятью на основе Arduino
10.25. Программа StampPlot — бесплатный профессиональный регистратор данных
10.26. Управление микроконтроллером из VB.NET-программы Ports
10.27. Реле температуры
Глава 11. Шина I2С
11.1. Передача бита
11.2. Состояние СТАРТ
11.3. Состояние СТОП
11.4. Передача байта
11.5. Подтверждение
11.6. Адресация
11.7. 7-битовая адресация
Глава 12. Arduino и температурный датчик LM75 на шине I2С
Глава 13. Микросхема PCF8574 — расширитель порта I2С
Глава 14. Определение дальности с помощью ультразвукового датчика
14.1. Ультразвуковой датчик SRF02
14.2. Считывание данных
Глава 15. Сопряжение платы Arduino с устройством GPS
15.1. Сколько требуется спутников?
15.2. Как подключить приемник GPS к Arduino?
15.3. GPS-протокол
Глава 16. Подключение сервопривода к плате Arduino
16.1. Как функционирует сервопривод?
16.2. Подключение привода к Arduino
Глава 17. Жидкокристаллические дисплеи
17.1. Поляризация дисплеев
17.2. Статическое управление и мультиплексный режим
17.3. Угол обзора
17.4. Отражающие, пропускающие и полупрозрачные ЖКИ
17.5. Установка контрастности дисплея
17.6. Набор отображаемых символов
17.7. Расположение выводов распространенных ЖКИ
17.8. Управление дисплеем от микроконтроллера
17.9. Инициализация дисплеев
17.10. Подключение дисплея к Arduino
17.11. Первый эксперимент с ЖКИ
17.12. Как же все это работает?
ПРИЛОЖЕНИЯ
Приложение 1. Соответствие выводов платы Arduino и контроллера ATmega
Приложение 2. Escape-последовательности
Приложение 3. Таблица ASCII
Приложение 4. Описание электронного архива
Предметный указатель
Скачать книгу: Программирование микроконтроллерных плат Arduino/Freeduino. 2-е издание
Скачать электронный архив к книге
Нашел ошибку? Есть жалоба? Жми!
Пожаловаться администрации