|
В начало
Лекция.
Периферийные средства МК-51 Параллельные каналы связи. Подсистема ВВ микроконтроллера МК -
51 размещается непосредственно на кристалле. Для ВВ данных и управления
процессом их передачи в состав МК введен ряд портов данных и регистров
управления/состояния, совокупность которых образует набор специальных регистров.
Физическая система ВВ микроконтроллера МК - 51 состоит из
четырех двунаправленных 8-разрядных портов Р0 - РЗ.
Все порты ВВ отображены в пространстве внутренней памяти DSEG по адресам 80Н, 90Н, 0А0Н, 0В0Н и
ничем не отличаются от обычных ячеек памяти. Отказ от изолированного пространства
ВВ, используемого в архитектуре ВЕ48, позволил увеличить вычислительную
эффективность МС интенсивного ВВ, привел к более регулярной структуре набора
команд ВЕ51. Любая команда с операндом из внутренней памяти может быть
применена к содержимому портов Р0 - РЗ. Кроме
того, порты Р0 - РЗ совмещены с битовым пространством BSEG, что обеспечивает доступ к отдельным
его разрядам независимо от других. Порты Р0 - РЗ занимают
адреса BSEG: 80Н - 87Н, 90Н -97Н, 0А0Н -0А7Н и 0В0Н - 0В7Н соответственно. Расширение
пространства ВВ может быть выполнено за счет области XSEG или другими средствами с помощью
самих портов Р0 - РЗ и SBUF. При
обращении к внешней памяти программ или данных порты Р0,
Р2 выполняют функции системных шин AD и АВ соответственно. Младший байт
адреса и данные передаются через Р0 в мультиплексном
режиме: сначала выводится адрес, а затем для передачи данных используется порт.
Старший байт адреса формируется на Р2. Линии порта РЗ
реализуют управление циклами обмена и другие специальные функции аппаратного
уровня Таблица 1 Линии порта
РЗ
Последовательный канал связи. В состав МК-51 входит дуплексный
канал последовательной связи с буферизацией, который может быть запрограммирован
для работы в одном из четырех режимов: режим
0-синхронный последовательный ВВ со скоростью OSC/12; режим
1-асинхронный с 10-битовым кадром и переменной скоростью передачи; режим 2
- асинхронный с 11-битовым кадром и фиксированной скоростью передачи OSC/32 или OSC/64; режим
3-асинхронный с 11-битовым кадром и переменной скоростью передачи. Входные
и выходные данные хранятся в буферном регистре SBUF с адресом 99Н. Управление работой
приемопередатчиков осуществляется через слово управления и состояния SCON, расположенное в регистре по адресу
98Н: SCON.0 RI Флаг
прерывания приемника SCON.l TI Флаг
прерывания передатчика SCON.2 RB8 Восьмой
бит приемника в режимах 2 и 3. В режиме
1, если SM2 = 0, то отображает стоп-бит. В режиме 0 не используется. SCON.3 ТВ8 Восьмой бит передатчика в режимах 2 и 3 SCON 4 REN Разрешение
приема SCON.5 SM2 Запрещение
приема кадров с нулевым восьмым битом
данных. В режиме 0 должен быть сброшен SCON.6 SMI Младший
разряд для кодирования номера режима SCON.7 SM0 Старший
разряд для кодирования номера режима:
Таймеры/счетчики. К стандартным средствам поддержки
режима реального времени относятся таймеры/счетчики и подсистема прерываний. Если
таймеры необходимы для организации системных меток реального времени и
отработки временных интервалов, то подсистема прерываний обеспечивает
своевременную реакцию МК на асинхронные события, происходящие как внутри МС,
так и вне ее. В состав
МК - 51 входят два 16-разрядных таймера/счетчика СТ0,
СТ1. Еще один (СТ2) добавлен в архитектуре 8052.
Состояние таймеров/счетчиков отражается программно-доступными регистровыми
парами (TH0, TL0), (TH1, ТЫ) и (ТН2, TL2) соответственно, размещенными в
пространстве DSEG по адресам (8СН, 8АН), (8DH, 8ВН) и (0CDH, 0ССН). Таймеры/счетчики
СТ0 - СТ2 могут быть запрограммированы для работы либо
в качестве таймера, либо в качестве счетчика. Функция таймера состоит в счете
числа машинных циклов, следующих с частотой OSC/12. Функция счетчика заключается в
отслеживании числа переходов из 1 в 0 на соответствующих входах Т0, Tl, T2. Управление
режимом работы СТ0, СТ1 осуществляет регистр TMOD (Timer/Counter Mode), который расположен по адресу 89Н.
Регистр разбит на два 4-разрядных подрегистра T0MOD и T1MOD, которые ответственны за управление
СТО и СТ1 соответственно: Таблица 3
Система
прерываний. Архитектура МК- 51 поддерживает двухуровневую приоритетную систему прерываний с пятью (или
шестью в случае 8052) источниками запросов на обслуживание, имеющими
фиксированные векторы прерываний. Программное управление системой
осуществляется через два 8-разрядных регистра: IP (Interrupt Priopity) - регистр приоритета прерываний и IE (Interrupt Enable) - регистр разрешения прерываний.
Для
приема внешних запросов на прерывание служат линии INT0 и INT1, которые могут быть
запрограммированы на срабатывание как по переходу из одного состояния в другое,
так и по уровню входного сигнала независимо друг от друга. Управление типом
входа осуществляется флажками IT0/TCON.0 (Interrupt Туре 0) и IT1/TCON.2. При ITi = l устанавливается режим срабатывания
по переходу из 1 в 0, в противном случае - по напряжению низкого уровня на
входе INTi, i = 0-1. Запросы на прерывание от
внешних источников INT0 или INT1 устанавливают флажки IE0/TCON.1 (Interrupt Edge 0) и IE1/TCON.3. В случае работы по переходу эти
флажки сбрасываются автоматически при входе в соответствующую процедуру
обслуживания прерывания. В случае режима работы по уровню флажки отслеживают
состояние сигналов на входных линиях INT0 и INT1, повторяя все их изменения. Источниками
внутренних запросов могут быть: флажок TF0/TCON.5 (Timer Flag 0) - признак переполнения СТ0, с флажок TF1/TCON.7 - признак переполнения СП, а также флажок TI/SCON.1 (Transmit Interrupt) или флажок RI/SCON.O (Recive Interrupt). |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||