Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
шпоры v3.docx
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
3.6 Mб
Скачать

15. Организация последовательного ввода/вывода микроконтроллера семейства mcs51 (омэвм51). Режимы работы uart. Расчет скорости передачи данных для асинхронного режима.

Через UART осуществляется прием и передача информации в последовательном коде в полном дуплексном режиме. В состав приемопередатчика входят принимающий и передающий сдвигающие регистры и спец буфер SBUF. Работой UART управляют SCON – управление/статус, бит SMOD из регистра PCON управления мощностью

  1. Буферный регистр SBUF. Преобразование из последоват кода в параллельный и наоборот реализовано аппаратно. Прием и передача (инициализируется сразу при помещении чего-либо в SBUF)

MOV SBUF, A

MOV A, SBUF

  1. Управляющий регистр SCON:

SM1 SM0 SM2 REN TB8 RB8 TI RI

SM1 и SM0:

00 – 0режим, послед. синхр.вв/выв на скорости Fт/12 (машин цикл)

Линия данных – RxD, линия синхронизации – TxD

Передача/прием 8бит данных, по TxD выдаются биты сдвига, сопровождают кажд бит

01 – 1режим, асинхронный, передача 10бит – стартбит (0), 8бит данных, стопбит (1)

Скорость задается таймером 1.

10 – 2 режим, асинхронный, передача 11бит - +бит паритета, две скорости Fт/32, Fт/64

11 – 3режим, асинхронный, передача 11бит - +бит паритета, скорость переменная с пом. таймера 1

SM2 – режим 0 – не используется

режим 1 – контроль истинности стоп-бита – если SM2=1 и стоп-бит(RB8)=1, тогда прерывание, иначе – игнор

режим 2,3 – межконтроллерный обмен информацией.

Первый блок данных – широковещательный - 9ыйбит(TB8)=1 – принимают все, прерываются, сверяют адрес со своим. Совпавший выставляет SM2=0 и принимает следующий блок – у которого TB8=0. У остальных остается SM2=1 и прерывания нет – игнор

REN(receive enable) - разрешить\заблокировать приём.

TB8 – место для записи бита четности при передаче – формир-ся программно

ADD A, #0 ;формирование бита четности

MOV С, P ;напрямую нельзя

MOV TB8, C

MOV SBUF, A

RB8 – место для записи бита четности при приеме.

TI – бит готовности для передатчика;

RI – бит готовности для приёмника;

По TI, RI проверяем, пустой ли SBUF. Эти биты могут быть обработаны либо программно, либо по прерыванию.

Формат передачи данных

Расчет скорости передачи для послед. вв/выв.

Расчет для режимов 1 и 3.

Скорость задается с помощью внутр.таймера Т1 в режиме 2. Таймер Т1 выполняет функцию внутр. генератора. ТН1 – идет накопление, когда он 0, то загрузка его содержимого в TL1. Нужно загрузить в ТН1 и TL1 начальные значения.

В них загружаются одинаковые значения = 256 - [ ], где V – скорость передачи (300 бод, 600, 1200…. ).

Частоту надо выбирать кратной скоростям – чтобы осуществить вв/выв со сторонних устройств. В частности fт=11.0592 МГц – для жк

Пример. На что повлияет округление. Найти начальное значение для таймера Т1. fт=6 МГц, V=1200 б/с.

. А в таймер нужно загружать целое числа. Следовательно, округлим до 13.

256 – 13=243. Следовательно, скорость V= .

Возможно отклонение скорости на 0.05%. Мы укладываемся.

Если V=2400 б/с, то получаем .

Нужно либо 6, либо 7 брать. Но в обоих случаях отклонение больше, чем 0.05%.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]