Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Структура и основные режимы работы канала последовательного ввода-вывода UART микроконтроллера MCS-51.




Режимы работы:

Режим 0 – синхронный последовательный ввод/вывод со скоростью . Передача идёт по 2 линиям: данные и синхронизация. RxD – прием и передача данных. TxD – передача синхронизирующих сигналов.Передача начинается после занесения данных в регистр SBUF. Прием выполняется в случае, если бит разрешения приема REN=1 и флаг RI=0. Когда получены все 8 бит, RI устанавливается в 1, генерируется запрос прерывания. Данные должны быть прочитаны до прихода следующих битов.

Режим 1 – асинхронный ввод/вывод с переменной частотой, определяемой работой таймера Т1 (передача 10 битв кадре (1 – старт, 2- стоп, 8 – данные). , X – коэффициент деления таймера T1.

Режим 2 – асинхронный ввод/вывод с фиксированной частотой или () в 11-битовом формате (1 – старт, 1 – стоп, 8 – данные, 1 – четность/сетевые связи)

Режим 3 – асинхронный ввод/вывод с переменной частотой, определяемой работой таймера Т1 в 11-битовом формате.

Структурная схема последовательного канала

A – аккумулятор

SBUF – последовательный буфер mov SBUF, A; загрузка передатчика

SMOD – управляющее слово: mov A,SBUF; чтение приемника

SM0 SM1 SM2 REN TB8 RB8 TI RI
Биты задания реж. 00 – 0 режим 01 – 1 режим 10 – 2 режим 11 – 3 режим Запрещение приема данных с нулевым значением RB8 Разрешение приема Бит для 11битного формата Приёмный бит 9/11-тибитного формата Флаг преры-вания передат-чика Флаг преры-вания приём-ника

 


39. Программирование приёма/передачи данных по каналу UART между двумя микроконтроллерами.

Пусть происходит передача сообщения с частотой ( из внешней памяти XSEG.

Программа для МК1 Программа для МК2
ORGorg 30h MOV DPTR, 1000h; адрес сообщения MOV PSW,#0; 0-й банк для служебных регистров MOV R0, #32; 32 символа CLR EA; запрет прерывания передатчика для последующего программного анализа ORL PCON, #80h; SMOD = 1 ORL P3, #02h; STOP сигнал MOV SCON,#01000010B; 1 режим, готовность передачи CLR TR1 MOV SCON, #010xxx1xB; 1 режим таймера (10 бит) и TI = 1 CLR TR1; выключение Т1 MOV TMOD, #00100000B MOV TH1, #0FDh SERB TR1; запуск таймера LOOP: MOVX A, @DPTR; символ для передачи JNB TI, $; ожидание готовности передатчика CLR TI MOV SBUF, A; вывод в передатчик INC DPTR DJNE R0, LOOP JNB TI, $; ожидание END ORG 30h MOV DPTR, 2000h MOV R0, 32h MOV PSW, #0 CLR EA ORL PCON, #80h ORL P3, #01h; младший бит для ввода через P3.1 MOV SCON,#0101xxxxB; 1 режим разрешение приема (50h) CLR TR1 MOV TMOD,20h; MOV TH1,0FDh; SETB TR1; LOOP: JNB RI,LOOP; ожидаем поступления символа CLR RI MOV A,SBUF; пересылка символа из приемника MOV @DPTR,A; сохранение в памяти INC DPTR DJNZ R0,LOOP END

 

 






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных