USB em vez de RS232

13

O RS232 não é mais popular como costumava ser e é substituído principalmente por USB [ wikipedia ]. Problemas como os mencionados nesta pergunta também não ajudam sua reputação.

Portanto, em um novo design de sistema, pode-se pensar em usar USB em vez de porta serial para comunicação. No entanto, ainda parece que o RS232 é o protocolo / porta de comunicação serial de sua escolha.

Por que é que? Entendo que mudar máquinas antigas que funcionam com o RS232 é caro, mas o que impede os novos projetistas de sistemas de usar USB em vez do RS232?

Shahbaz
fonte

Respostas:

12

Pelo menos no nível do microcontrolador:

  1. As portas seriais (geralmente TTL ou LVTTL) ainda são a maneira mais comum de se comunicar, uma vez que a maioria dos microcontroladores simples não possui um controlador USB.

    Por exemplo: a maioria dos microcontroladores AVR ou PIC de 8 bits não possui USB, alguns microcontroladores ARM de 32 bits possuem, mas todos costumam ter portas seriais.

  2. A conversão da comunicação serial TTL / LVTTL para RS-232 requer uma conversão de nível lógico "simples", que pode ser feita com ICs muito baratos (MAX232 / MAX3232)

  3. A conversão da comunicação serial TTL / LVTTL para USB quando o seu microcontrolador não possui um controlador USB geralmente requer o uso de um IC (FTDI) um pouco mais caro, que não possui opções de empacotamento através do orifício, apenas montagem em superfície.

  4. Existem alguns detalhes relativos ao protocolo em que é preciso prestar atenção ao usar dispositivos USB em geral, como o nível atual que ele pode solicitar ao host USB. Com portas seriais, você só precisa se preocupar com 3 a 5 parâmetros fixos que precisam ser consistentes em seu sistema (taxa de transmissão, número de bits de parada, paridade etc.).

georgebrindeiro
fonte
9

Simplicidade, eu acho. Uma implementação USB (chips e software de driver) geralmente é mais complexa do que o bom e velho RS232, que pode ser encontrado em muitos microcontroladores de 8 bits. Embora o USB tenha muitos mecanismos de protocolo e seja projetado para lidar com muitos participantes através de um barramento, uma conexão RS232 não possui nada disso. Em vez disso, é a forma "mais bruta" possível de enviar bytes por uma conexão.

Embora o Arduino e a crescente expansão de adaptadores USB para serial mostrem a promessa de que o USB acabará se tornando tão dominante quanto o RS232 costumava ser.

Daniel Eberts
fonte
5

Eu acho que a maior razão pela qual o RS232 permaneceu é a simplicidade na implementação de casos de uso comuns em hardware incorporado - como o envio de uma sequência de bytes ASCII entre dois dispositivos para controle. Os casos de uso para o envio de informações em velocidades muito mais altas disponíveis com USB não valem a pena pela complexidade causada pela implementação da sinalização do protocolo USB .

Como os requisitos para velocidades mais altas aparecem, não ficaria surpreso se o RS-485 se tornasse mais comum com sua interface física muito simples e altas taxas de dados (até 10Mb / s).

thisismyrobot
fonte
4
  • Simplicidade para projetistas de hardware e fácil uso para programadores
  • Confiabilidade
  • Bem conhecido e suportado em muitos sistemas

Especialmente em robótica, quando forçamos a usar USB em vez de RS232 (nossos novos PCs não tinham portas RS232). Enfrentamos muitos problemas:

  1. Qualquer desconexão do soquete USB exige muito esforço para recuperar o sistema. Às vezes, isso leva a uma falha no sistema e tivemos que reiniciar os PCs.

  2. Qualquer choque ou risco o torna desconectado.

  3. Muito tempo de programação

masoud
fonte
2

A latência da comunicação é outro motivo pelo qual o USB1.1 ou o USB2.0 nem sempre é um bom substituto para o RS232. Os dados no barramento USB1.1 ou USB2.0 são formatados em quadros de 1ms ou 125us, respectivamente, o que força o recebimento mínimo a transmitir latência igual a dois períodos de quadro (geralmente mais na prática). Essa é uma consideração importante para o hardware de PC moderno, que geralmente não possui porta RS232 embutida e o conversor USB / RS232 é usado.

Paul Jurczak
fonte