ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 16.06.2025
Просмотров: 1040
Скачиваний: 1
RxD
D0 |
D1 |
D2 |
D3 |
D4 |
D5 |
D6 |
D7 |
TxD |
t |
38
Скорость передачи в этом режиме постоянна, и определяется частотой следования импульсов fosc /12
t
Первый режим УАПП (старт-стопный десятибитный).
В этом режиме вывод RxD используется для приема, а TxD для передачи 10-битных информационных сообщений вида:
TxD(RxD) |
Если по линиям информация |
||||||||||
биты передаваемого байта |
не передается, то |
она |
находится в |
||||||||
состоянии высокого |
логического |
||||||||||
0 D0 D1 |
D2 D3 D4 D5 D6 D7 1 |
уровня «1». |
|||||||||
t |
При появлении на линии TxD |
||||||||||
стартовый |
стоповый |
(RxD) |
нулевого |
уровня, |
он |
||||||
бит |
бит |
||||||||||
интерпретируется |
как |
стартовый |
|||||||||
бит, после которого начинается отсчет девяти передаваемых бит с заданной скоростью передачи. Следующее появление нулевого уровня интерпретируется как следующий стартовый бит и т.д.
Скорость передачи в этом режиме (частота следования бит) определяется частотой переполнения таймера Т1 во втором режиме.(при этом автоматически выхода TF таймера Т1 подключаются к УАПП)
Второй режим УАПП (старт-стопный 11-битный с фиксированной скоростью).
Работа аналогична предыдущему режиму, только информация сообщения имеет формат:
TxD(RxD) |
||||||||
биты передаваемого байта |
||||||||
0 D0 |
D1 |
D2 |
D3 |
D4 |
D5 |
D6 |
D7 |
КБ 1 |
t |
||||||||
стартовый |
контрльный |
стоповый |
|||
бит |
бит |
бит |
|||
Значение КБ устанавливается
пользователем программно.
Скорость передачи в данном режиме может приниматься только два
фиксированных значения: fosc / 64 и fosc / 32 .
Третий режим работы УАПП (старт-стопный 11-битный с переменной скоростью передачи).
Полностью совпадает с предыдущим режимом, но скорость передачи - переменная величина, определяемая частотой переполнения Т1 во втором режиме (автоперегружаемый генератор).
39
Управление режимом работы последнего интерфейса осуществляется с использованием РСФ SCON
7 |
0 |
|||||||
SM1, SM0–биты, определяющие |
SM1 |
SM0 |
SM2 |
REN |
TB8 |
RB8 |
TI |
RI |
номер режима УАПП (00-нулевой;…;11-третий). |
||||||||
SM2–бит запрещающий прием сообщений с нулевым значением бита
КБ.
REN–бит разрешения приема информации по последовательному интерфейсу (REN=0-вся информация не принимается).
TB8–бит, определяющий значение контрольного бита передаваемых сообщением.
RB8–бит, определяющий значение КБ в принятом сообщении.
TI–бит, определяющий, что передатчик пуст и готов к передаче последующих сообщений.
RI– бит, определяющий, что принят очередной байт по последовательному интерфейсу.
Замечание: сигналы TI и RI могут генерировать прерывания процессора (если они разрешены).
КБ, а также управляющий бит SM2 удобно использовать для организации многопроцессорных систем взаимодействующих по последовательному интерфейсу ,вида:
Ведущий ОМК управляет приемом и передачей данными с ведомых ОМК.
При этом ведущий передает команды ведомым информационными сообщениями с установленным КБ=1, а следовательно
они воспринимаются сразу всеми ведомыми. Обмен же данными осуществляется сообщениями с КБ=0, а следовательно эти данные воспринимаются только одним, выбранным командой, ведомым ОМК.
3.7. Задание скорости передачи по последовательному интерфейсу
Во втором режиме работы последовательного интерфейса (УАПП) скорость передачи информации рассчитывается следующим
образом: fсдв = 2SMOD fosc (Гц, Бод)64
SMOD – старший седьмой бит РСФ PCON (регистр управления потребляемой мощности).
В первом и третьем режимах работы УАПП (старт-стопные режимы)
скорость |
передачи |
определяется |
по |
||||||||
2 |
SMOD |
2 |
SMOD |
fosc |
[256 −TH1 |
]−1 |
|||||
формуле: fсдв = |
fOV |
= |
|||||||||
32 |
T1 |
32 12 |
|||||||||
где ТН1-начальное (автоперегружаемое) значение счетчика Т1, работающего в режиме автоперегружаемого генератора;
40 fOVT1 -частота переполнения таймера Т1 в режиме автоперегружаемого
генератора.
Замечание: согласно ГОСТ скорость передачи по последовательному интерфейсу должен выбираться из следующего ряда: fсдв –
…,1200,2400,4800,9600,…бит/сек.(Бот).
Пример: определить значение автоперегружаемого счетчика ТН1 и бита SMOD для обеспечения скорости передачи по последовательному интерфейсу fсдв =9600 бит/сек., если fosc=11МГц.
20 |
11 106 |
−1 |
|||||||||||
fсдв = |
[256 −253] |
= 9568 бит/сек. |
|||||||||||
32 |
12 |
||||||||||||
ТН1=25610=0FCH; SMOD=0 |
|||||||||||||
Составим |
программу задания режима работы последовательного |
||||||||||||
интерфейса (инициализация УАПП). |
|||||||||||||
;Модуль инициализации УАПП |
|||||||||||||
CLR |
TR1 |
; TCON TR1=0-остановили Т1 |
|||||||||||
MOV |
TH1, #0FCH |
; |
TH1←25310 |
||||||||||
ANL |
PCON, #7FH |
; |
SMOD=0 |
||||||||||
MOV |
SCON, |
#11011100B |
; |
задали третий режим работы |
|||||||||
УАПП(SCON←0DCH) |
|||||||||||||
MOV |
TMOD, #00100000 |
; |
T1-в режим автоперегружаемого |
||||||||||
генератора |
|||||||||||||
SETB |
TR1 |
; TR1=1-запуск Т1 |
|||||||||||
; процедуры приема и передачи байта по УАПП |
|||||||||||||
CIN: |
JNB |
RI, CIN |
; ожидание приема байта по последовательному |
||||||||||
интерфейсу RI=1 |
|||||||||||||
MOV |
A, SBUF ; |
считывание принятого байта в аккумулятор |
|||||||||||
CLR |
RI ; |
SCON.RI=0 |
|||||||||||
COUNT: |
JNB |
TI, COUT |
; |
ожидание готовности передатчика |
|||||||||
последовательного интерфейса TI=1 |
|||||||||||||
MOV |
SBUF, |
A |
; |
загрузка передаваемой информации из |
|||||||||
аккумулятора в последовательный интерфейс SBUF←A |
|||||||||||||
CLR |
TI ; |
обнуление TI, TI=0 |
|||||||||||
3.8. Система прерываний ОМК ВЕ51
Контроллер позволяет обслуживать прерывания от пяти возможных источников:
1)от таймеров Т1 и Т0 при возникновении их переполнения TF1 и TF0 (два уровня прерывания).
2)Прерывания по внешним сигналам INT1 (Р3.3)поступающим на этот вход и INT0 (Р3.2).Два уровня
3)Прерывания от последовательного интерфейса при установке бит RI или TI (один общий уровень для приемника и передатчика).
41
К каждому из перечисленных источников прерывания могут быть присвоен свой приоритет:
–высший
–низший Если одновременно возникают несколько запросов от разных
источников, то очередность обработки следующая:
1)прерывание INT0
2)прерывание T0
3)прерывание INT1
4)прерывание T1
5)прерывание от УАПП (RI, TI).
Управление работой системы прерывания осуществляется с использованием следующих РСФ:
–TCON (младшая тетрада)
–Регистр приоритетов прерывания IP*
–Регистр маскирования (запрещения) прерывания IE*
Регистр TCON управляет запросами, поступающими по входам INT0 и
INT1.
TCON |
7 |
0 |
||||||
TF1 |
TR1 |
TF0 |
TR0 |
IE1 |
IT1 |
IE0 |
IT0 |
|
управление
таймером
IE1, IE0– биты устанавливаются в единицу, если поступил запрос прерывания по входам INT1 и INT0 соответственно;
IT1, IT0– биты, определяющие признак прерывания на входах INT1 и
INT0.
Если IT=0, то как прерывание будет рассматриваться нулевой уровень сигнала на входе INT1 или INT0 соответственно.
Если IT=1, то как признак прерывание будет рассматриваться будет рассматриваться переход сигнала из нулевого уровня в единичный (прерывание по фронту сигнала).
Регистр приоритетов прерывания IP* имеет следующий формат:
7 |
0 |
||||||
X |
X |
X |
PS |
PT1 |
PX1 |
PT0 |
PX0 |
Установка любого из битов этого регистра в «1» означает присвоение одному из источников прерывания высшего приоритета, установка в «0» присвоение низшего приоритета.
PS–соответствует последовательному интерфейсу;
PT1, PT0–соответствует таймерам Т1 и Т0 соответственно;
РХ1, РХ0–соответствует входам INT1, INT0 соответственно. Формат регистра маскирования прерывания IE* имеет вид:
7 |
0 |
||||||
IA |
X |
X |
IS |
IT1 |
IX1 |
IT0 |
IX0 |
Установка IA=0 запрещает все прерывания ОМК.