- •Лабораторная работа № 3 изучение последовательного порта микроконтроллера 8xc196кс
- •1. Описание функциональных возможностей последовательного порта микроконтроллера 8xc196kc
- •1.1. Общие сведения
- •1.2. Краткий обзор режима 0
- •1.3. Асинхронные режимы
- •1.3.1. Краткий обзор Режима 1
- •1.3.2. Краткий обзор Режима 2
- •1.5. Программирование последовательного порта
- •1.5.1. Регистр скорости передачи
- •1.3.3. Краткий обзор Режима 3
- •1.4. Многопроцессорная связь
- •1.5.2. Регистр буфера приемника последовательного порта
- •1.5.3. Регистр буфера передатчика последовательного порта
- •1.5.4. Регистр управления последовательным портом.
- •1.5.5. Регистр статуса последовательного порта.
- •1.6. Прерывания последовательного порта
- •1.6.1 Описание работы контроллера прерывания
- •1.6.2. Приоритеты прерывания
- •1.6.3. Изменение приоритетов прерывания
- •1.6.4. Программы обработки прерывания
- •Фрагмент программы
- •2. Порядок выполнения работы
- •3. Содержание отчета
1.3. Асинхронные режимы
Режимы 1, 2, и 3 - полно-дуплексные режимы последовательного приема / передачи, то есть передача и приём в этих режимах может происходить одновременно.
- Режим 1 - стандартный, асинхронный 8-битный режим, используемый для обычной последовательной связи.
- Режимы 2 и 3 - асинхронные 9-битные режимы, обычно используемые для межпроцессорной связи (см " Многопроцес-сорная связь ").
В Режиме 2, последовательный порт генерирует пре- рывание только если установлен девятый информационный разряд.
В Режиме 3, последовательный порт всегда генерирует прерывание после завершения передачи или приема данных.
Когда последовательный порт сконфигурирован в Режим 1, 2, или 3, запись в SBUF (TX) заставляет последовательный порт начать передачу данных. Новые данные, помещенные в SBUF (TX) не передаются, пока не передан стоповый бит предыдущих данных. Падающий фронт на контакте RXD заставляет последовательный порт начать приём данных, если прием разрешен. Отключение RXD останавливает процесс приема и запрещает дальнейшие приемы.
1.3.1. Краткий обзор Режима 1
Режим 1 - стандартный асинхронный режим связи. Кадр данных, используемый в этом режиме ( рис.3.3 а) состоит из десяти битов: старт-бит (=0) , восемь информационных разрядов (младший- первый), и стоповый бит (=1).
Если контроль по четности разрешен, вместо восьмого информационного разряда передаётся бит проверки на четность (бит паритета), и при приеме проверяется контроль по четности.
Синхронизация передатчика и приёмника сдвинуты друг относительно друга. Синхронизация передатчика инициализируется при инициализации генератора скоростей. Синхронизация приёмника инициализируется при приёме старт-бита.
Во время приема, флажок RI устанавливается только в конце приёма стопового бита. Сигнал прерывания приёмника генерируется при установке флажка RI . Во время передачи, флажок TI устанавливается в начале передачи стопового бита. Сигнал прерывания передатчика генерируется при установке флажка TI.
а) б)
Рис.3.3 Кадр последовательного порта
а) в Режиме 1,
б) в Режимах 2 и 3.
1.3.2. Краткий обзор Режима 2
Режим 2 - асинхронный режим с распознаванием 9-ого бита . Этот режим обычно используется с Режимом 3 для многопроцессорной связи. На рис.3.3 б, приведён кадр данных, используемый в этом режиме. Он состоит из старт-бита (=0), девяти информационных разрядов (младший бит-первый), и стопового бита (=1).
При передаче, установка или сброс бита TB8 в регистре SP_CON, перед записью в SBUF (TX), определяет девятый бит передачи. После каждой передачи, аппаратные средства очищают бит TB8, так что перед каждой записью в SBUF(TX), если требуется, он должен быть установлен .
Во время приема, флажок RI устанавливается и генерируется прерывание, только если бит TB8 установлен. Это обеспечивает простой способ осуществить выборочный прием на канале связи (См. " Многопроцессорная связь "). Контроль по четности в этом режиме не допустим.
