Escolar Documentos
Profissional Documentos
Cultura Documentos
Reviso
Vantagens: Desvantagens:
- Muitos fios > custo
- Maior rapidez.
- Rudo, perda de
- Maior simplicidade
sincronismo
das interfaces.
Menores distncias
Comunicao Serial - Introduo
Interface Paralela:
Dados + controle
Equipamento 1 Equipamento 2
Comunicao Serial - Introduo
Interface Serial
Os bits de uma palavra so transmitidos
seqencialmente no tempo, em um nico meio
fsico.
Desvantagens:
Vantagens:
- Menor velocidade
- Poucos fios.
- Maior complexidade
- Distncias grandes
das interfaces
Comunicao Serial - Introduo
Interface Serial
Dados
+
controle
Equipamento 1 Equipamento 2
Facilidade de implementao
Menor Custo
Baud Rate
o nmero de transies (ou eventos) por segundo.
Cada evento pode transmitir mais de 1 bit: ex.:
modems, onde a variao de fase da portadora poderia
representar dois ou mais bits.
Quando cada evento representa apenas 1 bit, ento o
Bit Rate e o Baud Rate so iguais.
Comunicao Serial Assncrona
Padres
RS-232C
Padro fsico e eltrico.
Conector DB25 (no caso dos computadores PC, usa-
se normalmente um DB9, com um subset dos sinais)
Pinagem:
DB25 DB9 descrio do sinal
2 3 Transmit Data - TX
3 2 Receive Data - RX
4 7 Request to Send - RTS
5 8 Clear to Send - DTS
6 6 Data Set Ready - DSR
7 5 Signal Ground - GND
8 1 Data Carrier Detect - DCD
15 Transmit Clock
17 Receive Clock
20 Data Terminal Ready - DTR
24 Auxiliary Clock
Comunicao Serial Assncrona
Padres
RS-232C
Problemas:
Quedas de tenso ao longo do fio
Susceptvel a rudos e diferenas de potencial de
terras
Limite de distncia +/- 15m (depende da taxa)
Taxa mxima: 20Kbps
Comunicao Serial Assncrona
Padres
RS-232C
Exemplos de circuitos utilizados no RS 232C:
1488 - quad line driver
necessita de alimentao simtrica (+12V/-12V)
1489 - quad line receiver (s +5V)
MAX232C
alimentao simples, gera internamente
tenses simtricas.
Implementa dois drivers e receivers em um
nico chip
Comunicao Serial Assncrona - Circuitos
1488 1489 MAX232
Comunicao Serial Assncrona
Padres
RS-422
"Differencial Voltage Pairs": Sinal
Diferencial
Tx + Va - Vb < - 0.2V = 0
Tx - Va - Vb > +0,2V = 1
par tranado
Vantagens:
Mais imune a cross-talk
Mais resistente a quedas de tenso
Limite de distncia: +/- 1200m (depende da taxa)
Taxa mxima: 10Mbps
Tx Rx Tx Rx
End. 1 End. n - 1
Escravos
Comunicao Serial Assncrona
Padres
RS-485
Filosofia Mestre-Escravo
1 mestre, n - 1 escravos, cada um com 1 endereo
Mestre: toma a iniciativa da comunicao
Escravos: S respondem s mensagens a eles endereadas
TxD do mestre: Chega a todos RxD dos escravos
TxD dos escravos:
Em alta impedncia, quando um escravo for responder, conecta
seu transmissor
Mestre: fica ciclicamente interrogando um por um os escravos, que
respondem com seus dados, se possurem
Boa soluo para sistemas com poucos dispositivos, baixo trfego
ou onde a velocidade no for crtica.
Comunicao Serial
Componentes
UART
Universal Asynchronous Receiver / Transmiter
Converso paralela / serial
Insero / retirada automtica do Start-bit e Parity bit
Velocidades programveis
Interrupes para transmisso / recepo
Indicao de erros.
Exemplos
8251
16550
Muitos microcontroladores possuem UARTs internas
Comunicao Serial - 8051
UART interna
Uma das caractersticas mais interessantes do 8051
sua UART integrada. Pode-se facilmente escrever
ou ler dados via interface serial. Realiza todo o
processo de serializao, adio de start bits e stop
bits, etc.
Ou seja:
se SMOD = 0 TH1 = 256 - ((FreqOsc / 384) / Baud)
se SMOD = 1 TH1 = 256 - ((FreqOsc / 192) / Baud)
Comunicao Serial - 8051
Programando o Timer - exemplo:
Ex.: cristal de 11.0592 Mhz e deseja-se 19200bps.
Supondo SMOD = 0
TH1 = 256 - ((11059000 / 384) / 19200)
TH1 = 256 - 1,5 = 254.5
Impossvel! Se usarmos para 254 teremos
14.400bps, se setarmos para 255 teremos
28.800bps! O que fazer?
Basta mudar SMOD para 1
TH1 = 256 - ((11059000 / 192) / 19200)
TH1 = 256 - 3 = 253
Comunicao Serial - 8051
Programando o Timer
Timer/Counter mode
TMOD (89h)
7------T1------4 | 3-----T0--------0
Gate C/T M1 M0
1 0 (modo 2)
contador out timer
TCON (88h)
---T1---|---T0----|---T1----|---T0----
SM2 = flag para "Multiprocessor comunication". Caso esteja setada, RI somete ser
setado caso o nono bit recebido seja 1. Nos usos mais comuns, SM2 = 0.
TB8 usado nos modos 2 e 3. O nono bit a ser transmitido o nele contido.
RB8: idem a TB8 para recepo. O nono bit recebido ser nele armazenado.
TI: Transmit Interrupt
Quando TI est setado, o programa pode assumir que a porta serial est
pronta para transmitir o prximo byte.
RI: Receive Interrupt
Sempre que o 8051 receber um byte completo, RI ser setado, informando
ao software que o byte precisa ser lido, antes que seja recebido um novo
valor.
Comunicao Serial - 8051
Programando o Canal Serial
Interrupes
IE (A8h)
7------------------------------------0
. ; inicializacoes
.
MOV PCON, #00000000 ; SMOD recebe 0
MOV TMOD, #00100000 ; Timer 1 no modo 2
MOV TCON, #01000000 ; Ativa Timer 1
MOV TH1, #0FDH ; configura para 9600bps
MOV SCON, #01110010 ; canal serial no modo 1
MOV IE, #00000000 ; desabilita interrupes
Comunicao Serial - 8051
Programando o Canal Serial
Envio de caracteres - rotina CO (character
output)
CO: JNB TI, $ ; l estado TI da serial
CLR TI ; Se TI OK, limpa TI
MOV SBUF, B ; escreve dado
JNB TI, $ ; espera sua transmissao
RET