Предисловие
Как работать с этой книгой?
Глава 1. Платформы для творчества и обучения
1.1. Не бойтесь экспериментировать!
1.2. Совместимость на уровне периферии и протоколов
1.3. Общие средства разработки и языки программирования
1.4. Облачные сервисы обмена данными
1.5. Онлайновые лаборатории и средства разработки
Глава 2. Советы для начинающих
2.1. Универсальные отладочные и макетные платы
2.2. Монтажные провода для пайки
2.3. Инструменты для подготовки проводов
2.4. Источники питания
2.4.1. Особенности питания от порта USB
2.4.2. Сетевые источники питания
Линейные стабилизаторы напряжения
Смещение рабочего напряжения стабилизатора
Импульсные преобразователи напряжения
2.4.3. Химические источники тока
Никель-кадмиевые аккумуляторы
Литиевые аккумуляторы
2.5. Согласование логических уровней
2.6. Интерфейсы обмена данными
2.6.1. Последовательный интерфейс UART
2.6.2. Конвертер интерфейсов USB-UART
2.6.3. Последовательная шина I2C
2.6.4. Последовательный интерфейс SPI
2.6.5. Последовательный протокол 1-Wire
2.7. Измерительное оборудование
2.7.1. Цифровой мультиметр
2.7.2. Цифровой осциллограф
2.8. Паяльное оборудование
2.9. Полезные программы и утилиты
2.9.1. PuTTY
2.9.2. WinSCP
2.9.3. Hercules
2.9.4. Termite
2.9.5. Notepad++
Глава 3. Онлайн-лаборатория Autodesk Circuits
3.1. Регистрация и первый проект
3.1.1. Создание макета и симуляция
3.1.2. Принципиальная электрическая схема макета
3.1.3. Печатная плата по схеме макета
3.2. Создание и редактирование компонентов
3.2.1. Создание символа компонента
3.2.2. Создание монтажного чертежа компонента
3.2.3. Работа с чужими компонентами
3.2.4. Доступ к своим компонентам
3.2.5. Рисование принципиальной схемы
3.3. Вывод схемы и чертежа платы на печать
3.3.1. Получение рисунка принципиальной схемы
3.3.2. Экспорт рисунка печатной платы в формате Eagle
3.3.3. Экспорт чертежа платы в формате GERBER
Глава 4. Среда разработки и макетирования Fritzing
4.1. Установка Fritzing
4.2. Создание макета схемы
4.3. Создание принципиальной электрической схемы
4.4. Разработка чертежа печатной платы
4.5. Экспорт чертежа печатной платы
4.6. Добавление компонентов в библиотеку
4.7. Разработка и загрузка программ
Глава 5. Обучающая платформа Arduino
5.1. Аппаратная база платформы, популярные модели
5.1.1. Arduino Nano
5.1.2. Arduino Uno
5.1.3. Arduino Pro Mini
5.1.4. Arduino Mega 2560
5.2. Установка драйверов USB-UART
5.3. Система нумерации выводов Arduino
5.4. Среда разработки и отладки Arduino IDE
5.4.1. Установка Arduino IDE
Установка для ОС Windows
Установка альтернативных версий IDE
Установка для ОС Linux
Установка для Mac OS X
5.4.2. Подключение платы Arduino и первые программы
5.4.3. Установка сторонних библиотек
Автоматическая установка библиотеки
Установка библиотеки вручную
5.4.4. Установка дополнительных описаний плат
Автоматическая установка описания
Установка описания вручную
5.4.5. Сетевой модуль расширения Dragino Yun
Почему именно Dragino Yun?
Технические характеристики Dragino Yun v2.4
Особенности питания шилда Dragino Yun
Добавление новых плат в Arduino IDE
Подключение к компьютеру для настройки
Функции кнопки сброса Dragino Yun
Обновление прошивки
Базовые настройки
Определение типа базовой платы
Загрузка скетча через сеть из Arduino IDE
Автоматическое обновление скетча
Использование консоли Dragino Yun для вывода сообщений
Глава 6. Облачная среда разработки Arduino Create
6.1. Подготовка среды Arduino Create
6.2. Онлайн-редактор Arduino Web Editor
Sketchbook
Examples
Libraries
Serial Monitor
Help
Preferences
6.3. Подключение платы Arduino и первая программа
6.4. Облачный сервис Arduino Cloud
6.5. Библиотека проектов Arduino Project Hub
Глава 7. Примеры программ и проектов для Arduino
7.1. Использование системного времени Linux
7.2. Сохранение данных на карту памяти
7.3. Сохранение данных на USB-накопитель
7.4. Сохранение данных в таблицу MySQL
7.5. Сервис Temboo и передача данных в Google Spreadsheet
7.6. Анализатор эфира в диапазоне 2,4 ГГц
7.6.1. Модуль радиоприемника
7.6.2. Модуль дисплея
7.6.3. Модуль Arduino
7.6.4. Напряжение питания и согласование логических уровней
7.6.5. Схема электрических соединений
7.6.6. Алгоритм работы устройства
7.7. Миниатюрный монитор силовой литий-полимерной батареи
7.7.1. Компоненты монитора
7.7.2. Алгоритм работы устройства
7.8. Установка библиотеки ATTiny
7.8.1. Подключение программатора
7.8.2. Установка фюзов микроконтроллера
7.8.3. Запись прошивки
7.8.4. Калибровка порога срабатывания
Глава 8. Однокристальная система ESP8266
8.1. Ученик обогнал учителя: феномен успеха ESP8266
8.1.1. Технические характеристики
8.1.2. Особенности эксплуатации
8.1.3. Модули на основе ESP8266
8.2. Расширение Arduino IDE для работы с ESP8266
8.2.1. Установка расширения
8.2.2. Особенности программирования ESP8266
Порты и прерывания
Функции задержки
Работа с EEPROM
Поддержка интерфейсов I2C и SPI
Специальные функции API ESP8266
Специальные функции библиотеки ESP8266WiFi
Обращение к функциям SDK ESP8266 из скетча Arduino
Глава 9. Примеры программ и проектов для ESP8266
9.1. Получение точного времени от сервера NTP
9.2. Получение уведомлений от устройств на Android
9.2.1. Скетч для принимающего устройства
9.2.2. Установка и настройка приложения Android
9.2.3. Настройка расширенных уведомлений с приложением Tasker
Настройка события Tasker — новое сообщение Viber
9.3. Модуль управления экшн-камерой Xiaomi Yui
9.3.1. Аппаратная часть модуля
9.3.2. Прошивка модуля
Алгоритм работы устройства
Измерение длительности импульсов
Совместимость программы модуля с разными версиями Arduino IDE и камеры
9.4. Адаптация взаимодействия с сервисом Temboo
Глава 10. Платформа NodeMCU для Интернета вещей
10.1. Подготовка к использованию NodeMCU
10.1.1. Рекомендованное оборудование
10.1.2. Подключение отладочной платы к компьютеру
10.1.3. Обновление прошивки NodeMCU
Конструктор прошивок
Возможная проблема: сбой обновления прошивки
10.2. Среда разработки ESPlorer IDE 207
10.3. Пакет разработки Lua for Windows
10.4. Язык программирования Lua — освоим за один вечер
10.4.1. Типы данных
10.4.2. Комментарии
10.4.3. Переменные и преобразование типов
10.4.4. Работа с таблицами и массивами
10.4.5. Условный оператор if
10.4.6. Цикл с предусловием while
10.4.7. Цикл с постусловием repeat
10.4.8 Цикл с оператором for
10.4.9. Операторы break и return
10.4.10. Функции
10.4.11. Функции обратного вызова
Глава 11. Примеры программ и проектов для NodeMCU
11.1. Использование графического OLED-дисплея
11.1.1. Подключение дисплея
11.1.2. Настройка модуля U8G
11.1.3. Пример программы
11.1.4. Монитор курса электронной валюты биткоин
Загрузка программы в отладочную плату
Алгоритм работы программы
11.1.5. Вывод на OLED-дисплей битовых изображений
Создание файла битового изображения
Пример программы
11.2. Использование графического TFT-дисплея
11.2.1. Подключение дисплея к плате NodeMCU
11.2.2. Пример использования графической библиотеки
Глава 12. Микрокомпьютер Omega2
12.1. Аппаратный состав платформы
12.2. Подготовка к работе
12.2.1. Настройка при помощи мастера
12.2.2. Настройка при помощи командной строки
12.3. Браузерное приложение Onion Console
12.4. Облачный сервис Onion Cloud
12.5. Python 2.7 и дополнительные модули
12.5.1. Управление портами GPIO
12.5.2. Модуль Python SPI
12.5.3. Модуль Python I2C
12.6. Файловый менеджер Midnight Commander
12.7. Расширение пространства памяти
12.7.1. Использование карты MicroSD и USB-накопителя
Размонтирование накопителя
Форматирование внешних накопителей
Изменение точки монтирования по умолчанию
12.7.2. Загрузка с внешней карты памяти
12.7.3. Своп-файл на внешнем носителе
12.7.4. Автоматическое включение своп-файла после перезагрузки
12.8. Особенности использования Omega2
12.8.1. Необходимость стабильного питания
12.8.2. Необходимость буферизации выводов
Глава 13. Примеры программ и проектов для Omega2
13.1. Подключение OLED-дисплея
13.2. Подключение модуля PWM Servo
13.3. Подключение модуля расширителя портов
13.4. Модуль светодиодной матрицы 8x8
13.5. Модуль семисегментных светодиодных индикаторов
13.6. Автономный клиент BitTorrent
Приложение. Содержание электронного архива
Предметный указатель