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


А. В. Белов

Микроконтроллер AVR в радиолюбительской практике

Содержание

Уважаемые читатели

Глава 1. Микроконтроллер ATiny2313/V фирмы ATMEL

1.1. Основные характеристики и возможности

Основные характеристики
Блок-схема микроконтроллера
Особенности микросхемы ATtiny2313
Описание выводов

1.2. AVR — центральное ядро процессора

Введение
Краткая характеристика архитектуры
АЛУ — арифметико-логическое устройство
Регистр статуса
Файл регистров общего назначения
X-регистр, Y-регистр и Z-регистр
Указатель стека
Память ATtiny2313
Системная перепрограммируемая Flash-память программ
Память данных SRAM
Память данных EEPROM
Процесс чтения/записи EEPROM
Регистр адреса EEPROM — EEAR
Регистр данных EEPROM — EEDR
Регистр управления EEPROM — EECR
Атомарное программирование байта
Раздельное программирование байта
Стирание
Запись
Предотвращение ошибок при работе с EEPROM
Регистры ввода—вывода
Регистры ввода—вывода общего назначения

1.3. Тактовый генератор

Система синхронизации и варианты ее конфигурирования
Источники тактового сигнала
Источник сигнала по умолчанию
Кварцевый резонатор
Встроенный перестраиваемый RC-генератор
Регистр калибровки генератора — OSCCAL
Внешний тактовый сигнал
Внутренний генератор на 128 кГц
Регистр предварительного делителя частоты — CLKPR
Управления питанием и режимы сна
Регистр управления микроконтроллером — MCUCR
Режим Idle
Режим Power-down
Режим Standby
Советы по уменьшению потребляемой мощности

1.4. Система управления и сброса

Начальный сброс микроконтроллера AVR
Источники сигнала сброса
Сброс при включении питания
Внешний сброс
Сброс при снижении напряжения питания
Сброс от сторожевого таймера
Регистр статуса системы сброса — MCUSR

1.5. Сторожевой (охранный) таймер

Особенности
Блок-схема
Режимы работы
Регистр управления сторожевым таймером — WDTCSR (WDTCR)

1.6. Прерывания

1.7. Порты ввода—вывода

Введение
Использование портов для цифрового ввода—вывода
Конфигурация выводов
Переключение значения разряда порта
Переключение между выводом и вводом
Чтение значения на выводе порта
Разрешение цифрового ввода и режимы низкого потребления (режимы сна)
Дополнительные функции портов
Регистр управления микроконтроллером — MCUCR
Альтернативные функции порта A
Альтернативные функции порта B
Детальное описание альтернативных функций каждого из выводов
Альтернативные функции порта D
Подробное описание альтернативных функций
Описание управляющих регистров портов ввода—вывода

1.8. Внешние прерывания

Назначение и режимы работы
Регистр управления микроконтроллером — MCUCR
Главный регистр маски прерываний — GIMSK
Регистр флагов внешних прерываний — EIFR
Регистр маски прерываний по изменению на любом из контактов — PCMSK

1.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

1.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
Регистр флагов таймера/счетчика '31 — TIFR

1.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

1.12. Универсальный последовательный интерфейс — USI

Назначение u1080 и особенности
Краткое описание
Описание принципа работы в трехпроводном режиме
Пример операции SPI для ведущего устройства
Пример операции SPI для ведомого устройства
Принцип действия в двухпроводном режиме
Схема обнаружения стартового условия
Альтернативное использование USI
Полудуплексная асинхронная передача данных
Регистр данных USI — USIDR
Регистр состояния USI — USISR
Регистр управления USI — USICR

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

Назначение и особенности
Регистр статуса и управления аналогового компаратора — ACSR
Регистр отключения цифрового ввода — DIDR

1.14. Встроенная система отладки программ debugWIRE

Основные особенности встроенной системы отладки
Назначение
Физический интерфейс
Точки останова программы
Ограничения режима debugWIRE
Специальный регистр ввода—вывода предназначенный для debugWIRE
Регистр данных debugWire — DWDR
Автоматическое перепрограммирование памяти программ
Стирание страницы
Загрузка страницы (заполнение данными временного буфера)
Запись страницы
Адресация памяти программ при автоматическом перепрограммировании
Регистр статуса и управления загрузкой программной памяти — SPMCSR
Запись в EEPROM и работа с регистром SPMCSR
Чтение состояния fuse-переключателей и битов блокировки программным путем
Предотвращение ошибок при программировании Flash-памяти
Время программирования Flash-памяти при использовании команды SPM

1.15. Программирование памяти

Биты защиты памяти данных и программ
Fuse-переключатели
Фиксирование значений fuse-переключателей
Байты идентификации
Байт калибровки
Размер страницы

Глава 2. Написание программ для микроконтроллеров AVR

2.1. Музыкальная шкатулка

Постановка задачи
Схема
Алгоритм
Кодируем мелодии
Алгоритм работы музыкальной шкатулки
Программа на Ассемблере
Описание программы (листинг 2.17)
Процедура вычисления адреса
Текст программы «шаг за шагом»
Особенности программы
Подрограмма формирования задержки
Программа на языке СИ
Описание программы (листинг 2.18)

2.2. Кодовый замок

Постановка задачи
Алгоритм
Схема
Программа на Ассемблере
Описание программы (листинг 2.19)
Процедура записи ключевой комбинации в EEPROM
Процедура проверки кода
Процедура открывания замка
Программа на языке СИ
Описание программы (листинг 2.20)

2.3. Кодовый замок с музыкальным звонком

Постановка задачи
Алгорит
Схема
Программа на Ассемблере
Программа на языке СИ

ПРИЛОЖЕНИЕ

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

 

 

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