1.1. Вначале был микропроцессор
Что же такое микропроцессор
Виды памяти
Различия между микропроцессорами и микроконтроллерами
1.2. Считаем по-другому
Десятичная система исчисления
Восьмиричная система исчисления
Шестнадцатиричная система исчисления
Двоичная система исчисления
Способы обозначения чисел в разных системах исчисления
Арифметическая операция сложения
Арифметическая операция умножения
1.3. Электронные цифры
Представление чисел на ПК
Двухуровневый сигнал
1.4. Логические элементы
Знакомство с логическими элементами
Простые логические элементы
Таблица истинности
Составные логические элементы
1.5. Простейший триггер
Что такое триггер
Устройство и работа RS-триггера
Борьба с дребезгом контактов
1.6. Хранение информации
Устройство и работа D-триггера
Параллельный регистр
Параллельный регистр с расширенными возможностями
Устройство и работа JK-триггера
1.7. Счетчики
Работа делителя частоты
Счетчики прямого счета
Счетчики с обратным отсчетом
Делители с переменным коэффициентом деления
Таймеры
1.8. Дешифраторы
Устройство и принцип действия дешифратора
Селектор памяти ячеек ОЗУ
Каскадирование дешифраторов
1.9. Мультиплексоры
2.1. Типовая схема микропроцессорной системы
Структурная схема типичной микропроцессорной системы
Виды памяти
Порты ввода-вывода
Процессор и цифровые шины
Шина данных
Шина адреса
Шина управления
Принцип действия микропроцессорной системы
2.2. Алгоритм работы микропроцессорной системы
Возможности процессора
Программа
Процесс выполнения команды
Рабочие регистры
Команды микропроцессора
Команды условного и безусловного перехода
Команда организации цикла
Команды перехода к подпрограмме
2.3. Механизм прерываний
2.4. Прямой доступ к памяти
2.5. Микроконтроллеры
3.1. Общие сведения
Особенности новой серии микроконтроллеров
Состав серии AVR
Особенности серии AVR
Внутренняя память
Способы программирования Flash- и EEPROM-памяти
Порты ввода-вывода
Периферийные устройства
Другие устройства
3.2. Регистры общего назначения (РОН).
3.3. Регистры ввода-вывода
3.4. Память
Общие сведения
Память программ
Оперативная память микроконтроллеров AVR
Область памяти, совмещенная с набором регистров общего назначения
(РОН)
Область памяти, совмещенная с регистрами ввода-вывода (РВВ)
Область внутреннего ОЗУ
Область внешнего ОЗУ
Энергонезависимая память данных (EEPROM)
3.5. Счетчик команд и стековая память
3.6. Подсистема ввода-вывода
3.7. Система прерываний
Назначение системы прерываний
Управление системой прерываний
Алгоритм работы системы прерываний
3.8. Таймеры-счетчики
Общие сведения
Режимы работы таймеров
Режим Normal
Режим «Захват» (Capture)
Режим «Сброс при совпадении» (CTC)
Режим «Быстродействующий ШИМ» (Fast PWM)
Режим «ШИМ с точной фазой» (Phase Correct PWM)
Асинхронный режим
Предделители таймеров/счетчиков
3.9. Другие встроенные периферийные устройства
Аналоговый компаратор
Аналого-цифровой преобразователь
Последовательный канал (UART/USART)
Последовательный периферийный интерфейс (SPI)
Последовательный двухпроводный интерфейс (TWI)
3.10. Другие ячейки
Конфигурационные ячейки
Ячейки защиты и идентификации
6.1. Основные характеристики и возможности
Основные характеристики
Блок-схема микроконтроллера
Особенности микросхемы ATtiny2313
Описание выводов
6.2. Центральное ядро процессора
Введение
Краткая характеристика архитектуры
АЛУ — арифметико-логическое устройство
Регистр статуса
Файл регистров общего назначения
X-регистр, Y-регистр и Z-регистр
Указатель стека
Память ATtiny2313
Системная перепрограммируемая Flash-память программ
Память данных SRAM
Память данных EEPROM
Процесс чтения/записи EEPROM
Регистр адреса EEPROM — EEAR
Регистр данных EEPROM — EEDR
Регистр управления EEPROM — EECR
Атомарное программирование байта
Раздельное программирование байта
Стирание
Запись
Предотвращение ошибок при работе с EEPROM
Регистры ввода-вывода
Регистры ввода-вывода общего назначения
6.3. Тактовый генератор
Система синхронизации и варианты ее конфигурирования
Источники тактового сигнала
Источник сигнала по умолчанию
Кварцевый резонатор
Встроенный перестраиваемый RC-генератор
Регистр калибровки генератора — OSCCAL
Внешний тактовый сигнал
Внутренний генератор на 128 кГц
Регистр предварительного делителя частоты — CLKPR
Управления питанием и режимы сна
Регистр управления микроконтроллером — MCUCR
Режим Idle
Режим Power-down
Режим Standby
Советы по уменьшению потребляемой мощности
6.4. Система управления и сброса
Начальный сброс микроконтроллера AVR
Источники сигнала сброса
Сброс при включении питания
Внешний сброс
Сброс при снижении напряжения питания
Сброс от сторожевого таймера
Регистр статуса системы сброса — MCUSR
6.5. Сторожевой (охранный) таймер
Особенности
Блок-схема
Режимы работы
Регистр управления сторожевым таймером — WDTCSR (WDTCR)
6.6. Прерывания
6.7. Порты ввода-вывода
Введение
Использование портов для цифрового ввода-вывода
Конфигурация выводов
Переключение значения разряда порта
Переключение между выводом и вводом
Чтение значения на выводе порта
Разрешение цифрового ввода и режимы низкого потребления (режимы сна)
Дополнительные функции линий порта ввода-вывода
Регистр управления микроконтроллером — MCUCR
Альтернативные функции порта A
Альтернативные функции порта B
Детальное описание альтернативных функций каждого из выводов
Альтернативные функции порта D
Подробное описание альтернативных функций
Описание управляющих регистров портов ввода-вывода
6.8. Внешние прерывания
Назначение и режимы работы
Регистр управления микроконтроллером — MCUCR
Главный регистр маски прерываний — GIMSK
Регистр флагов внешних прерываний — EIFR
Регистр маски прерываний по изменению на любом из контактов — PCMSK
6.9. Восьмиразрядный таймер/счетчик с поддержкой режима ШИМ
Назначение и особенности
Упрощенная блок-схема
Регистры
Используемые обозначения
Источники тактового сигнала таймера/счетчика
Модуль счета
Модуль совпадения
Принудительное изменение состояния выхода совпадения
Блокировка режима совпадения в момент записи регистра TCNT0
Использование модуля совпадения
Модуль вывода сигнала совпадения
Режим вывода сигнала совпадения и генерация сигналов
Режимы работы
Режим «Normal»
Режим сброса при совпадении (CTC)
Режим Fast PWM (быстрый ШИМ)
ШИМ, корректный по фазе (Phase Correct PWM)
Регистр A управления таймера/счетчика 0 — TCCR0A
Регистр B управления таймера/счетчика 0 — TCCR0B
Счетный регистр таймера/счетчика 0 — TCNT0.
Регистр совпадения (канал A) — OCR0A
Регистр совпадения (канал B) — OCR0B
Регистр маски таймера/счетчика 0 — TIMSK
Регистр флагов таймера/счетчика 0 — TIFR
Предварительные делители таймера/счетчика 0 и таймера/счетчика 1
Внутренний источник тактового сигнала
Сброс предварительного делителя
Внешний источник тактового сигнала
Главный регистр управления Таймерами — GTCCR
6.10. 16-разрядный таймер/счетчик (таймер/счетчик 1)
Основные особенности
Регистры
Терминология
Совместимость
Доступ к 16-разрядным регистрам
Источники тактового сигнала таймера/счетчика
Модуль счета
Модуль захвата
Источники сигнала запуска в режиме захвата
Схема подавления помех
Использование модуля захвата
Модуль совпадения
Принудительное изменение сигнала на выходе совпадения
Блокировка режима совпадения в момент записи регистра TCNT1
Использование модуля совпадения
Модуль вывода сигнала совпадения
Режимы работы 16-разрядного таймера/счетчика
Режим Normal
Режим сброса при совпадении (CTC)
Режим Fast PWM
Режим phase correct PWM
Режим phase and frequency correct PWM
Регистр A управления таймером/счетчиком — TCCR1A
Регистр B управления таймером/счетчиком — TCCR1B
Регистр C управления таймером/счетчиком– TCCR1C
Счетный регистр таймера/счетчика 1 — TCNT1H и TCNT1L
Регистр совпадения A — OCR1AH и OCR1AL
Регистр совпадения B — OCR1BH и OCR1BL
Регистр захвата — ICR1H и ICR1L
Регистр маски прерываний таймера/счетчика — TIMSK
Регистр флагов таймера/счетчика 1 — TIFR
6.11. Универсальный синхронно-асинхронный последовательный приемо-передатчик
USART
Особенности
Краткий обзор
Совместимость режимов AVR USART и AVR UART
Тактовый генератор
Внутренняя генерация тактового сигнала — генератор скорости передачи
информации
Режим удвоенной скорости (U2X)
Внешний тактовый сигнал
Синхронизация процесса передачи данных
Форматы кадра
Расчет значения бита четности
Инициализация USART
Передача данных — передатчик USART
Посылка кадра данных длиной от 5 до 8 бит
Посылка кадра данных длиной 9 бит
Флаги и прерывания передатчика
Генератор сигнала четности
Отключение передатчика
Прием данных — приемник USART
Прием кадра данных длиной от 5 до 8 битов
Прием кадра данных длиной 9 бит
Флаг готовности приемника и вызов прерывания
Флаги ошибки приемника
Схема контроля четности
Выключение приемника
Освобождение буфера приемника
Асинхронный прием данных
Восстановление тактового сигнала в асинхронном режиме
Восстановление данных в асинхронном режиме
Допустимые отклонения в асинхронном режиме
Режим мультипроцессорного обмена
Регистр ввода-вывода USART — UDR
Регистр «A» статуса и управления USART — UCSRA
Регистр «B» статуса и управления USART — UCSRB
Регистр C статуса и управления USART — UCSRC
Регистры скорости обмена информации USART — UBRRL и UBRRH
6.12. Универсальный последовательный интерфейс — USI
Назначение и особенности
Краткое описание
Описание принципа работы в трехпроводном режиме
Пример операции SPI для ведущего устройства
Пример операции SPI для ведомого устройства
Принцип действия в двухпроводном режиме
Схема обнаружения стартового условия
Альтернативное использование USI
Полудуплексная асинхронная передача данных
Регистр данных USI — USIDR
Регистр состояния USI — USISR
Регистр управления USI — USICR
6.13. Аналоговый компаратор
Назначение и особенности
Регистр статуса и управления аналогового компаратора — ACSR
Регистр отключения цифрового ввода — DIDR
6.14. Встроенная система отладки программ debugWIRE
Основные особенности встроенной системы отладки
Назначение
Физический интерфейс
Точки останова программы
Ограничения режима debugWIRE
Специальный регистр ввода-вывода, предназначенный для debugWIRE
Регистр данных debugWire — DWDR
Автоматическое перепрограммирование памяти программ
Стирание страницы
Загрузка страницы (заполнение данными временного буфера)
Запись страницы
Адресация памяти программ при автоматическом перепрограммировании
Регистр статуса и управления загрузкой программной памяти — SPMCSR
Запись в EEPROM и работа с регистром SPMCSR
Чтение состояния fuse-переключателей и битов блокировки программным
путем
Предотвращение ошибок при программировании Flash-памяти
Время программирования Flash-памяти при использовании команды SPM
6.15. Программирование памяти
Биты защиты памяти данных и программ
Fuse-переключатели
Фиксирование значений fuse-переключателей
Байты идентификации
Байт калибровки
Размер страницы
Приложение. Сводная таблица команд Ассемблера микроконтроллеров AVR
описание CD диска и видеокурса
Список литературы
Список полезных ссылок на ресурсы интернет