Микроконтроллеры AVR семейств Tiny и Mega фирмы ATMEL + CD. А. В. Евстифеев, 5-е издание, 2008 г.Книга посвящена вопросам практического применения однокристальных микроконтроллеров AVR семейств Tiny и Mega фирмы ATMEL. Рассмотрена архитектура, ее особенности. Приведены основные электрические параметры и временные характеристики. Подробно описано внутреннее устройство микроконтроллеров, системы команд, периферия, а также способы программирования с примерами реализации некоторых алгоритмов для конкретных цифровых устройств.

Книга предназначена для разработчиков радиоэлектронной аппаратуры, инженеров, студентов вузов и радиолюбителей.

Название: Микроконтроллеры AVR семейств Tiny и Mega фирмы ATMEL + CD. Электронное издание
Автор: Евстифеев А.В.
Издательство: Издательский дом "Додэка-XXI"
Год выпуска: 2008
ISBN: 978-5-94120-220-1
Формат: PDF
Качество: eBook (изначально компьютерное)
Количество страниц: 558
Размер: книга - 2.2 Мб, диск - 218 (117+111) Мб

В состав диска входят собственно сама книга, а также:
-AVR Studio
-Документация на микроконтроллеры (Data Sheets)
-Документация по применению (App Notes)

Содержание

Предисловие 9

Часть 1. Микроконтроллеры семейства Tiny

Глава 1. Знакомство с семейством Tiny
1.1. Общие сведения 12
1.2. Отличительные особенности 12
1.3. Характеристики процессора 13
1.4. Характеристики подсистемы ввода/вывода 13
1.5. Периферийные устройства 14
1.6. Архитектура ядра 14
1.7. Цоколевка и описание выводов 15

Глава 2. Архитектура микроконтроллеров семейства Tiny
2.1. Общие сведения 21
2.2. Организация памяти 26
2.2.1. Память программ 26
2.2.2. Память данных 28
2.2.3. Энергонезависимая память данных (EEPROM) 38
2.3. Счетчик команд и выполнение программы 42
2.3.1. Функционирование конвейера 42
2.3.2. Задержки в конвейере 43
2.3.3. Счетчик команд 44
2.3.4. Команды типа «проверка/пропуск» (Test & Skip) 44
2.3.5. Команды условного перехода 44
2.3.6. Команда безусловного перехода 45
2.3.7. Команда вызова подпрограмм 45
2.3.8. Команды возврата из подпрограмм 46
2.4. Стек 46

Глава 3. Устройство управления микроконтроллеров семейства Tiny
3.1. Общие сведения 48
3.2. Тактовый генератор 49
3.2.1. Кварцевый генератор 49
3.2.2. Внешний сигнал синхронизации 50
3.2.3. Встроенный генератор с внешней или внутренней ^С-цепочкой 50
3.3. Режимы пониженного энергопотребления 52
3.3.1. Режим Idle 53
3.3.2. Режим Power Down 53
3.3.3. Режим ADC Noise Reduction 54
3.4. Сброс
3.4.1. Сброс по включению питания 55
3.4.2. Аппаратный сброс 57
3.4.3. Сброс от сторожевого таймера 57
3.4.4. Сброс при снижении напряжения питания 58
3.4.5. Управление схемой сброса 59
3.5. Прерывания 66
3.5.1. Таблица векторов прерываний 66
3.5.2. Обработка прерываний 67
3.5.3. Внешние прерывания. Регистры GIMSK и GIFR 69
3.5.4. Прерывания от таймеров. Регистры TIMSK и TIFR 71
3.5.5. Управление прерываниями в микроконтроллерах ATtiny28x. Регистры ICR и IFR 73

Глава 4. Порты ввода/вывода
4.1. Общие сведения 76
4.2. Обращение к портам ввода/вывода 77
4.3. Конфигурирование портов ввода/вывода 78
4.4. Аппаратный модулятор 81

Глава 5. Таймеры в микроконтроллерах семейства Tiny
5.1. Общие сведения 86
5.2. Назначение выводов таймеров/счетчиков 86
5.3. Таймер/счетчик T0 87
5.4. Таймер/счетчик T1 90
5.4.1. Выбор источника тактового сигнала 93
5.4.2. Режим таймера 94
5.4.3. Режим ШИМ 95
5.5. Сторожевой таймер 97

Глава 6. Аналоговый компаратор

6.1. Общие сведения 100
6.2. Функционирование компаратора 100

Глава 7. Аналого-цифровой преобразователь
7.1. Общие сведения 104
7.2. Функционирование модуля АЦП 104
7.3. Повышение точности преобразования 111
7.4. Параметры АЦП 112

Часть 2. Микроконтроллеры семейства Mega

Глава 8. Знакомство с семейством Mega
8.1. Общие сведения 114
8.2. Отличительные особенности 114
8.3. Характеристики процессора 115
8.4. Характеристики подсистемы ввода/вывода 115
8.5. Периферийные устройства 116
8.6. Архитектура ядра 116
8.7. Цоколевка и описание выводов 117

Глава 9. Архитектура микроконтроллеров семейства Mega
9.1. Введение 148
9.2. Организация памяти 148
9.2.1. Память программ 150
9.2.2. Память данных 153
9.2.3. Энергонезависимая память данных (EEPROM) 189
9.3. Счетчик команд и выполнение программы 193
9.3.1. Счетчик команд 193
9.3.2. Функционирование конвейера 193
9.3.3. Команды типа «проверка/пропуск» (Test & Skip) 194
9.3.4. Команды условного перехода 195
9.3.5. Команды безусловного перехода 195
9.3.6. Команды вызова подпрограмм 197
9.3.7. Команды возврата из подпрограмм 198
9.4. Стек 198

Глава 10. Тактирование, режимы пониженного энергопотребления и сброс
10.1. Общие сведения 200
10.2. Тактовый генератор 200
10.2.1. Тактовый генератор с внешним резонатором 203
10.2.2. Низкочастотный кварцевый генератор 204
10.2.3. Внешний сигнал синхронизации 205
10.2.4. Внешняя RС-цепочка 205
10.2.5. Встроенный генератор с внутренней RС-цепочкой 206
10.2.6. Управление тактовой частотой 209
10.3. Режимы пониженного энергопотребления 210
10.4. Сброс 217
10.4.1. Сброс по включению питания 219
10.4.2. Аппаратный сброс 221
10.4.3. Сброс от сторожевого таймера 221
10.4.4. Сброс при снижении напряжения питания 222
10.4.5. Управление схемой сброса 223

Глава 11. Прерывания

11.1. Общие сведения 230
11.2. Таблица векторов прерываний 230
11.3. Обработка прерываний 239
11.4. Внешние прерывания 240

Глава 12. Порты ввода/вывода
12.1. Общие сведения 248
12.2. Регистры портов ввода/вывода 249
12.3. Конфигурирование портов ввода/вывода 250

Глава 13. Таймеры
13.1. Общие сведения 255
13.2. Назначение выводов таймеров/счетчиков 256
13.3. Прерывания от таймеров/счетчиков 257
13.4. Предделители таймеров/счетчиков 261
13.4.1. Управление предделителями 262
13.4.2. Использование внешнего тактового сигнала 263
13.5. Таймеры/счетчики T0 и T2 264
13.5.1. Управление тактовым сигналом 269
13.5.2. Режимы работы  270
13.5.3. Асинхронный режим 276
13.6. Таймеры/счетчики      T3 279
13.6.1. Обращение к 16-разрядным регистрам 287
13.6.2. Управление тактовым сигналом 288
13.6.3. Режимы работы  288
13.7. Сторожевой таймер 300

Глава 14. Аналоговый компаратор
14.1. Введение 305
14.2. Функционирование компаратора 306

Глава 15. Аналого-цифровой преобразователь
15.1. Общие сведения 310
15.2. Функционирование модуля АЦП 311
15.3. Результат преобразования 320
15.4. Повышение точности преобразования 321
15.5. Параметры АЦП  323

Глава 16. Универсальный асинхронный (синхронный/асинхронный) приемопередатчик
16.1. Общие сведения  324
16.2. Использование модулей USART/UART 326
16.2.1. Скорость приема/передачи 333
16.2.2. Формат кадра 336
16.2.3. Передача данных  338
16.2.4. Прием данных  340
16.3. Мультипроцессорный режим работы 345

Глава 17. Последовательный периферийный интерфейс SPI
17.1. Введение 347
17.2. Функционирование модуля SPI 347
17.3. Режимы передачи данных  352
17.4. Использование вывода SS 353

Глава 18. Последовательный двухпроводный интерфейс
18.1. Общие сведения 355
18.2. Принципы обмена данными по шине TWI 356
18.3. Обзор модуля TWI 361
18.4. Взаимодействие прикладной программы с модулем TWI 367
18.5. Режимы работы модуля TWI 370
18.5.1. Режим «Ведущий передатчик» 370
18.5.2. Режим «Ведущий приемник» 374
18.5.3. Режим «Ведомый приемник» 378
18.5.4. Режим «Ведомый передатчик» 382
18.5.5. Комбинирование различных режимов 385
18.5.6. Арбитраж 386
18.6. Параметры интерфейса TWI 387
Часть 3. Команды микроконтроллеров семейств Tiny и Mega

Глава 19. Общие сведения о системе команд
19.1. Введение в систему команд 390
19.2. Операнды 390
19.3. Типы команд 392
19.3.1. Команды логических операций 392
19.3.2. Команды арифметических операций и команды сдвига 393
19.3.3. Команды операций с битами 393
19.3.4. Команды пересылки данных 394
19.3.5. Команды передачи управления 394
19.3.6. Команды управления системой 397
19.4. Сводные таблицы команд 397

Глава 20. Описание команд 403

Часть 4. Программирование микроконтроллеров семейств Tiny и Mega

Глава 21. Введение в программирование микроконтроллеров AVR
21.1. Общие сведения 472
21.2. Защита кода и данных 473
21.3. Конфигурационные ячейки 475
21.4. Идентификатор 479
21.5. Калибровочная ячейка 480
21.6. Организация памяти программ и данных микроконтроллеров семейства Mega 480

Глава 22. Последовательное программирование при высоком напряжении
22.1. Общие сведения 482
22.2. Управление процессом программирования 483

Глава 23. Программирование по последовательному каналу

23.1. Общие сведения 489
23.2. Переключение в режим программирования 492
23.3. Управлением процессом программирования FLASH-памяти 496
23.4. Управление процессом программирования EEPROM-памяти 497

Глава 24. Параллельное программирование

24.1. Общие сведения 498
24.2. Переключение в режим параллельного программирования 504
24.3. Стирание кристалла 505
24.4. Программирование FLASH-памяти 505
24.5. Программирование EEPROM-памяти 508
24.6. Конфигурирование микроконтроллеров 510
24.6.1. Программирование конфигурационных ячеек 510
24.6.2. Программирование ячеек защиты 511
24.6.3. Чтение конфигурационных ячеек и ячеек защиты 511
24.6.4. Чтение ячеек идентификатора и калибровочной константы 512

Глава 25. Программирование по интерфейсу JTAG
25.1. Общие сведения 514
25.2. Использование интерфейса JTAG для программирования кристалла. Команды JTAG 517
25.2.1. AVR RESET (код команды $0C) 518
25.2.2. PROG ENABIE (код команды $04) 518
25.2.3. PROG COMMANDS (код команды $05) 518
25.2.4. PROG PAGEIOAD (код команды $06) 519
25.2.5. PROG PAGEREAD (код команды $07) 519
25.2.6. Алгоритм программирования 519

Глава 26. Самопрограммирование микроконтроллеров семейства Mega
26.1. Общие сведения 528
26.2. Области RWW и NRWW5 30
26.3. Функционирование загрузчика 531
26.3.1. Управление процессом самопрограммирования 531
26.3.2. Изменение памяти программ 535
26.3.3. Изменение ячеек защиты загрузчика 536
26.3.4. Чтение конфигурационных ячеек и ячеек защиты 536
26.3.5. Пример реализации программы-загрузчика 537

Приложение 1. Сводная таблица микроконтроллеров AVR семейства Tiny 542
Приложение 2. Сводная таблица микроконтроллеров AVR семейства Mega 544
Приложение 3. Чертежи корпусов микроконтроллеров AVR
семейств Tiny и Mega 549
Приложение 4. Электрические параметры микроконтроллеров AVR
семейств Tiny и Mega 552
Предметный указатель 554


Скачать: Микроконтроллеры AVR семейств Tiny и Mega фирмы ATMEL + CD. А. В. Евстифеев, 5-е издание, 2008 г.

CD часть 1, CD часть 2