В корзину
Купить в 1 клик
Бесплатная доставка Новой Почтой
Отправка на следующий рабочий день
Отправка на следующий рабочий день
Описание
2012г.
Количество страниц: 256
Рассмотрено в книге Программирование микроконтроллерных плат Arduino/Freeduino. Соммер программирования микроконтроллерных плат Arduino/Freduino. Описана структура и функционирование микроконтроллеров, среда программирования Arduino, необходимые инструменты и комплектующие для проведения экспериментов. Подробно рассмотрены основы программирования плат Arduino: структура программы, команды, операторы и функции, аналоговый и цифровой ввод/вывод данных. Изложение материала сопровождается более 80 примерами по разработке различных устройств: реле температуры, школьных часов, цифрового вольтметра, сигнализации с датчиком перемещения, выключателя уличного освещения и др. Для каждого проекта приведен перечень необходимых компонентов, монтажная схема и листинги программ.
На FTP-сервере издательства выложены исходные коды примеров из книги, технические описания, справочные данные, среда разработки, утилиты и драйверы.
Оглавление книги
Предисловие 1 Введение 3 Глава 1. Общие сведения о микроконтроллерах 5 1.1. Структура и принцип работы контроллера 6 1.1.1. Центральный процессор 6 1.1.2. Оперативная память и память программ 7 1.2. Внешние устройства 8 1.3. Сравнение технологий RISC и CISC 8 1.3.1. Технология CISC 8 1.3.2. Технология RISC 10 1.3.3. Выводы 10 Глава 2. Программирование микроконтроллеров 11 2.1. Что такое программа? 11 2.2. Программирование на C 11 Глава 3. Краткий обзор семейства микроконтроллеров Arduino 13 3.1. Плата Arduino Mega 14 3.2. Плата Arduino Duemilanove 15 3.3. Плата Arduino Mini 15 3.4. Плата Arduino Nano 16 3.5 Плата Arduino Pro Mini 16 3.6. Плата Arduino Pro 17 3.7. Плата LilyPad 17 3.8. USB-адаптер 18 Глава 4. Платы расширения Arduino 19 4.1. Плата расширения Arduino ProtoShield 19 4.2. Плата расширения Ardumoto 20 4.3. Плата расширения TellyMate 21 4.4. Плата расширения ArduPilot 22 4.5. Модули XBeeZNet 22 4.6. Плата расширения Ethernet 23 Глава 5. Комплектующие изделия 25 5.1. Список основных комплектующих 25 5.2. Список деталей для дополнительных экспериментов 25 5.3. Экспериментальная плата Freeduino 26 5.4. Экспериментальная плата микроконтроллера Freeduino 26 5.5. Электропитание 27 5.6. Кнопка Reset 27 5.7. ISP-подключение 27 5.8. Замечания по технике безопасности 29 Глава 6. Электронные компоненты и их свойства 31 6.1. Светодиоды 31 6.2. Резисторы 32 6.3. Конденсаторы 33 6.4. Транзисторы 34 6.5. Диод 34 6.6. Акустический пьезопреобразователь ("пищалка") 35 6.7. Монтажный провод 35 6.8. Кнопка 35 6.9. Потенциометр 36 6.10. Фоторезистор 36 6.11. Монтажная панель с контактными гнездами 37 Глава 7. Предварительная подготовка 39 7.1. Установка драйвера 39 7.2. Вспомогательная программа MProg для FT232RL 40 7.3. Программирование микросхемы FT232R с помощью MProg 44 7.4. Установка программного обеспечения Arduino 45 Глава 8. Среда разработки Arduino 47 8.1. Установки в Arduino-IDE 48 8.2. Наша первая программа "ES_Blinkt" 50 8.3. Что мы сделали? 52 Глава 9. Основы программирования Arduino 55 9.1. Биты и байты 55 9.2. Базовая структура программы 56 9.2.1. Последовательное выполнение программы 56 9.2.2. Прерывание выполнения программы 57 9.3. Структура программы Arduino 57 9.4. Первая программа с Arduino 58 9.5. Команды Arduino и их применение 59 9.5.1. Комментарии в исходном тексте 59 9.5.2. Фигурные скобки { } 60 9.5.3. Точка с запятой ; 60 9.5.4. Типы данных и переменные 60 9.5.5. Имя переменной 60 9.5.6. Локальные и глобальные переменные 61 9.5.7. Различные типы данных 61 9.5.8. Операторы 65 9.5.9. Директива #define 66 9.5.10. Управляющие конструкции 66 9.5.11. Циклы 71 9.5.12. Функции и подпрограммы 75 9.5.13. Функции преобразования типа 78 9.5.14. Математические функции 79 9.5.15. Последовательный ввод/вывод 86 9.5.16. Как функционирует последовательный интерфейс? 93 9.5.17. Программная эмуляция UART 96 9.5.18. Конфигурация входа/выхода и установка порта 97 9.5.19. Аналоговый ввод данных и АЦП 103 9.5.20. Аналоговый выход ШИМ 105 9.6. Некоторые специальные функции 110 Установка паузы с помощью delay 110 Функции случайных чисел 110 Сколько времени прошло? 113 Глава 10. Дальнейшие эксперименты с Arduino 115 10.1. Регулятор уровня яркости светодиода с транзистором 115 10.2. Плавное мигание 117 10.3. Подавление дребезга контактов кнопок 120 10.4. Задержка включения 124 10.5. Задержка выключения 126 10.6. Светодиоды и Arduino 127 10.7. Подключение больших нагрузок 130 10.8. ЦАП на основе ШИМ-порта 132 10.9. С музыкой все веселей 136 10.10. Романтичный свет свечи с помощью микроконтроллера 139 10.11. Контроль персонала на проходной 140 10.12. Часы реального времени 143 10.13. Программа школьных часов 144 10.14. Управление вентилятором 148 10.15. Автомат уличного освещения 151 10.16. Сигнализация 153 10.17. Кодовый замок 155 10.18. Измеритель емкости с автоматическим выбором диапазона 159 10.19. Профессиональное считывание сопротивления потенциометра 162 10.20. Сенсорный датчик 164 10.21. Конечный автомат 166 10.22. 6-канальный вольтметр на основе Arduino 169 10.23. Программирование самописца напряжения 171 10.24. Осциллограф с памятью на основе Arduino 173 10.25. Программа StampPlot — бесплатный профессиональный регистратор данных 175 10.26. Управление через VB.NET 179 10.27. Реле температуры 181 Глава 11. Шина I2C 185 11.1. Передача бита 186 11.2. Состояние "СТАРТ" 186 11.3. Состояние "СТОП" 186 11.4. Передача байта 186 11.5. Подтверждение 187 11.6. Адресация 187 11.7. 7-битовая адресация 187 Глава 12. Arduino и температурный датчик LM75 с I2C-шиной 189 Глава 13. Расширитель порта I2C с PCF8574 193 Глава 14. Ультразвуковой датчик для определения дальности 197 14.1. Ультразвуковой датчик SRF02 197 14.2. Считывание данных 198 Глава 15. Сопряжение платы Arduino с GPS 201 15.1. Сколько требуется спутников? 202 15.2. Как подключить GPS к Arduino? 202 15.3. GPS-протокол 203 Глава 16. Сервопривод с платой Servo для Arduino 209 16.1. Как функционирует сервопривод? 209 16.2. Подключение привода к Arduino 210 Глава 17. Жидкокристаллические дисплеи 213 17.1. Поляризация дисплеев 214 17.2. Статическое управление и мультиплексный режим 214 17.3. Угол обзора 215 17.4. Отражающие, пропускающие и полупрозрачные ЖКИ 215 17.5. Установка контрастности дисплея 216 17.6. Набор отображаемых символов 217 17.7. Расположение выводов распространенных ЖКИ 218 17.8. Управление дисплеем от микроконтроллера 220 17.9. Инициализация дисплеев 220 17.10. Подключение дисплея к Arduino 222 17.11. Первый эксперимент с ЖКИ 223 17.12. Как же все работает? 226 ПРИЛОЖЕНИЯ 229 Приложение 1. Соответствие выводов Arduino и ATmega 231 Приложение 2. Escape-последовательности 232 Приложение 3. Таблица ASCII 234 Приложение 4. Перечень фирм-поставщиков компонентов 239 Приложение 4. Перечень фирм-поставщиков компонентов 239 Приложение 5. Описание компакт-диска 240 Предметный указатель
Оглавление книги
Программирование микроконтроллерных плат Arduino/Freeduino. Соммер
Предисловие 1 Введение 3 Глава 1. Общие сведения о микроконтроллерах 5 1.1. Структура и принцип работы контроллера 6 1.1.1. Центральный процессор 6 1.1.2. Оперативная память и память программ 7 1.2. Внешние устройства 8 1.3. Сравнение технологий RISC и CISC 8 1.3.1. Технология CISC 8 1.3.2. Технология RISC 10 1.3.3. Выводы 10 Глава 2. Программирование микроконтроллеров 11 2.1. Что такое программа? 11 2.2. Программирование на C 11 Глава 3. Краткий обзор семейства микроконтроллеров Arduino 13 3.1. Плата Arduino Mega 14 3.2. Плата Arduino Duemilanove 15 3.3. Плата Arduino Mini 15 3.4. Плата Arduino Nano 16 3.5 Плата Arduino Pro Mini 16 3.6. Плата Arduino Pro 17 3.7. Плата LilyPad 17 3.8. USB-адаптер 18 Глава 4. Платы расширения Arduino 19 4.1. Плата расширения Arduino ProtoShield 19 4.2. Плата расширения Ardumoto 20 4.3. Плата расширения TellyMate 21 4.4. Плата расширения ArduPilot 22 4.5. Модули XBeeZNet 22 4.6. Плата расширения Ethernet 23 Глава 5. Комплектующие изделия 25 5.1. Список основных комплектующих 25 5.2. Список деталей для дополнительных экспериментов 25 5.3. Экспериментальная плата Freeduino 26 5.4. Экспериментальная плата микроконтроллера Freeduino 26 5.5. Электропитание 27 5.6. Кнопка Reset 27 5.7. ISP-подключение 27 5.8. Замечания по технике безопасности 29 Глава 6. Электронные компоненты и их свойства 31 6.1. Светодиоды 31 6.2. Резисторы 32 6.3. Конденсаторы 33 6.4. Транзисторы 34 6.5. Диод 34 6.6. Акустический пьезопреобразователь ("пищалка") 35 6.7. Монтажный провод 35 6.8. Кнопка 35 6.9. Потенциометр 36 6.10. Фоторезистор 36 6.11. Монтажная панель с контактными гнездами 37 Глава 7. Предварительная подготовка 39 7.1. Установка драйвера 39 7.2. Вспомогательная программа MProg для FT232RL 40 7.3. Программирование микросхемы FT232R с помощью MProg 44 7.4. Установка программного обеспечения Arduino 45 Глава 8. Среда разработки Arduino 47 8.1. Установки в Arduino-IDE 48 8.2. Наша первая программа "ES_Blinkt" 50 8.3. Что мы сделали? 52 Глава 9. Основы программирования Arduino 55 9.1. Биты и байты 55 9.2. Базовая структура программы 56 9.2.1. Последовательное выполнение программы 56 9.2.2. Прерывание выполнения программы 57 9.3. Структура программы Arduino 57 9.4. Первая программа с Arduino 58 9.5. Команды Arduino и их применение 59 9.5.1. Комментарии в исходном тексте 59 9.5.2. Фигурные скобки { } 60 9.5.3. Точка с запятой ; 60 9.5.4. Типы данных и переменные 60 9.5.5. Имя переменной 60 9.5.6. Локальные и глобальные переменные 61 9.5.7. Различные типы данных 61 9.5.8. Операторы 65 9.5.9. Директива #define 66 9.5.10. Управляющие конструкции 66 9.5.11. Циклы 71 9.5.12. Функции и подпрограммы 75 9.5.13. Функции преобразования типа 78 9.5.14. Математические функции 79 9.5.15. Последовательный ввод/вывод 86 9.5.16. Как функционирует последовательный интерфейс? 93 9.5.17. Программная эмуляция UART 96 9.5.18. Конфигурация входа/выхода и установка порта 97 9.5.19. Аналоговый ввод данных и АЦП 103 9.5.20. Аналоговый выход ШИМ 105 9.6. Некоторые специальные функции 110 Установка паузы с помощью delay 110 Функции случайных чисел 110 Сколько времени прошло? 113 Глава 10. Дальнейшие эксперименты с Arduino 115 10.1. Регулятор уровня яркости светодиода с транзистором 115 10.2. Плавное мигание 117 10.3. Подавление дребезга контактов кнопок 120 10.4. Задержка включения 124 10.5. Задержка выключения 126 10.6. Светодиоды и Arduino 127 10.7. Подключение больших нагрузок 130 10.8. ЦАП на основе ШИМ-порта 132 10.9. С музыкой все веселей 136 10.10. Романтичный свет свечи с помощью микроконтроллера 139 10.11. Контроль персонала на проходной 140 10.12. Часы реального времени 143 10.13. Программа школьных часов 144 10.14. Управление вентилятором 148 10.15. Автомат уличного освещения 151 10.16. Сигнализация 153 10.17. Кодовый замок 155 10.18. Измеритель емкости с автоматическим выбором диапазона 159 10.19. Профессиональное считывание сопротивления потенциометра 162 10.20. Сенсорный датчик 164 10.21. Конечный автомат 166 10.22. 6-канальный вольтметр на основе Arduino 169 10.23. Программирование самописца напряжения 171 10.24. Осциллограф с памятью на основе Arduino 173 10.25. Программа StampPlot — бесплатный профессиональный регистратор данных 175 10.26. Управление через VB.NET 179 10.27. Реле температуры 181 Глава 11. Шина I2C 185 11.1. Передача бита 186 11.2. Состояние "СТАРТ" 186 11.3. Состояние "СТОП" 186 11.4. Передача байта 186 11.5. Подтверждение 187 11.6. Адресация 187 11.7. 7-битовая адресация 187 Глава 12. Arduino и температурный датчик LM75 с I2C-шиной 189 Глава 13. Расширитель порта I2C с PCF8574 193 Глава 14. Ультразвуковой датчик для определения дальности 197 14.1. Ультразвуковой датчик SRF02 197 14.2. Считывание данных 198 Глава 15. Сопряжение платы Arduino с GPS 201 15.1. Сколько требуется спутников? 202 15.2. Как подключить GPS к Arduino? 202 15.3. GPS-протокол 203 Глава 16. Сервопривод с платой Servo для Arduino 209 16.1. Как функционирует сервопривод? 209 16.2. Подключение привода к Arduino 210 Глава 17. Жидкокристаллические дисплеи 213 17.1. Поляризация дисплеев 214 17.2. Статическое управление и мультиплексный режим 214 17.3. Угол обзора 215 17.4. Отражающие, пропускающие и полупрозрачные ЖКИ 215 17.5. Установка контрастности дисплея 216 17.6. Набор отображаемых символов 217 17.7. Расположение выводов распространенных ЖКИ 218 17.8. Управление дисплеем от микроконтроллера 220 17.9. Инициализация дисплеев 220 17.10. Подключение дисплея к Arduino 222 17.11. Первый эксперимент с ЖКИ 223 17.12. Как же все работает? 226 ПРИЛОЖЕНИЯ 229 Приложение 1. Соответствие выводов Arduino и ATmega 231 Приложение 2. Escape-последовательности 232 Приложение 3. Таблица ASCII 234 Приложение 4. Перечень фирм-поставщиков компонентов 239 Приложение 4. Перечень фирм-поставщиков компонентов 239 Приложение 5. Описание компакт-диска 240 Предметный указатель
