Разработка устройств цифровой техники на микроконтроллерах AVR.

Разработка устройств цифровой техники на микроконтроллерах AVR.

 

 

А. В. Белов "Разработка устройств на микроконтроллерах AVR шагаем от "чайника" до профи" Наука и техника, 2013 год, 528 стр., (11,2 мб djvu)

Это фундаментальное руководство даст возможность сделав шесть шагов преодолеть путь от начинающего любителя, познающего премудрости цифровой техники, до твердо стоящего специалиста - разработчика схемотехники. Владеющего принципами разработки схем для различных устройств на микроконтроллерах. А так же умеющим создавать программы для них. Изучая базовые возможности цифровой логики, вы поймете структуру и взаимодействие элементов цифровой техники, что в дальнейшем вам позволит более свободно представить и понять работу микропроцессора и микроконтроллера.

В дальнейшем эти знания вам помогут в изучении микроконтроллеров семейства AVR, их устройства и архитектуры, возможностями применения в блоках цифровой техники. Для составления программ под микроконтроллеры будут предложены к изучению языки программирования Ассемблер и СИ, конечно в области необходимой для выполнения поставленных задач. Которую вы сами будете ставить и выбирать стратегию ее решения, транслируя и отслеживая работу программы, а затем прошивая ее в память микроконтроллера. После изучения и освоения этих шагов можно будет приступать к разработке собственного устройства в цифровой техники с использованием полной функциональности микроконтроллера.
Скачать бесплатно

Содержание

Шаг 1. Учимся основам цифровой техники 7
1.1. Сначала был микропроцессор 7
Что же такое микропроцессор 7
Виды памяти 11
Различия между микропроцессорами и микроконтроллерами 12
1.2. Считаем по-другому 13
Десятичная система исчисления 13
Восьмеричная система исчисления 15
Шестнадцатеричная система исчисления 16
Двоичная система исчисления 17
Способы обозначения чисел в разных системах исчисления. 17
Арифметическая операция сложения 19
Арифметическая операция умножения 20
1.3. Электронные цифры 20
Представление чисел на ПК 20
Двухуровневый сигнал 22
1.4. Логические элементы 23
Знакомство с логическими элементами 23
Простые логические элементы 25
Таблица истинности 25
Составные логические элементы 26
1.5. Простейший триггер 27
Что такое триггер 27
Устройство и работа RS-триггера 29
Борьба с дребезгом контактов 31
1.6. Хранение информации 32
Устройство и работа D-триггера 32
Параллельный регистр 33
Параллельный регистр с расширенными возможностями 34
Устройство и работа JK-триггера 35
1.7. Счетчики 36
Работа делителя частоты 36
Счетчики прямого счета 38
Счетчики с обратным отсчетом 39
Делители с переменным коэффициентом деления 40
Таймеры 41
1.8. Дешифраторы 42
Устройство и принцип действия дешифратора 42
Селектор памяти ячеек ОЗУ 43
Каскадирование дешифраторов 45
1.9. Мультиплексоры 46

Шаг 2. Переходим от цифровой техники к микропроцессору и микроконтроллеру 48
2.1 .Типовая схема микропроцессорной системы 48
Структурная схема типичной микропроцессорной системы 48
Виды памяти 49
Порты ввода-вывода 51
Процессор и цифровые шины 51
Шина данных 52
Шина адреса 52
Шина управления 54
Принцип действия микропроцессорной системы 54
2.2. Алгоритм работы микропроцессорной системы 56
Возможности процессора 56
Программа 56
Процесс выполнения команды 58
Рабочие регистры 59
Команды микропроцессора 59
Команды условного и безусловного перехода. 60
Команда организации цикла 62
Команды перехода к подпрограмме 63
2.3. Механизм прерываний 64
2.4. Прямой доступ к памяти 66
2.5. Микроконтроллеры 68

Шаг 3. А теперь ближе к практике: знакомьтесь — микроконтроллеры AVR 70
3.1. Общие сведения 70
Особенности новой серии микроконтроллеров 70
Состав серии AVR 71
Особенности серии AVR 72
Внутренняя память 72
Способы программирования Flash- и EEPROM-памяти 78
Порты ввода-вывода 79
Периферийные устройства 79
Другие устройства 80
3.2. Регистры общего назначения (РОН) 81
3.3. Регистры ввода-вывода 82
3.4. Память 83
Общие сведения 83
Память программ 83
Оперативная память микроконтроллеров AVR 85
Область памяти, совмещенная с набором регистров общего назначения (РОН) 86
Область памяти, совмещенная с регистрами ввода-вывода (РВВ) 86
Область внутреннего ОЗУ 86
Область внешнего ОЗУ 87
Энергонезависимая память данных (EEPROM) 87
3.5. Счетчик команд и стековая память 88
3.6. Подсистема ввода-вывода 91
3.7. Система прерываний 93
Назначение системы прерываний 93
Управление системой прерываний 93
Алгоритм работы системы прерываний 94
3.8. Таймеры-счетчики 95
Общие сведения 95
Режимы работы таймеров 97
Режим Normal 97
Режим «Захват» (Capture) 98
Режим «Сброс при совпадении» (СТС) 98
Режим «Быстродействующий ШИМ» (Fast PWM) 99
Режим «ШИМ с точной фазой» (Phase Correct PWM) 101
Асинхронный режим 102
Предделители таймеров/счетчиков 102
3.9. Другие встроенные периферийные устройства 103
Аналоговый компаратор 103
Аналого-цифровой преобразователь 104
Последовательный канал (UART/USART) 106
Последовательный периферийный интерфейс (SPI) 106
Последовательный двухпроводный интерфейс (TWI) 107
3.10. Другие ячейки 108
Конфигурационные ячейки 108
Ячейки защиты и идентификации 108

Шаг 4. Переходим непосредственно к разработке устройств и программ 110
4.1. Общие положения 110
4.2. Простейшая программа 113
4.3. Переключающийся светодиод 139
4.4. Боремся с дребезгом контактов 148
4.5. Мигающий светодиод 155
4.6. Бегущие огни 161
4.7. Использование таймера 170
4.8. Использование прерываний по таймеру 179
4.9 Формирование звука 195
4.10. Музыкальная шкатулка 212
4.11. Кодовый замок 236
4.12. Кодовый замок с музыкальным звонком 272

Шаг 5. Последний этап разработки — отладка и транслирование 289
5.1. Программная среда AVR Studio 289
5.1.1. Общие сведения 289
5.1.2. Описание интерфейса 294
5.1.3. Создание проекта 300
5.1.4. Трансляция программы 303
5.1.5. Отладка программы 306
5.1.6. Исправлений ошибок 313
5.1.7. Создание проектов на языке СИ 313
5.2. Система программирования Code Vision AVR 315
5.2.1. Общие сведения 315
5.2.2. Интерфейс системы Code Vision AVR 316
5.3. Программаторы 323
5.3.1. Общие сведения 323
5.3.2. Схема программатора 325
5.3.3. Программа управления программатором 328

Шаг 6. Осваиваем все возможности микроконтроллера ATtiny2313 338
6.1. Основные характеристики и возможности 338
6.2. Центральное ядро процессора 343
6.3.Тактовый генератор 358
6.4. Система управления и сброса 373
6.5. Сторожевой (охранный) таймер 378
6.6. Прерывания 383
6.7. Порты ввода-вывода 384
6.8. Внешние прерывания 400
6.9. Восьмиразрядный таймер/счетчик с поддержкой режима ШИМ 404
6.10.16-разрядный таймер/счетчик (таймер/счетчик 1) 426
6.11 .Универсальный синхронно-асинхронный последовательный приемо-передатчик USART 455
6.12.Универсальный последовательный интерфейс — USI 484
6.13. Аналоговый компаратор 500
6.14. Встроенная система отладки программ debugWIRE 503
6.15. Программирование памяти 513
Приложение. Сводная таблица команд Ассемблера микроконтроллеров AVR 517
Группа команд логических операций 517
Группа команд арифметических операций 517
Группа команд операций с разрядами 517
Группа команд сравнения 518
Группа команд операций сдвига 518
Группа команд пересылки данных 519
Группа команд управления системой 519
Группа команд передачи управления (безусловная передача управления) 520
Группа команд передачи управления (пропуск команды по условию) 520
Группа команд передачи управления (передача управления по условию) 520
Описание CD диска и видеокурса 521
Список литературы 526
Список полезных ссылок на ресурсы Интернет 526
ISBN 978-5-94387-825-1