Последовательный порт микроконтроллеров семейства MCS-51 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Последовательный порт микроконтроллеров семейства MCS-51



Через универсальный последовательный порт микроконтроллераосуществляются прием и передача информации, представленной в последовательном коде (младшими битами вперед). Наличие буферного регистра приемника позволяет совмещать операцию чтения ранее принятого байта с приемом очередного. Но если к моменту окончания приема байта предыдущий не был считан из SBUF, то он будет потерян. Работой последовательного порта управляют три регистра:

q регистр управления/статуса приемопередатчика SCON;

q регистр управления мощностью PCON, бит SMOD;

q буферный регистр приемопередатчика SBUF.

Последовательный порт может работать в четырех различных режимах:

q режим 0, синхронный;

q режим 1, асинхронный 8-битовый обмен;

q режим 2, асинхронный 9-битовый обмен с фиксированной скоростью передачи;

q режим 3, асинхронный 9-битовый режим.

Управление режимами работы приемопередатчика осуществляется через специальный регистр с символическим именем SCON. Он содержит не только управляющие биты, определяющие режим работы последовательного порта, но и девятый бит принимаемых или передаваемых данных (RB8 и ТВ8) и биты прерывания приемника/передатчика (RI и ТI). Формат регистра управления последовательным портом приведен на рис. 20.22.

Прикладная программа путем загрузки в старшие биты регистра SCON двухбитного кода задает режим работы приемопередатчика. Во всех четырех режимах передача инициализируется любой командой, в которой буферный регистр SBUF указан как получатель байта. Как уже отмечалось, прием в режиме 0 осуществляется при условии, что RI=0 и REN=1, в остальных режимах — при условии, что REN=1.

В бите ТВ8 программно устанавливается значение девятого бита данных, который будет передан в режиме 2 или 3 в составе 9-битового поля данных кадра передачи. В бите RB8 в этих режимах запоминается девятый принимаемый бит данных. В режиме 1 в бит RB8 заносится значение стоп-бита. В режиме 0 бит RB8 не используется.

Флаг прерывания передатчика TI устанавливается аппаратно после передачи стоп-бита во всех режимах. Подпрограмма, обслуживающая прерывания или опрашивающая флаг, должна сбрасывать бит TI.

Адрес Ст. зн. разр.             Мл. зн. разр.  
98Н SM0 SCON.7 SM1 SCON.6 SM2 SCON.5 REN SCON.4 TB8 SCON.3 IT1 SCON.2 RB8 SCON.1 RI SCON.0 SCON
  9Fh 9Eh 9Dh 9Ch 9Bh 9Ah 99h 98h  

 

Наименование Позиция Назначение
SM0 SCON.7

Биты управления режимом работы приемопередатчика. Устанавливаются/сбрасываются программно см. примечание 1

SM0 SM1 Режим работы приемопередатчика
    Сдвигающий регистр расширения ввода/вывода
    8-битовый приемопередатчик, изменяемая скорость приема/передачи
    9-битовый приемопередатчик, фиксированная скорость приема/передачи
    9-битовый приемопередатчик, изменяемая скорость приема/передачи

 

SM1 SCON.6
SM2 SCON.5 Бит управления режимом приемопередатчика. Устанавливается программно для запрета приема сообщения, в котором девятый бит имеет значение 0
REN SCON.4 Бит разрешения приема. Устанавливается/сбрасывается программно для разрешения/запрета приема последовательных данных
TB8 SCON. 3 Передача бита 8. Устанавливается/сбрасывается программно для задания девятого передаваемого бита в режиме 9-битового передатчика
RB8 SCON.2 Прием бита 8. Устанавливается/сбрасывается аппаратно для фиксации девятого принимаемого бита в режиме 9-битового приемника
TI SCON. 1 Флаг прерывания передатчика. Устанавливается аппаратно при окончании передачи байта. Сбрасывается программно после обслуживания прерывания
RI SCON.0 Флаг прерывания приемника. Устанавливается аппаратно при приеме байта. Сбрасывается программно после обслуживания прерывания

Рис. 20.22. Формат регистра управления последовательным портом

Флаг прерывания приемника RI устанавливается аппаратно после приема восьмого бита данных в режиме 0 и в середине периода приема стоп-бита в режимах 1, 2 и 3. Подпрограмма обслуживания прерывания должна сбрасывать бит RI.



Поделиться:


Последнее изменение этой страницы: 2017-02-07; просмотров: 262; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.117.183.172 (0.004 с.)