Buscar

Interfaces_e_Perifericos_2014_Cap3

Prévia do material em texto

Interfaces e Periféricos 22_____ ___ 
Prof. André Sarmento Barbosa | http://www.andresarmento.com 
 
 
CAPÍTULO 3 
Interfaces Seriais 
RS-232 e RS-485 
 
 
 
 
A Porta serial RS-232 
 
Com o passar dos anos, a porta de comunicação serial RS-232 veio sendo gradualmente suprimida pela USB 
para comunicação local. A porta USB é mais rápida, possui conectores mais simples de usar e tem um me-
lhor suporte por software. Por isso, muitas placas mãe, destinadas ao uso em escritórios ditas "livre de 
legados" (legacy-free) são produzidas sem circuitos RS-232. Mesmo assim, esse protocolo continua sendo 
utilizado em periféricos para pontos de venda (caixas registradoras, leitores de códigos de barra ou fita 
magnética) e para a área industrial. Por essas razões, computadores para estes fins continuam sendo pro-
duzidos com portas RS-232. Como alternativa, existem conversores para portas USB, que podem ser utili-
zados para conectar periféricos RS-232 a computadores que não dispõem de tal interface. 
No que tange a sistemas embarcados e microcontrolados a porta serial RS-323 continua sendo bastante 
utilizada, principalmente pela sua simplicidade, tanto de hardware quanto de software. 
 
No protocolo padrão de comunicação via RS-232, caracteres são enviados um a um como um conjunto de 
bits. A codificação mais comumente usada é o "start-stop assíncrono" que usa um bit de início, seguido por 
sete ou oito bits de dados, possivelmente um bit de paridade, e um ou dois bits de paragem sendo então 
necessários pelo menos 10 bits para enviar um único caractere. O padrão define os níveis elétricos 
correspondentes aos níveis lógicos um e zero, as velocidades de transmissão padrão e os tipos de 
conectores. 
 
 
 Conector DB-9 fêmea (nove pinos) 
 Interfaces e Periféricos 23_____ ___ 
Prof. André Sarmento Barbosa | http://www.andresarmento.com 
 
 
O RS-232 é recomendado para conexões curtas (quinze metros ou menos). Os sinais variam de 3 a 15 volts 
positivos ou negativos, valores próximos de zero não são sinais válidos. O nível lógico um é definido por ser 
voltagem negativa, a condição de sinal é chamada marca e tem significado funcional de ON (ligado). O 
nível lógico zero é positivo, a condição de sinal é espaço, e a função é OFF (desligado). Voltagens de +-10, 
+- 12 e +-15 são vistos comumente. Esse é um dos principais motivos pelo qual devemos utilizar um 
conversor (MAX232 por exemplo) para ligação de uma porta serial RS-232 a uma porta serial TTL (0 e 5V). 
 
As voltagens na serial RS-232 possuem o terra (GND) como referência, uma vez que a RS-232 não é balan-
ceada. O uso de circuitos desbalanceados deixa o RS-232 altamente suscetível a problemas devido a dife-
renças de potencial entre os sinais de terra dos dois circuitos. 
 
Uma das primeiras aplicações para a porta serial foi a utilização para comunicação do computador com 
MODEMS, assim, a pinagem de um conector DB-9 herda a nomenclatura utilizada nos sinais de comunica-
ção utilizado para MODEMS. 
 
Para uma interface mínima (essa ainda muito utilizada) utiliza somente os pinos TX, RX e GND para 
comunicação com dispositivos. Observe a pinagem abaixo: 
 
 
1. DCD Data Carrier Detect Detecção de portadora 
2. RX ou RD Receive Data Recepção de dados 
3. TX ou TD Transmit Data Transmissão de dados 
4. DTR Data Terminal Ready Terminal de dados pronto 
5. GND Ground Terra 
6. DSR Data Set Ready Conjunto de dados pronto 
7. RTS Request to Send Pronto para enviar(computador) 
8. CTS Clear to Send Envie os dados (modem) 
9. RI Ring Indicator Indicador de telefone tocando 
 Interfaces e Periféricos 24_____ ___ 
Prof. André Sarmento Barbosa | http://www.andresarmento.com 
Configurações da RS-232 
 
Há várias configurações de software para conexões seriais. As configurações mais comuns dizem respeito à 
velocidade e bits de paridade e parada. A velocidade é a quantidade de bits por segundo transmitida de 
um dispositivo para outro. Taxas comuns de transmissão são 300bps, 1200bps, 2400bps, 9600bps, 
19200bps, etc. 
 
Tipicamente, ambos os dispositivos devem estar configurados com a mesma velocidade, alguns dispositi-
vos, porém, podem ser configurados para auto-detectar a velocidade. 
 
A paridade é um método de detectar erros nos dados transmitidos. A paridade é normalmente nula (não 
usada), mas pode ser par ou ímpar. A paridade funciona modificando os dados, em cada byte enviado. Na 
paridade par, os dados são acomodados de modo que a quantidade de bits 1 (isto é, sua contagem em um 
byte) seja um número par; isto é feito definindo o bit de paridade (geralmente os bits mais ou menos sig-
nificativo) como 0 ou 1. Na paridade ímpar, a quantidade de bits 1 deve ser um número impar. A paridade 
pode ser usada pelo receptor para detectar a existência de erros de transmissão - se um byte foi recebido 
com o número errado de bits 1, então ele deve estar corrompido. Se a paridade está correta então não 
deve haver erros, ou então há um número par de erros (caso de paridade par). 
 
Bits de parada são enviados no fim de cada byte transmitido com o intuito de permitir que o receptor do 
sinal se sincronize. Existe uma convenção para a notação se uma configuração de software de uma cone-
xão serial, esta notação é da forma D/P/S. Sendo que a configuração mais comum é a 8/N/1 que especifi-
ca que são transmitidos 8 bits de dados, paridade nula e um bit de parada. O número de bits de dados 
pode ser 7, 8 ou (às vezes) 9. Paridade pode ser nula (N), impar (O) ou par (E); o bit de paridade é em-
prestado dos bits de dados, então 8/E/1 significa que um dos oito bits de dados é utilizado como bit de 
paridade. Podem haver 1 ou 2 bits de parada. 
 
Outras configurações especiais definem quando pinos enviam sinais de "handshake", ou outras checagens 
de integridade dos dados. Combinações comuns são RTS/CTS, DTR/DSR, ou XON/XOFF (que não usam pinos 
no conector, mas caracteres especiais no fluxo dos dados). O caractere XON diz ao receptor que o reme-
tente do caractere está pronto para receber mais dados. O caractere XOFF diz ao receptor para parar de 
enviar caracteres. O XON/XOFF está em desuso, e é preferível que se utilize o controle de fluxo RTS/CTS 
se os dispositivos conectados utizam realmente as linhas de RTS/CTS. 
 
Para finalizar, mostramos como uma interface serial RS-232 pode ser ligada a um dispositivo que utilize 
sinais TTL (0 e 5V), tal como um microcontrolador. Observe a utilização do integrado MAX232 para 
compatibilizar os níveis elétricos da RS-232 com os níveis TTL que estarão disponíveis em TX e RX do lado 
esquerdo da figura. 
 
 
 
 
 Interfaces e Periféricos 25_____ ___ 
Prof. André Sarmento Barbosa | http://www.andresarmento.com 
 
 
 
A Porta serial RS-485 
 
Se uma aplicação consiste de vários dispositivos em lugares diferentes, ou se um sistema é composto de 
diversas unidades, cada uma com determinada função, certamente um meio de comunicação entre eles se 
faz necessário. Apesar da RS-232 e a USB serem as interfaces mais comumente utilizadas para comunica-
ção serial, elas têm suas limitações, principalmente no que diz respeito às distâncias envolvidas. O padrão 
RS-485, criado em 1983, é capaz de prover uma forma bastante robusta de comunicação multiponto que 
vem sendo muito utilizada na indústria em controle de sistemas. 
 
Na RS-232, os sinais são representados por níveis de tensão referentes ao terra. De forma mais simples, há 
um fio para transmissão, outro para recepção e o fio terra para referência dos níveis de tensão. Este tipo 
de interface é útil em comunicações ponto-a-ponto a baixas velocidades de transmissão. Visto a necessi-
dade de um terra comum entre os dispositivos, há limitações do comprimento do cabo a apenas algumas 
dezenas de metros.Os principais problemas são a interferência e a resistência do cabo. Já o padrão RS-
485 utiliza um princípio diferente, no qual apenas dois fios são utilizados, que serão chamados de A e B de 
agora em diante. Nesse caso tem-se nível lógico 1 quando, por exemplo A for positivo e B negativo, conse-
quentemente tem-se nível lógico 0 quando B for positivo e A negativo. Verifica-se que o nível lógico é 
determinado pela diferença de tensão entre os fios, daí o nome de modo de operação diferencial (ou ba-
lanceado). 
 
Umas das vantagens da transmissão balanceada é sua robustez à ruídos e interferências. Se um ruído é 
introduzido na linha, ele é induzido nos dois fios de modo que a diferença entre A e B dessa interferência 
tende a ser quase nula, com isso o alcance pode chegar a aproximadamente 1200 metros. Vale citar que o 
padrão RS-232 em sua taxa máxima de comunicação alcança aproximadamente 15 metros. 
 
Outra diferença notável do RS-485 em relação ao RS-232 é a comunicação multiponto. No RS-232 só é pos-
sível a comunicação entre dois dispositivos. Como o padrão RS-485 foi desenvolvido para atender a neces-
sidade de comunicação multiponto, o seu esquema padrão permite conectar até 32 dispositivos. Circuitos 
integrados mais modernos para RS-485 permitem a ligação de até 256 dispositivos ao barramento. 
 Interfaces e Periféricos 26_____ ___ 
Prof. André Sarmento Barbosa | http://www.andresarmento.com 
O padrão RS-485 (EIA-485) recomenda o uso de cabo de par trançado para transmissão dos dados, uma vez 
que se usa uma transmissão balanceada. Blindagem é desejável nos cabos. Além disso, apesar de não ser 
necessário o padrão recomenda também o uso de uma linha de terra (totalizando três fios), principalmen-
te se grandes distâncias estão em jogo. 
 
Vale lembrar que o padrão RS-485 não define e nem recomenda nenhum protocolo de comunicação. Na 
indústria são utilizados protocolos proprietários e protocolos abertos, tal como o MODBUS. 
 
Outra grande vantagem do padrão RS-485 é a facilidade de conversão do padrão RS-232 ao RS-485, sim-
plesmente utilizando um CI, com isso tem-se que a compatibilidade com dispositivos já existentes no mer-
cado é mantida, visto que a maioria dos computadores já possui saída RS-232. 
 
Como estamos fazendo comparações com o padrão RS-232, convém sumarizarmos estas em uma tabela 
para melhor análise. Em relação ao número de mestres e escravos convém esclarecer que conversores RS-
485 atuais podem suportar mais de 32 dispositivos (mestres/escravos) no barramento. 
 
Característica RS-232 RS-485 
Diferencial/Balanceada Não Sim 
Número de controladores (mestres) 1 31 
Número de receptores (escravos) 1 31 
Modo de operação half ou full-duplex half-duplex 
Topologia ponto a ponto Multiponto (barra) 
Distância máxima (standard) 15m 1200m 
Taxa máxima a 12m 20kbps 35Mbps 
Taxa máxima a 1200m --- 100kbps 
 
 
Topologia de uma rede RS485 
 
Utiliza-se a topologia em barra, onde todos os dispositivos estão conectados de forma paralela ao 
barramento, podendo, em teoria, funcionarem como mestres ou escravos (multiponto). Em geral, mesmo 
tendo a capacidade de ser multiponto temos apenas um mestre (multidrop), para evitar problemas de 
colisões, que deveriam ser solucionados pelo protocolo utilizado, tornando o desenvolvimento (a nível de 
software) mais complexo. 
 
 Interfaces e Periféricos 27_____ ___ 
Prof. André Sarmento Barbosa | http://www.andresarmento.com 
 
Um barramento RS485 com um controlador mestre e três escravos 
 
Quando todos os dispositivos estão em modo de recepção, o nível lógico do barramento pode ficar indefi-
nido, assim adicionam-se resistores de pull-up no pino A e pull-down no pino B (resistores de 470R na figu-
ra). Outro problema que ocorre é a reflexão do sinal, este problema pode ser evitado colocando-se dois 
resistores terminadores de igual valor entre as linhas A e B (resistores de 120R na figura), observe que 
estes terminadores são colocados nas duas pontas do barramento. Muitas placas possuem um jumper para 
permitir a ativação destes resistores de forma facilitada. 
 
Funcionamento do transceiver (transmissor/receptor) 485: 
 
Para adaptação dos sinais elétricos RS-485 de forma balanceada para níveis TTL são utilizados 
transceptores 485, tal como o MAX-485, de forma geral, todos integrados transceptores 485 de 8 pinos 
possuem a mesma pinagem: 
 
 
 
 
 Interfaces e Periféricos 28_____ ___ 
Prof. André Sarmento Barbosa | http://www.andresarmento.com 
 
1. RO Saída para recepção 5. GND Alimentação negativa 
2. RE habilitação da recepção 6. A Entrada não inversora 
3. DE habilitação da transmissão 7. B Entrada inversora 
4. DI Entrada para transmissão 8. VCC Alimentação positiva 
 
Normalmente conecta-se juntos os pinos RE e DE de forma que o transceptor esteja apenas recebendo ou 
transmitindo. Para que um dispositivo transmita um dado pelo barramento, é necessário ativar o pino DE, 
fazendo com que RE seja desabilitado, para então transmitir a informação necessária pelo pino DI, e ao 
fim da transmissão, desabilitar DE reabilitando RE, de forma que o transceptor volte ao modo de recep-
ção. O CI deve sempre permanecer em modo de recepção. 
 
Interligação de um transceiver MAX485 a um microcontrolador 
 
Obs.: Para simplificar, na figura foi omitida a alimentação do transceiver, pino 8 (Vcc) e pino 5 (GND), 
além disso o resistor terminador, bem como os resistores polarizadores foram omitidos. 
 
Funcionamento Mestre-Escravo 
 
É o tipo de aplicação onde um dispositivo central comanda os demais dispositivos. Os dispositivos escravos 
recebem um endereço e apenas respondem ao mestre quando são chamados. Tem-se assim uma forma de 
evitar colisões de dados na rede, visto que apenas o mestre ou o escravo estão transmitindo. Um exemplo 
de aplicação desse sistema está nas linhas de produção das indústrias, onde um computador central 
comanda várias máquinas (CNC, máquina de comando numérico). 
 
Linha de produção com funcionamento mestre/escravo

Continue navegando