Изложены принципы функционирования, особенности архитектуры и приемы программирования микроконтроллеров Atmel AVR. Приведены готовые рецепты для программирования основных функций современной микроэлектронной аппаратуры: от реакции на нажатие кнопки или построения динамической индикации до сложных протоколов записи данных во внешнюю память или особенностей подключения часов реального времени. Особое внимание уделяется обмену данными микроэлектронных устройств с персональным компьютером, приводятся примеры программ. В книге учтены особенности современных моделей AVR и сопутствующих микросхем последних лет выпуска. Приложения содержат основные параметры микроконтроллеров AVR, перечень команд и тексты программ для них, а также список используемых терминов и аббревиатур. Для учащихся, инженерно-технических работников и радиолюбителей.
Название: Практическое программирование микроконтроллеров Atmel AVR на языке ассемблера. — 2-е изд.
Автор: Ревич Ю. В.
Издательство: БХВ-Петербург
Год: 2011
Страниц: 352
Формат: DJVU
Размер: 12,4 МБ
ISBN: 978-5-9775-0657-1
Качество: Отличное
Серия или Выпуск: Электроника
Оглавление
Микроконтроллеры, их возникновение и применение
Предыстория микроконтроллеров
Электроника в греческом стиле
Почему AVR?
Что дальше?
ЧАСТЬ I. ОБЩИЕ ПРИНЦИПЫ УСТРОЙСТВА И ФУНКЦИОНИРОВАНИЯ ATMEL AVR
Глава 1. Обзор микроконтроллеров Atmel AVR
Семейства AVR
Особенности практического использования МК AVR
О потреблении
Некоторые особенности применения AVR в схемах
Глава 2. Общее устройство, организация памяти, тактирование, сброс
Память программ
Память данных (ОЗУ, SRAM)
Энергонезависимая память данных (EEPROM)
Способы тактирования
Сброс
Глава 3. Знакомство с периферийными устройствами
Порты ввода-вывода
Таймеры-счетчики
Аналогово-цифровой преобразователь
Последовательные порты
UART
Интерфейс SPI
Интерфейс TWI (I2С)
Универсальный последовательный интерфейс USI
Глава 4. Прерывания и режимы энергосбережения
Прерывания
Разновидности прерываний
Режимы энергосбережения
ЧАСТЬ II. ПРОГРАММИРОВАНИЕ МИКРОКОНТРОЛЛЕРОВ ATMEL AVR
Глава 5. Общие принципы программирования МК семейства AVR
Ассемблер или С?
Способы и средства программирования AVR
Редактор кода
Об AVR Studio
Обустройство ассемблера
Программаторы
О hex-файлах
Команды, инструкции и нотация AVR-ассемблера
Числа и выражения
Директивы и функции
Общая структура AVR-программы
Обработка прерываний
RESET
Простейшая программа
Задержка
Программа счетчика
Использование прерываний
Задержка по таймеру
Программа счетчика с использованием прерываний98
О конфигурационных битах
Глава 6. Система команд AVR
Команды передачи управления и регистр SREG
Команды проверки-пропуска
Команды логических операций
Команды сдвига и операции с битами
Команды арифметических операций
Команды пересылки данных
Команды управления системой
Выполнение типовых процедур на ассемблере
О стеке, локальных и глобальных переменных
Глава 7. Арифметические операции
Стандартные арифметические операции
Умножение многоразрядных чисел
Деление многоразрядных чисел
Операции с дробными числами
Генератор случайных чисел
Операции с числами в формате BCD
Отрицательные числа в МК
Глава 8. Программирование таймеров
8- и 16-разрядные таймеры
Формирование заданного значения частоты
Отсчет времени
Точная коррекция времени
Частотомер и периодомер
Частотомер
Периодомер
Управление динамической индикацией
LED-индикаторы и их подключение
Программирование динамической индикации
Таймеры в режиме PWM
Глава 9. Использование EEPROM
Еще раз о сохранности данных в EEPROM
Запись и чтение EEPROM
Хранение констант в EEPROM
Глава 10. Аналоговый компаратор и АЦП
Аналого-цифровые операции и их погрешности
Работа с аналоговым компаратором
Интегрирующий АЦП на компараторе
Принцип работы и расчетные формулы
Программа интегрирующего АЦП
Встроенный АЦП
Пример использования АЦП
Программа
Глава 11. Программирование SPI
Основные операции через SPI
Аппаратный вариант
Программный вариант
О разновидностях энергонезависимой памяти
Запись и чтение flash-памяти через SPI
Программа обмена с памятью 45DB01 IB по SPI
Запись и чтение flash-карт
Подключение карт ММС
Подача команд и инициализация ММС
Запись и чтение ММС
Глава 12. Интерфейс TWI (12С) и его практическое использование
Базовый протокол 12С..237
Программная эмуляция протокола 12С
Запись данных во внешнюю энергонезависимую память
Режимы обмена с памятью АТ24
Программа
Часы с интерфейсом I2С
Запись данных
Чтение данных
Глава 13. Программирование UART/USART
Инициализация UART
Передача и прием данных
Пример установки часов DS1307 с помощью UART
Приемы защиты от сбоев при коммуникации271
Проверка на четность
Как организовать корректный обмен
Дополнительные возможности USART
Реализация интерфейсов RS-232 и RS-485
Преобразователи уровня для RS-232
RS-485
Глава 14. Режимы энергосбережения и сторожевой таймер
Программирование режима энергосбережения
Пример прибора с батарейным питанием
Доработка программы
Использование сторожевого таймера
ПРИЛОЖЕНИЯ
Приложение 1. Основные параметры микроконтроллеров Atmel AVR
Приложение 2. Команды Atmel AVR
Арифметические и логические команды
Команды операций с битами
Команды сравнения
Команды передачи управления
Команды безусловного перехода и вызова подпрограмм
Команды проверки-пропуска и команды условного перехода
Команды переноса данных
Команды управления системой
Приложение 3. Тексты программ
Демонстрационная программа обмена данными с flash-памятью 45DB011В по интерфейсу SPI
Процедуры обмена по интерфейсу I2С
Приложение 4. Обмен данными с персональным компьютером
и отладка программ через UART
Работа с СОМ-портом в Delphi
Установка линии RTS в DOS и Windows
Программа СОМ2000
Отладка программ с помощью эмулятора терминала
Приложение 5. Словарь часто встречающихся аббревиатур и терминов
Литература
Предметный указатель
Скачать с depositfiles