- •Микроконтроллеры
- •Базовая информация о микроконтроллерах
- •Сущность и назначение микроконтроллера. Семейства микроконтроллеров
- •Состав микроконтроллера
- •Назначение микроконтроллера
- •Cемейства микроконтроллеров
- •Отправная точка. Микроконтроллерi8051
- •Основные характеристики микроконтроллераi8051
- •Назначение выводовi8051
- •Структурная схемаi8051
- •Микроконтроллеры семействаavrкомпанииatmel
- •Общая характеристика архитектуры, системы команд и ассемблераAvr
- •Состав семейства и основные характеристики микроконтроллеровAvr
- •Структура ассемблерного кодаAvr
- •Группы команд микроконтроллеров avr
- •Директивы ассемблераAvr
- •Список директив ассемблераAvr
- •Директива byte
- •Директива cseg
- •Директива db
- •Директива def
- •Директива device
- •Директива dseg
- •Директива dw
- •Директивы macro иEndmacro
- •Директива equ
- •Директива set
- •Микроконтроллер atmega8535
- •Характеристики, назначение выводов и структура микроконтроллера aTmega8535
- •Характеристики микроконтроллера aTmega8535
- •Назначение выводов микроконтроллера aTmega8535
- •Структура микроконтроллера aTmega8535
- •Сброс микроконтроллера aTmega8535. Режимы пониженного энергопотребления. Сигналы запроса внешних прерываний. Регистры управления
- •Сброс микроконтроллера aTmega8535
- •Регистр mcucsr (mcu Control and Status Register)
- •Регистр mcucr (mcu Control Register)
- •Режимы пониженного энергопотребления
- •Форма сигналов запроса внешних прерываний
- •Регистры общего назначения, регистр состояния и указатель стека микроконтроллера aTmega8535
- •Регистры общего назначения
- •Регистр состояния (sreg)
- •Указатель стека
- •Ввод-вывод
- •Регистры и команды ввода-вывода
- •Порты ввода-вывода
- •Прерывания
- •Источники и таблица векторов прерываний
- •Регистр gicr (General Interrupt Control Register)
- •Внешние прерывания
- •Регистр gifr (General Interrupt Flag Register)
- •Таймеры микроконтроллера aTmega8535
- •Общая информация о таймерах микроконтроллера aTmega8535
- •Множество таймеров aTmega8535
- •Регистр timsk (Timer/Counter Interrupt Mask Register)
- •Регистр tifr (Timer/Counter Interrupt Flag Register)
- •Примеры программ работы с таймером
- •Таймер t0
- •Назначение и свойства таймера t0
- •Структура таймера t0
- •Регистры таймера t0
- •Регистр tccr0 (Timer/Counter Control Register)
- •Устройство сравнения таймера t0
- •Режимы работы таймера t0
- •Режим Normal
- •Режим ctc
- •Режим быстрой шим (fastPwMmode)
- •Режим шим с корректировкой фазы (Phase Correct pwm Mode)
- •Таймер t1
- •Назначение и свойства таймера t1
- •Структура таймера t1
- •Регистры таймера t1
- •Регистр tccr1a (Timer/Counter1 Control Register a)
- •Регистр tccr1b (Timer/Counter1 Control Register b)
- •Задание режима генерации сигнала битами wgm13:0
- •Устройство захвата (Input Capture Unit)
- •Режимы работы таймера t1
- •Список режимов работы таймера t1
- •Режим быстрой шим (fast pwm mode) таймера t1
- •Режим шим с корректировкой фазы (Phase Correct pwm Mode) таймера t1
- •Режим шим с корректировкой фазы и частоты (Phase and Frequency Correct pwm Mode) таймера t1
- •Таймер t2
- •Назначение и свойства таймера t2
- •Структура таймера t2
- •Регистры таймера t2
- •Регистр tccr2 (Timer/Counter Control Register)
- •Устройство сравнения таймера t2
- •Режимы работы таймера t2
- •Режим Normal
- •Режим ctc
- •Режим быстрой шим (fast pwm mode)
- •Режим шим с корректировкой фазы (Phase Correct pwm Mode)
- •Асинхронный режим работы таймера t2. Регистр assr (Asynchronous Status Register)
Назначение выводовi8051
Рис. Расположение выводов i8051
Назначение выводов i8051:
Vcc — напряжение питания;
Vss — земля;
P0 — Port 0, 8-битный двунаправленный порт ввода-вывода с открытым стоком, при доступе к внешней памяти является мультиплексированной шиной младшего байта адреса и данных, в режиме программирования ПЗУ принимает байты кода, а в режиме верификации ПЗУ выдает их;
P1 — Port 1, 8-битный двунаправленный порт ввода-вывода с внутренними нагрузочными резисторами, в режиме программирования и верификации ПЗУ принимает младший байт адреса;
P2 — Port 2, 8-битный двунаправленный порт ввода-вывода с внутренними нагрузочными резисторами, при доступе к внешней памяти является старшей половиной шины адреса при 16-разрядной адресации или выдает содержимое специального функционального регистра P2 при 8-разрядной адресации;
P3 — Port 3, 8-битный двунаправленный порт ввода-вывода с внутренними нагрузочными резисторами, также является источником или приемником множества сигналов:
P3.0 — RxD, принимаемые данные;
P3.1 — TxD, передаваемые данные;
P3.2 — INT0#, внешнее прерывание 0;
P3.3 — INT1#, внешнее прерывание 1;
P3.4 — T0, внешний вход таймера 0;
P3.5 — T1, внешний вход таймера 1;
P3.6 — WR#, сигнал записи внешней памяти данных;
P3.7 — RD#, сигнал чтения внешней памяти данных;
RESET — сброс, должен удерживаться в течение двух машинных циклов;
ALE/PROG# — выходной сигнал Address Latch Enable (разрешение защелкивания адреса) или входной сигнал программирования ПЗУ;
PSEN# — Program Store Enable, сигнал чтения внешней памяти программ;
EA#/Vpp — External Address Enable, сигнал разрешения внешней памяти программ, должен быть подключен к Vss для приема команд из внешней памяти в диапазоне адресов 0000h-FFFFh или к Vcc для исполнения внутреннего кода, однако если установлен бит безопасности ПЗУ, то внешний код не может быть исполнен, кроме того данный вывод служит для подачи напряжения 21 В (Vpp) при программировании ПЗУ;
XTAL1, XTAL2 — выводы внутреннего генератора тактовых сигналов.
Структурная схемаi8051
Рис. Структурная схема i8051
Микроконтроллеры семействаavrкомпанииatmel
Общая характеристика архитектуры, системы команд и ассемблераAvr
Состав семейства и основные характеристики микроконтроллеровAvr
В составе семейства AVR выделяются три подсемейства:
Tiny AVR — недорогие миниатюрные микроконтроллеры.
Classic AVR — основная линия микроконтроллеров.
Mega AVR — линия микроконтроллеров для сложных приложений, требующих большого объема памяти.
Архитектура микроконтроллеров AVR может быть классифицирована как Гарвардская RISC-архитектура. Они имеют раздельную память команд и данных. Система команд у разных моделей микроконтроллеров AVR включает от 89 до 130 команд, которые в большинстве своем выполняются за один такт, благодаря наличию простого одноуровневого конвейера, включающего всего две стадии: выборки и исполнения.
Основные характеристики микроконтроллеров AVR:
разрядность — 8;
тактовая частота — 1-20 МГц;
Flash-память (Flash-ROM) программ, перепрограммируемая до 10000 раз;
электрически перепрограммируемая постоянная память данных (EEPROM), перепрограммируемая до 100000 раз;
С-ориентированная система команд;
программная совместимость снизу вверх, от младших моделей к старшим;
ортогональность (отсутствие специализации регистров данных) — все 32 регистра микроконтроллера могут участвовать во всех командах;
низкое энергопотребление.