Мир книг по микроэлектронике
Книги авторства Белова Александра
На главнуюРеквизиты автора Сайт МирМК FUSE калькулятор Сайт "Симферополь вчера и сегодня"


А. В. Белов

Микроконтроллеры AVR от азов программирования до создания практических устройств

Содержание

О содержании диска, прилагаемого к книге, и сайте информационной поддержки самоучителя. . 7

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

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

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

Шаг 4. Инструменты разработки — программы отладки и транслирования . . . 112
  4.1. Программная среда AVR Studio. . . . . . 112
  4.1.1. Общие сведения. . . . . . . 112
  4.1.2. Описание интерфейса. . . 118
  4.1.3. Создание проекта. . . . 124
  4.1.4. Трансляция программы. . . . . . 126
  4.1.5. Отладка программы. . . . . . . . . 129
  4.1.6. Исправление ошибок. . . 136
  4.1.7. Создание проектов на языке СИ. . 137
  4.2. Система программирования Code Vision AVR. . 138
  4.2.1. Общие сведения. . . . . . . 138
  4.2.2. Интерфейс системы Code Vision AVR. . 139
      Создание проекта без использования мастера. . . . 142
      Отладка программы. . . . . . . 145
  4.3. Программаторы. . . . . . . . 146
  4.3.1. Общие сведения. . . . . . . 146
  4.3.2. Схема программатора. . . 148
      Универсальные и специализированные программаторы. . 148
      Способ подключения программатора к компьютеру. . 148
      Программатор для LPT порта. . . 149
      Программатор для COM порта. . . . 150
      Программатор для USB порта. . . . . . 151
      Внутрисхемное программирование. . 153
      Питание программатора. . . . 154
  4.3.3. Программа управления программатором. . 154
      Знакомство с программой PonyProg . . . 154
      Алгоритм действий . . . . . . . 155
      Программирование микросхем. . . . . . . 157
      Режимы работы программатора . . . 162
      Работа с управляющей программой USBasp. . 163

Шаг 5. Переходим непосредственно к разработке устройств и программ. . 168
  5.1. Общие положения. . . . 168
  5.2. Простейшая программа. . . . . . . 171
  5.3. Переключающийся светодиод. . . . . . . . . 197
  5.4. Боремся с дребезгом контактов. . . . . . . 206
  5.5. Мигающий светодиод . . . . . . . . . 213
  5.6. Бегущие огни. . . . . . . . . . 219
  5.7. Использование таймера. . . 228
  5.8. Использование прерываний по таймеру. . 237
  5.9. Формирование звука. . . 253
  5.10. Музыкальная шкатулка. . . . . . . . 270
  5.11. Кодовый замок. . . . . . . . . . . 294
  5.12. Кодовый замок с музыкальным звонком. . 330

Шаг 6. Осваиваем все возможности микроконтроллера ATtiny2313. . 347
  6.1. Основные характеристики и возможности. . 347
  6.2. Центральное ядро процессора. . . . . . . . . 352
  6.3. Тактовый генератор. . . . . . . . . 367
  6.4. Система управления и сброса. . . . . . 382
  6.5. Сторожевой (охранный) таймер. . . . . . 387
  6.6. Прерывания. . . . . . . . . . 392
  6.7. Порты ввода-вывода. . . . . . . . 393
  6.8. Внешние прерывания. . . . . . . . 409
  6.9. Восьмиразрядный таймер/счетчик с поддержкой режима ШИМ. . . . . . 413
  6.10. 16-разрядный таймер/счетчик (таймер/счетчик 1). . 435
  6.11. Универсальный синхронно-асинхронный последовательный приемо-передатчик USART. . . 464
  6.12. Универсальный последовательный интерфейс — USI. . 493
  6.13. Аналоговый компаратор. . . . . . 509
  6.14. Встроенная система отладки программ debugWIRE. . 512
  6.15. Программирование памяти. . . . . . 522

Приложение 1. Адаптер USB-FIFO. . . . . . . 526
Приложение 2. Сводная таблица команд Ассемблера микроконтроллеров AVR. . . 533
Приложение 3. К ак использовать видеокурс и программные продукты, записанные на CD. . . . . . 537

Список литературы. . . . . . . . . . . 543
Список полезных ссылок на ресурсы Интернет. . 543

 

 

На главную www.mirmk.ru