Cap9
PORTA SERIAL
CAPÍTULO IX
PORTA SERIAL
9.1. INTRODUÇÃO
A porta serial existente na família MCS-51 é "full duplex", quer dizer, pode transmitir e receber dados simultaneamente. Tem um buffer que permite receber um segundo byte antes que o byte previamente recebido tenha sido retirado (lido) do registro de recepção. Mas, se o primeiro byte não tiver sido lido no tempo em que o segundo byte se completa, um dos dois será perdido.
9.2. REGISTROS ENVOLVIDOS
A porta serial possui um registrador chamado SBUF, o mesmo que se usa para enviar ou receber dados pela porta serial. Na realidade, o nome SBUF se refere a dois registros, um somente para leitura por onde se recebem os dados que chegam pela porta serial e outro somente para escrita por onde se transmitem dados pela porta serial.
O modo de operação da porta serial é controlado pelo registro SCON, que é ilustrado na figura 9.1. A figura 9.2 apresenta um resumo dos modos de operação.
SCON
7
6
SM0
SM1
5
4
3
SM2 REN TB8
2
1
0
RB8
TI
RI
INTERRUPÇÃO POR RECEPÇÃO
INTERRUPÇÃO POR TRANSMISSÃO
OITAVO BIT RECIBIDO
OITAVO BIT PARA A TRANSMISSÃO
HABILITAR RECEPÇÃO SERIAL
COMUNICAÇÃO MULTIPROCESSADOR
BIT 1 DO MODO
BIT 0 DO MODO
Figura 9.1. Descrição do registro SCON.
MICROCONTROLADORES (MCS-51)
9 - 1
CAPÍTULO IX
PORTA SERIAL
SM0
SM1
MODO
DESCRIÇÃO
FREQÜÊNCIA
0
0
0
registro de deslocamento
clock/12
0
1
1
UART de 8 bits
variável
1
0
2
UART de 9 bits
clock/12 ou clock/64 1
1
3
UART de 9 bits
variável
Figura 9.2. Modos de operação da porta serial.
SM2 → comunicação multiprocessador (habilitada com SM2=1):
SM2=1 e em modo 1
==> interrupção (RI=1) com o bit de parada (stop bit) igual a 1
SM2=1 e em modo 2 ou 3
==> interrupção (RI=1) se for recebido RB8=1.
REN → habilita a recepção serial (Reception Enable)
TB8 → oitavo bit a ser transmitido nos modos 2 e 3.
RB8 → oitavo bit recebido nos modos 2 e 3.
TI
→ flag de interrupção por término de transmissão pela porta serial:
MODO