Работа с последовательным портом МК x51



Режимы работы последовательного порта МК x51


РежимПримечания
0Информация передается и принимается через внешний выход приемника RXD. Принимаются или передаются 8 бит данных. Через внешний вывод выхода передатчика TXD выдаются сопровождающие каждый бит данных импульсы сдвига. Частота передачи битов равна 1/12 частоты резонатора.
1Через TXD передаются, а через RXD принимаются 10 бит информации: старт-бит (0), 8 бит данных и стоп-бит (1). При приеме информации в бит RB8 регистра управления-статуса приемопередатчика заносится стоп-бит. Скорость приема/передачи определяется таймером.
2Через TXD передаются, а через RXD принимаются 11 бит информации: старт-бит (0), 8 бит данных, программируемый бит 9 и стоп-бит (1). При передаче бит 9 может принимать значение 0 или 1, либо, например, для повышения достоверности передачи путем контроля по четности в него может быть помещено значение признака паритета из слова состояния программы (PSW.0). При приеме девятый бит данных помещается в бит RB8 регистра управления-статуса приемопередатчика, а стоп-бит (в отличие от режима 1) теряется. Скорость приема/передачи выбирается программно и может быть равна 1/32 или 1/64 частоты резонатора в зависимости от управляющего бита SMOD.
3Режим 3 в основном идентичен режиму 2, за исключением частоты приема/передачи, которая задается таймером.


Наиболее типичным вариантом использования последовательного канала является его работа в режиме таймера с автоперезагрузкой (старшая тетрада TMOD=0010B). При этом частота определяется выражением:
                            smod
2 Oscillator frequency
Baud rate = ------- x --------------------
32 12 x (256 - TH1)
Некоторые типичные скорости последовательного обмена для кристалла 11.0592:
Таймер/счетчик 1
Baud rateSMODC/TРежим
(Mode)
TH1
192001020FDH
96000020FDH
48000020FAH
24000020F4H
12000020E8H
3000??0A0H