Buscar

Introdução à Comunicação Serial RS232

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 10 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 10 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 10 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

C ROGER OM – Curso USB – www.rogercom.com
 
Aula 11 – Módulo-USB / Página 91 
Introdução a Porta Serial 
 
 A partir desta aula iremos começar nossos estudos sobre a comunicação serial, 
especificamente o padrão RS232 que tem mais de 40 anos de existência, mas ainda 
é muito usado em vários dispositivos atuais, como computadores Modems, Mouses, 
Microcontroladores, Impressoras etc. Como objetivo principal pretendo deixar 
informações suficientes para que possam compreender o funcionamento da porta 
serial e, a partir dessa compreensão, tornarem-se capacitados a criar, tanto software 
de controle como o hardware, e assim implementar seus novos projetos. 
 A comunicação serial teve início com a invenção do telégrafo. Depois teve um 
grande desenvolvimento com a invenção do Teletype (teletipo) pelo Francês Jean 
Maurice Émile Baudot, em 1871. Baudot, além de criar toda a mecânica e elétrica do 
Teletype, criou também um código para a transferência serial assíncrona de 
informações, de forma totalmente digital. 
 No código de Baudot havia dois subconjuntos de códigos. Um era os das letras, 
chamado por ele de LTRS, abreviatura da palavra LETRAS, e o outro era chamado 
de FIGS, que significa FIGURAS. Os LTRS eram para codificar as letras, e os FIGS 
para os dígitos de 0-9 e alguns símbolos e sinais de pontuação. Esse código 
utilizava um sistema de 5 dígitos binários para representar um caracter. O dígito 1 
era chamado de Mark (Marca) e o zero (0) de Space (Espaço). O aparelho de 
Teletype recebia um caracter de forma assíncrona e o imprimia numa fita de papel, 
onde a Marca era representada por um furo e o Espaço pela ausência do mesmo. 
 Na transmissão dos caracteres através da linha telegráfica, o sinal de Marca era 
representado pela presença de corrente elétrica, e o Espaço pela ausência desta 
corrente. Para que o Teletype conseguisse distinguir o início e o final de um caracter, 
o mesmo era precedido com um sinal Espaço e finalizado com um sinal de Marca. 
Entenda que o estado da linha ociosa (sem transmissão de dados) era o sinal de 
Marca (presença de corrente elétrica). Foi baseado nesse sistema que o padrão de 
transmissão RS232 evoluiu e se tornou no padrão atual, usado na maioria dos 
computadores e equipamentos digitais diversos. 
 A finalidade de se escrever aqui, sobre o trabalho de Baudot, é mostrar a 
relação de seu invento com o padrão serial RS232 atual. Alguns termos ainda 
usados como: BAUD (Baudot), Mark, Space, Start bit, Stop bit com intervalo de 1,5 
ROGERC 
 
Jean Maurice Émile 
Baudot (1845-1903) 
 
BITS DECIMAL LTRS FIGS
00011 3 A - 
11001 25 B ? 
01110 14 C : 
01001 9 D $ 
00001 1 E 3 
01101 13 F ! 
. 
. 
. 
. 
. 
. 
. 
. 
. 
. 
. 
. 
01000 8 CR CR 
00010 2 LF LF 
00100 4 SP SP 
11111 31 LTRS LTRS
11011 27 FIGS FIGS
Receptor Baudot 
Coleção de imagens 
Fons Vanden Berghen. 
OM – Curso USB – www.rogercom.com
 
Aula 11 – Módulo-USB / Página 92 
bit, tamanho dos dados de 5 bits, entre outras similaridades, iremos compreender 
nesta aula. 
 
Tabela 1 - Tabela parcial do código de Baudot 
 Para explicar como eram transmitidos os caracteres codificados no sistema de 
Baudot, segue abaixo um exemplo de como enviar a palavra FADA! 
LTRS F A D A FIGS ! 
11111 01101 00011 01001 00011 11011 01101 
 No exemplo acima, as letras da palavra FADA estão dispostas na primeira 
coluna (LTRS) da tabela de códigos de Baudot. Portanto, para que o sistema 
receptor de teletype entenda, o transmissor terá que informá-lo previamente através 
do envio de um comando LTRS (11111), alertando que, os próximos caracteres 
enviados serão letras. Para enviar o caracter "!", antes, se envia o código FIGS para 
avisar ao receptor que interprete os códigos conforme os da segunda coluna (FIGS). 
 Na verdade, os códigos especiais LTRS e FIGS servem para combinar, e 
portanto, enviar qualquer um dos caracteres da tabela de códigos de Baudot (Letras, 
dígitos, sinais de pontuação e símbolos) num total de 64, incluindo os próprios LTRS 
e FIGS. 
 Para assimilarmos o conceito dos códigos LTRS e FIGS no sistema de Baudot, 
podemos comparar, grosso modo, com um teclado de computador onde o código de 
cada tecla é transmitido serialmente e, para alternar entre letras maiúsculas e 
minúsculas, pressiona-se a tecla CapsLock. 
 
 
C ROGER OM – Curso USB – www.rogercom.com
 
Aula 11 – Módulo-USB / Página 93 
Figura 1 - Sinal elétrico para o caracter 'P' (10110) no código de Baudot 
 
 Na figura acima temos a representação gráfica de um caracter de 5 bits do 
código Baudot, na relação corrente/tempo. Quando a linha está ociosa (nenhum 
dado fluindo), a mesma fica no estado Marca (presença de corrente elétrica). 
 Como exemplo, para se transmitir o caracter 'P' (10110), primeiro envia-se um 
START (ausência de corrente na linha - Espaço) por um determinado intervalo de 
tempo (t). Depois se envia os impulsos representando as Marcas e os Espaços do 
código do caracter. Após isso, envia-se um STOP (A linha é levada ao estado 
Marca), e fica assim indeterminadamente até que um novo caracter seja enviado. 
Figura 2 - Fita de papel com impressão do código de Baudot 
 
 A figura acima mostra uma fita de papel com impressões dos códigos de 
Baudot. O bit 1 (Marca) é associado a um furinho, e o bit 0 (Espaço), a ausência do 
mesmo, ou seja, um espaço. 
 
 
Modos de transmissão serial 
 O modo da transmissão pode ser classificado em Simplex, Half-duplex e Full-
duplex. Ou seja, a informação pode fluir num único sentido, nos dois sentidos sendo 
que somente um transmitindo a cada vez, ou nos dois sentidos simultaneamente. 
C ROGER OM – Curso USB – www.rogercom.com
 
Aula 11 – Módulo-USB / Página 94 
 Os sistemas de comunicações como: telefonia, satélite, Redes, sistemas 
wireless, teleprocessamento, etc., usam um desses modos de transmissão. A 
escolha de qual modo usar depende do que se pretende transmitir. 
SIMPLEX 
 No modo Simplex, o fluxo de transmissão flui somente em um sentido, ou seja, 
um dispositivo só envia os dados e o outro só recebe. Como exemplo, podemos citar 
uma emissora de Rádio, onde ela só transmite. 
Figura 3 - Modo SIMPLEX 
 
 
HALF-DUPLEX 
 No modo Half-duplex ambos os dispositivos transmitem nos dois sentidos, mas, 
não simultaneamente. Ou seja, um transmite enquanto o outro espera e vise versa. 
Esse modo usa um único canal bidirecional. Como exemplos, podemos citar um 
rádio Walk-Talk, onde ambas as pessoas podem falar e escutar, mas não ao mesmo 
tempo. 
Figura 4 - HALF-DUPLEX 
 
FULL-DUPLEX 
 No modo de transmissão Full-duplex, há duas linhas independentes, onde uma 
é usada para transmitir e a outra para receber os dados. Ambos os dispositivos 
taransmitem simultaneamente. Como exemplo, podemos citar uma auto-estrada de 
duas vias onde os veículos rodam nos dois sentidos. 
 A porta Serial RS232 trabalha em modo Full-duplex, através das duas linhas TX-
RX. 
Figura 5 - FULL-DUPLEX 
 
 
 
C ROGER OM – Curso USB – www.rogercom.com
 
Aula 11 – Módulo-USB / Página 95 
DTE / DCE 
 Diferente da porta USB, onde o Host é sempre um PC e um dispositivo não pode 
se conectar com outro dispositivo diretamente (a não ser que um deles use 
tecnologia OTG). No padrão RS232, um DTE (Data Terminal Equipment), ou seja, 
um PC, pode ser conectado a um outro PC (DTE), ou a um DCE (Data Circuit-
Terminating Equipment), que pode ser um Modem ou qualquer outro dispositivo 
serial RS232. É possível também um DCE estabelecer comunicação com outro 
DCE. Como exemplo, posso citar dois dispositivos microcontrolados que disponham 
de periféricos UART para estabelecer comunicação serial. 
Figura 6 - Terminais DTE-DCE 
 
 A interface RS232 foi criada com o propósito inicial de conectar Equipamento de 
Terminais de Dados (DTE), a aparelhos de Modem (DCE - Equipamentos de 
Comunicação de Dados).Com o passar dos anos e a evolução da tecnologia, 
surgiram novos equipamentos. Atualmente o RS232 é usado para conectar uma 
grande variedade de dispositivos eletrônicos ao computador, como mouses, 
dispositivos de telemetria, PDVs, balanças digitais, códigos de barra, impressoras, 
Nobreaks, dispositivos microcontrolados em geral entre outros. 
 Quando estivermos estudando os sinais dos conectores RS232, iremos 
perceber que os pinos são nomeados com termos técnicos referente as linhas de um 
Modem. 
Tipos de transmissão 
 Numa transmissão serial é preciso que o DTE entre em sincronismo como o 
DCE para que os bits possam ser enviados pela linha. Dispositivos seriais podem 
transmitir de forma síncrona ou assíncrona. O receptor, através de seus circuitos 
dedicados, monitora o sinal enviado pelo transmissor e, dessa forma, obtém os bits 
que estão sendo transmitidos, no mesmo intervalo de tempo. 
Síncrona 
 No tipo de transmissão síncrona, o DTE fica constantemente enviando sinais 
para o DCE, com o objetivo de manter a sincronização da comunicação. Esse tipo 
C ROGER OM – Curso USB – www.rogercom.com
 
Aula 11 – Módulo-USB / Página 96 
de transmissão é mais rápido que a assíncrona, porque não necessita enviar sinais 
de controle para cada byte transmitido, como, Start bit e Stop bits. 
 Na transmissão síncrona, envia-se um ou mais bytes de sincronismo antes do 
início dos pacotes de dados, e depois, alguns bytes para indicar o final dos mesmos. 
Após a transferência dos pacotes, o DTE continua enviando bytes de controle para 
manter o sincronismo com o DCE. 
Figura 7 - Exemplo didático de uma transmissão Síncrona 
 
 A figura acima mostra uma transmissão síncrona em nível físico (de hardware). 
Observe que o DTE é quem envia o sinal de clock para manter o DCE em 
sincronismo. Os bits dos pacotes são enviados um-a-um através da linha de Dados 
a cada mudança do sinal de clock. 
 Como exemplo, vamos imaginar a transferência do pacote de dados: "Curso 
USB/Serial". Veja: 
sinc sinc sinc... INICIO_BLOCO "Curso USB/Serial" FIM_BLOCO sinc sinc sinc... 
 Muitos chips de memória usam a transmissão síncrona para ler e gravar dados. 
Assíncrona 
 No tipo de transmissão assíncrona, o relógio do DTE e DCE são configurados 
para oscilarem na mesma freqüência (velocidade de transmissão). 
 Numa transmissão assíncrona os dados são divididos em pequenos pacotes de 
dados de tamanho entre 5 a 8 bits, para minimizar o risco do oscilador do 
transmissor e do receptor variar. Se os dados não fossem divididos em pacotes 
menores, os relógios iriam gradativamente perder o sincronismo, conforme fosse 
passando o tempo, isso porque o temporizador (relógio) do DTE é independente do 
que há no DCE. É por isso que na transmissão serial RS232 utiliza-se um bit de 
início (Start bit), e alguns bits de parada (Stop bit), para garantir o sincronismo. 
Figura 8 - Exemplo didático de uma transmissão Assíncrona 
 
C ROGER OM – Curso USB – www.rogercom.com
 
Aula 11 – Módulo-USB / Página 97 
 A figura acima mostra uma transmissão assíncrona; DTE e DCE teem relógios 
de temporização independentes; são configurados com a mesma velocidade (Baud); 
mas para garantir a sincronização ideal, os dados teem tamanho máximo de 8 bits (9 
quando utilizá-se o bit de paridade), e são precedidos e finalizados com bits de 
sincronismos, respectivamente (Start bit e Stop bit). 
 A figura abaixo mostra a formatação de um Frame (quadro) de 11 bits de 
extensão, para envio numa transmissão assíncrona. 
Figura 9 - Formatação de um Frame (Quadro) de 11 bits 
 
 Na figura acima temos um Frame de 11 bits formatado da seguinte forma: 1 bit 
de Start (início); 8 bits de dado representado no exemplo como o caracter "A"; 1 bit 
para a paridade e 1 bit de Stop (parada). 
 Quando a linha está ociosa (inativa, idle ou inoperante) ela permanece no 
estado Marca ou "1" lógico, ou seja, com níveis de tensões entre -3v a -25v. 
 Para transmitir um caracter pela linha serial, o transmissor primeiramente envia 
um 1 bit de Start com o objetivo de zerar e inicializar o temporizador do receptor, 
avisando que um novo caracter está a caminho. Após os bits de dados e a paridade 
(opcional) terem sido enviados, logo 1 Stop bit é transmitido para avisar ao receptor 
o final do Frame, e manter a linha no estado inativa novamente. 
 Observe também na figura acima, o tempo de 1 bit (104uS). Ou seja, o intervalo 
de tempo que o receptor terá para identificar o estado do sinal Marca (1) ou Espaço 
(0). Esse tempo também é o mesmo usado pelo transmissor enviar um bit. 
 No exemplo da figura acima estamos usando uma taxa de transferência de 9600 
Baud. Sendo assim, a cada 104uS um sinal é alternado, ou seja, passa de um 
estado para outro. 
 Para saber o tempo de cada bit, divida o número 1 pela taxa de baud: 1/9600 = 
104uS (arredondado). Este é o tempo de um bit. 
C ROGER OM – Curso USB – www.rogercom.com
 
Aula 11 – Módulo-USB / Página 98 
Figura 10 - Exemplo de uma transmissão serial 
 
 A figura acima mostra a animação de uma transmissão serial bit-a-bit (DTE--
>DCE), usando como exemplo o caracter "A". 
Bit de Paridade 
 O bit de paridade é utilizado numa transmissão serial assíncrona, como uma 
solução primária em nível de hardware para detectar a ocorrência de erros na 
transmissão de dados. A cada byte enviado, o receptor verifica se os bits do mesmo 
não foram modificados. O hardware receptor verifica isso somando todos os bits "1" 
que há no byte, mais o valor do bit de paridade. O resultado dessa soma deverá ser 
Par ou ímpar. Se a paridade na configuração do DTE e DCE foi definida, por 
exemplo, como PAR, a soma dos bits "1" do dado, mais o valor do bit de paridade 
recebido tem que ser PAR para um dado correto. Se por acaso o resultado der 
Ímpar, isso indica que o dado recebido sofreu alguma modificação em algum 
momento da transmissão, ou seja, houve um erro. 
 Se a transmissão não for usar bit de paridade, isso deve ser avisado na 
configuração do DTE e DCE. 
 Os tipos de paridades que podem ser usadas para configurar os terminais são: 
Nenhuma, Ímpar, Par, Marca ou Espaço. As paridades Marca e Espaço não são 
mais usadas, e ainda constam nas configurações para manter compatibilidade com 
os antigos sistemas de transmissão serial. 
Figura 11 - Exemplo 1 - paridade PAR 
 
C ROGER OM – Curso USB – www.rogercom.com
 
Aula 11 – Módulo-USB / Página 99 
 A figura acima demonstra o uso da paridade PAR. Temos um dado de 8 bits 
00110100 (com um total de 3 bits "1", resultando em um número Ímpar). Para que a 
soma dos bits de dado+paridade seja Par, o circuito transmissor adiciona o valor "1" 
ao bit de paridade. Assim, a soma dos bits de dados+paridade fica igual a 4 (PAR). 
Após isso, o transmissor envia o Frame ao receptor. Por sua vez, ao receber o 
Frame, o receptor verifica se a soma dos bits de dado+paridade é um resultado 
também PAR, confirmando o sucesso. Caso contrário, é detectado um erro de 
transmissão. 
 A demonstração abaixo segue o mesmo princípio da anterior, para adicionar o 
bit de paridade pelo transmissor e a verificação pelo receptor, levando em conta 
também a paridade PAR. A diferença abaixo é que a soma dos bits do dado já é um 
resultado Par. Nesse caso, o hardware do transmissor adiciona um valor "0" ao bit 
de paridade, para que o resultado da soma dos bits dado+paridade seja um 
resultado PAR. 
Figura 12 - Exemplo 2 - paridade PAR 
 
 
Interface RS232 
 O padrão RS232 foi criado em 1962 para conectar diretamente dois dispositivos. 
Foi padronizado pela Associação de Indústria de Eletrônica (EIA). Originalmente era 
usado para conectar dispositivos de teletipo que utilizavam o código ASCII para 
transmitir dados de forma assíncrona. As letras "RS" quer dizer “Recomended 
Standard” (padrão recomendado) e 232,é a versão. O padrão RS232 foi criado com 
o objetivo de definir as características elétricas, temporização, mecânicas e funções 
dos sinais da interface serial, para conectar dispositivos ponto-a-ponto. 
 Com o passar dos anos o padrão evoluiu e teve a terceira revisão em 1969 (RS-
232C) versão "C". EIA-232D e EIA-232E foram atualizadas respectivamente em 
1987 e 1991. 
 Por volta de 1984 o único padrão de comunicação serial em computadores 
pessoais IBM-PC era o RS232C. Mais tarde surgiram o irDA (Infra-vermelho), USB 
entre outros. 
 
ROGER OM – Curso USB – www.rogercom.com
 
Aula 11 – Módulo-USB / Página 100 
C 
Sinais elétricos 
 O gráfico abaixo mostra as tensões elétricas para representar os sinais lógicos 
usados no padrão RS232. Observe que há uma região de transição do sinal onde a 
tensão é utilizada para representar o "0" e o "1" lógico. Veja também que o "0" lógico 
é associado a faixa de tensão positiva e o "1" a faixa de tensão negativa. 
Figura 13 - Sinal elétrico do padrão RS232 
 
 As tensões máximas que a interface RS232 suporta é 25v. Um Espaço ou zero 
(0) lógico, é representado por tensões positivas, entre +3v a +25v. Uma Marca ou o 
um (1) lógico, é representado por tensões entre -3v à -25v. Já a faixa de tensões 
entre -3v e +3v é conhecida como uma região de transição, sendo considerada 
indefinida. Ou seja, esta região não representa nenhum estado lógico válido no 
padrão RS232. 
 Algumas interfaces RS232 nos computadores atuais fornecem -12v e +12v, mas 
suportam mínimas de -25v e máximas de +25v.

Continue navegando