Melhor resposta
UART é um protocolo para transferir dados em série de um nó para outro. O protocolo nada mais é do que um conjunto de regras governado por todas as partes que participam da comunicação para obter uma comunicação livre de erros.
especialmente na comunicação serial, o protocolo é obrigatório. na comunicação paralela, em pulso único, todos os bits são transferidos para outro nó, mas na comunicação serial, os bits são transferidos um por um, portanto, precisam de vários pulsos. portanto, devemos informar ao sistema quando você começa a transmitir dados, quantos bits existirão e como sua transferência de dados terminará. você também deve integrar alguma técnica de verificação de erros. todas essas regras estão incluídas no protocolo. UART é um protocolo TTL que é suportado pela maioria dos microcontroladores.
Mas quando queremos mostrar nossos dados na tela de meios hiperterminais do PC (computador), devemos transferi-los para o PC através da PORTA COM disponível no painel traseiro. aí vem o conceito de padrões que nada mais são do que uma camada física para a transferência dos dados.
O PC tem PORTA COM que segue o padrão RS 232 para aceitar os dados. O diagrama de pinos do DB9 é muito conhecido e facilmente disponível na internet. Mas os níveis lógicos desta PORTA foram decididos muito antes, quando o TTL não estava apenas na imagem.
De acordo com o padrão RS 232: lógico 1 significa -3V a -25V
e lógico 0 significa + 3V a + 25V
onde nosso protocolo UART gera dados de acordo com a lógica TTL.
onde lógica 1 significa 2,4V a 5V
lógica 0 significa 0 para 0,4 V
portanto, os dados do protocolo UART não podem ser transferidos diretamente na porta RS 232. pode interpretá-lo mal. portanto, um driver de linha chamado MAX232 é usado para converter os níveis TTL em níveis RS 232.
Da mesma forma, temos outros padrões que são perfeitamente compatíveis com o protocolo UART viz. Padrão RS 485 e padrão RS 422 (ambos são adequados para topologia de barramento)
Resposta
Não . RS-232 é um padrão que define quais tipos de sinais existem em um tipo de conexão serial para dispositivos como modems. Ele foi originalmente projetado para ser especificamente para modems, e entre Data Terminal Equipment (DTEs computadores e modems) e Data Communications Equipment (DCEs – modems). Ele tem sido usado para muitos outros dispositivos também.
Enquanto RS-232 define qual sinal está em qual pino, os níveis de tensão usados e algumas coisas assim, ele * não * define o conteúdo real de esses sinais.
Portanto, um dispositivo síncrono conectado a um modem coloca quadros de dados muito diferentes na conexão do que um dispositivo assíncrono. A porta serial típica em um PC (ou pelo menos o que costumava ser comum, portas seriais são muito raras atualmente), é uma porta assíncrona. Sistemas maiores costumavam usar protocolos síncronos, bisync, SDLC e HDLC eram nomes comuns. A maior diferença entre os protocolos aysnc e sync é que o quadro do protocolo assíncrono cobre um único caractere e o receptor não se sincroniza com os bits de dados conforme eles passam. O quadro para protocolos síncronos é todo o quadro de dados (muito parecido com os protocolos de rede modernos), e o receptor extrai informações de clock do sinal para ajustar seu tempo para permanecer em sincronia ao longo de milhares de bits. O primeiro é consideravelmente mais fácil de implementar, mas é menos eficiente (geralmente levando a cerca de 25\% de sobrecarga extra para os bits de parada e início associados a cada caractere) e geralmente é limitado a taxas de dados mais baixas.
De qualquer forma , os dispositivos iniciais implementados nestes protocolos foram construídos a partir de componentes discretos e SSI, com diferentes circuitos para assíncrono e sincronização, bem como os diferentes tipos de protocolos de sincronização. Conforme os circuitos integrados ficaram maiores, as pessoas começaram a se integrar. Nos primeiros dias, você poderia ter um receptor de um chip e um transmissor de um chip, mas muitas vezes ainda tinha chips adicionais para clock e controle e outros enfeites. Mas foi uma grande melhoria.
Conforme as coisas melhoraram, a maioria das funções foi integrada em um único chip. Portanto, um UART é um receptor / transmissor assíncrono universal, integrado essencialmente todas as funções necessárias para um lado de uma conexão serial em um link RS-232 – a lógica de controle, um receptor e um tramsitter. Um USART implementou suporte (geralmente) para os protocolos aysnc e sync. Observe que os drivers de linha reais muitas vezes ainda estão separados.
Portanto, uma porta serial em um PC * tem * um UART, é o que coloca o sinal na conexão RS-232, onde um dispositivo está a outra extremidade tem um UART que recebe o sinal enviado e também fornece o mesmo serviço na outra direção. O UART é o hardware que o programador que está escrevendo o driver de dispositivo vê. Existem muitos UARTs diferentes, com interfaces de programação diferentes, mas geralmente todos podem se comunicar (presumindo que possam ser configurados com os mesmos parâmetros), apesar da necessidade de programação diferente.
Portanto, RS-232 define o que está fisicamente nos fios, async ou sync define como os dados são enquadrados, e um UART (ou USART) geralmente é a implementação da lógica necessária para conduzir essa porta no dispositivo em cada extremidade do cabo.
Dito isso, portas seriais síncronas raras em PCs e os quatro termos (porta RS-232, porta assíncrona, porta serial e UART) são freqüentemente usados alternadamente. Não é realmente correto, mas, novamente, portas seriais não assíncronas são raras.