Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Микроконтроллер К1816 ВЕ51 31(INTEL 8051).doc
Скачиваний:
5
Добавлен:
01.07.2025
Размер:
2 Мб
Скачать
☆

Последовательный порт

Последовательный обмен используется при передаче информации на большие расстояния, с целью экономии оборудования. В последнее время он используется для внутриплатного и внутрикрейтового обмен с той же целью. Передача через последовательный порт может быть реализована в режимах синхронного или асинхронного обмена (отличается от синхронного и асинхронного способов передачи информации). При асинхронном режиме формат передаваемого сообщения имеет вид:

Cтартовый бит

символ

бит паритета

стоповые биты

Обычно длина символов, бит паритета и стоповые биты задаются программно.

Достоинство такого обмена - повышеная достоверность передаваемой информации.

Недостатки:

  1. пониженное быстродействие, так как на каждый передаваемый символ требуется 3 или 4 бита сопровождения;

  2. информация передается по байтам.

При асинхронном обмене требуется меньшее количество линий между приемником и передатчиком, так как синхронизация обеспечивается заданием одинаковой частоты генераторов ГТИ на приемном и передающем конце линии связи.

При синхронном обмене информация передается посимвольно, с необязательным битом паритета. В некоторых случаях начало сообщения, его конец и адрес приемника кодируются специальными символами (символами синхронизации). Скорость синхронного обмена возрастает в 5-10 раз, по сравнению с асинхронным. Однако требуется дополнительная линия, к которой подключен ГТИ(генератор тактовых импульсов), общий для приемника и передатчика.

Последовательный порт ВЕ51 осуществляет прием/передачу информации в последовательном коде, младшими битами вперед в дуплексном режиме (одновременный прием и передача информации) или полудуплексном режимах.

В состав последовательного канала входят принимающие и передающие сдвиговые регистры , специальный программно-доступный буфер SBUF, регистр управления SCON и логика управления каналом.

Запись байта в передатчик осуществляется автоматически, после того, как информация записана в SBUF. Чтение иформации выполняется из этого же регистра после установки флага готовности последовательного канала RI.

Последовательный канал может работать в следующих четырех режимах:

Режим '0' - cинхронный обмен в полудуплексном режиме с частотой OSC/12. Формат посылки – 8 бит. Данные принимаются и передаются через вход RxD , а частота синхронизации формируется на выходе TxD .

В этом режиме порт работает как восьмиразрядный сдвиговый регистр.

Режим '1' - асинхронный обмен, десятибитовый кадр, состоящий из стартового (ноль), стопового (единица )битов и 8-разрядного символа. Cкорость приема и передачи определяется частотой переполнения счетчика С/ T1 . В зависимости от состояния бита SMOD регистра PCON частота, поступающая на вход схемы синхронизации последовательного канала с выхода С/Т1, может изменяться в два раза. Схема синхронизации делит эту частоту на 16 и использует её для приема/передачи последовательного кода.

При использовании этого режима следует запретить прерывание от С/Т1.

При приеме стоп-бит заносится в бит RB8 регистра SCON.

Режим '2' - асинхронный 11-битовый кадр. По сравнению с режимом 1 добавлен программно устанавливаемый девятый бит. Передаваемый девятый бит данных принимает значение бита TB8 из регистра управления SCON. Этот бит может быть программно установлен в 0 или 1.В частности, ТВ8 можно присвоить значение бита паритета Р из регистра PSW для повышения достоверности передаваемой информации. При приеме девятый бит данных поступает в бит RB8 регистра SCON. Cкорость передачи фиксирована и определяется значением бита SMOD регистра PCON: OSC/32 или OSC/64.

Режим '3' -аналогичен режиму '2', но скорость обмена задается счетчиком С/T1 как в режиме 1.

Основная настройка последовательного канала на требуемый режим работы производится в регистре SCON, в котором задается режим работы, значение 11-го бита, разрешение контроля 11-го бита (в режимах '2' и '3'), флаги готовности приемника и передатчика.

7

6

5

4

3

2

1

0

SCON

SM0

SM1

SM2

REN

TB8

RB8

TI

RI

Рис.3.10.Формат регистра управления/статуса универсального асинхронного приемопередатчика (УАПП) SCON : SMO,SM1 - биты управления режимом, устанавливаются/сбрасываются программно : SMO, SM1 = 00 - режим '0', SMO,SM1 = 01 - режим '1', SM0,SM1 = 10 - режим '2', SM0,SM1 = 11 - режим '3',SM2 - запрещение приема кадров с нулевым восьмым битом, в режиме '0' должен быть сброшен, устанавливается программно; RЕN - разрешения приема, устанавливается/сбрасывается программно; TB8 - восьмой бит передатчика в режимах '2' и '3'; RB8 - восьмой бит приемника в режимах '2' и '3', в режиме '1', если SM2=0, то отображает стоповый бит, в режиме '0' не используется; TI - флаг готовности передатчика, устанавливается аппаратно по окончании передачи байта, сбрасывается программно; RI - флаг готовности приемника, принцип работы аналогичен TI.

Скорость последовательного обмена в зависимости от режима работы определяется либо частотой работы ОМК ( режимы 0 и 2) либо частотой переполнения C/T1 (режимы 1 и 3).

В режимах 1-3 изменение частоты передачи информации в 2 раза обеспечивается битом SMOD регистра PCON. В режиме '2' скорость задается частотой В режимах '1' и '3' - частотой: , частота переполнения С/T1.

7

6

5

4

3

2

1

0

PCON

SMOD

X

X

X

GF1

GF0

PD

IDL

Рис.3.11. Формат регистра управления мощностью PCON : SMOD - бит управления скоростью передачи УАПП, при SMOD = 1 скорость передачи вдвое больше, чем при SMOD = 0; GF1,GF2 - флаги общего назначения, устанавливаемые пользователем; PD - установка бита переводит ОМК в режим холостого хода.

Hаиболее удобен для использования в последовательном канале режим '2' счетчика/таймера С/Т1, если с его помощью можно обеспечить требуемую скорость передачи, так как в этом режиме не требуется перезагрузка коэффициента пересчета.

Для использования C/T1 в качестве источника скорости обмена необходимо:

запретить прерывание от C/T1,

запрограммировать работу C/T1,

запустить C/T1.

Пример: Организовать работу передатчика в режиме '1'; передаваемые данные находятся в РПД с адреса аddr. Число передаваемых данные n . Вывести информацию в программном режиме.(SCON):=01x...xb, (TMOD):=1xh, (PCON):=80h

CLR IE.7; Запрет прерываний, возможно CLR IE.4;CLR ES

MOV SCON, #01x...xb; Режимное слово передатчика

MOV TMOD, #1xh; Режимное слово таймера (режим 1,таймер, прогр.запуск)

MOV PCON, #80h;Установка бита SMOD

MOV R0, #addr; Параметры массива

MOV R2, #n;

M2: MOV TH1, #C1; Коэффициент деления СТ1

MOV TL1, #C2;

SETB TCON.6; Пуск таймера

MOV SBUF, @R0; Передача элемента массива

M1: JNB SCON.1, M1; Анализ флага готовности передатчика

CLR SCON.1; Сброс флага готовности передатчика

DEC R0; Переход к следующему элементу массива

DJNZ R2,M2;

Проиллюстрируем расчет коэффициента деления для скорости обмена 110 бит/сек при частоте кварца 12 МГц : с учетом условий задачи ( SMOD=1) частота переполнения C/T1 равна 110*16=1760; на вход таймера поступает частота OSC/12 (1 МГц); коэффициент деления – 1000000/1760=568; так как счетчик суммирующий, то константа (65535-568+1)=64968 (0fdc8h). Таким образом, С1=FDh, C2=C8h.

Возможен вариант решения этой задачи, при котором перезапуск C/T1

выполняется по прерыванию от флага переполнения TF1. Тогда прерывание от C/T1 должно быть разрешено.

Аналогично рассчитывается коэффициент деления и для режима 2, но следует учитывать особенности этого режима ( режим перезапускаемый, регистр счетчика восьмиразрядный).

При организации последовательного канала необходимо учитывать, что выход передатчика может работать на длинную линию, поэтому его надо буферизировать. При реализации протоколов стандартных интерфейсов RS-232, RS-485 на выходе устанавливается специальная БИС, обеспечивающая соответствующее формирование сигнала.RS-232(-12B-'1', +12B-'0'), RS-485(5B). В качестве формирователей RS-232 можно использовать передатчики - К559ИП19, К170АП2, приемники - К559ИП20, К170УП2. Недостатком передатчиков этих схем является необходимость использования источников напряжения +/-12В. Лучшими характеристиками обладают формирователи MAX235, MAX221,242, которые питаются только от напряжения +5В и содержат в одном корпусе как приемники, так и передатчики.