Cabo Conversor USB Serial UART TTL PL2303HX Dupont: Manual Técnico Completo

Cabo Conversor USB Serial UART TTL PL2303HX Dupont — manual técnico completo

Introdução

Neste manual, será apresentado como instalar, configurar e utilizar o Cabo Conversor USB Serial UART TTL PL2303HX Dupont. Se desejar adquirir este produto, clique aqui.

A comunicação serial assíncrona universal (UART — Universal Asynchronous Receiver-Transmitter) constitui a interface fundamental para gravação de firmware, depuração de inicialização (boot logs), parametrização de módulos via comandos AT e telemetria direta entre computadores e sistemas embarcados. Como os computadores pessoais e industriais modernos operam exclusivamente com portas USB (Universal Serial Bus) baseadas em sinalização diferencial, faz-se necessária uma ponte conversora de protocolo e nível lógico para conectar o computador diretamente aos barramentos RX e TX de microcontroladores em lógica TTL (Transistor-Transistor Logic).

Este manual técnico aborda em profundidade as características elétricas do controlador Prolific PL2303HX alojado no conector USB do cabo, a identificação padronizada por cores dos quatro condutores terminados em conectores Dupont fêmea, o diagrama de ligação em topologia cruzada (TXD ↔\leftrightarrow RXD), a configuração de drivers VCP (Virtual COM Port) em Windows, Linux e macOS, o procedimento de verificação física por loopback e exemplos completos de código em C++ para comunicação bidirecional com placas Arduino e ESP32.


Especificações técnicas

Principais especificações

A tabela abaixo apresenta os parâmetros estruturais, físicos e de protocolo do Cabo Conversor USB Serial UART TTL PL2303HX Dupont (código RB2073).

ParâmetroEspecificação
Modelo / SKUCabo Conversor USB Serial UART TTL PL2303HX Dupont / RB2073
Controlador Ponte USB-UARTProlific PL2303HX (arquitetura USB para Serial Assíncrona em encapsulamento SSOP-28)
Interface no Computador (Host)USB 2.0 Full-Speed (12 Mbps12\text{ Mbps}), compatível com USB 1.1 / 2.0 / 3.0 (conector USB Tipo A macho)
Interface no Dispositivo (Alvo)UART Assíncrona em nível lógico TTL (4 terminais Dupont fêmea individuais 1P)
Identificadores USB PadrãoVendor ID (VID): 0x067B / Product ID (PID): 0x2303
Comprimento Total do Cabo1,0 m1,0\text{ m} (cabo cilíndrico flexível em PVC preto)
Diâmetro Externo do Cabo3,5 mm3,5\text{ mm}
Peso Aproximado25 g25\text{ g}
Padrão dos Conectores de Saída4 alojamentos individuais fêmea de passo 2,54 mm2,54\text{ mm} (0,1 pol0,1\text{ pol})
Buffer Interno de HardwareBuffer duplo de 256 bytes256\text{ bytes} para recepção (RX) e 256 bytes256\text{ bytes} para transmissão (TX)
Formatos de Quadro Serial5, 6, 7 ou 8 bits de dados; 1, 1.5 ou 2 stop bits; paridade Odd, Even, Mark, Space ou None
Sistemas Operacionais SuportadosWindows (7 / 8 / 8.1 / 10 / 11 via driver VCP), Linux (módulo nativo pl2303) e macOS

Características elétricas e operacionais

Os limites elétricos e operacionais abaixo baseiam-se na folha de dados oficial (datasheet) do controlador Prolific PL2303HX.

Parâmetro ElétricoValor MínimoValor TípicoValor MáximoUnidade
Tensão de Entrada USB (VBUSV_{\text{BUS}})4,354,355,05,05,255,25V DC\text{V DC}
Tensão de Saída no Fio Vermelho (+5V+5\text{V})4,754,755,05,05,255,25V DC\text{V DC}
Corrente Máxima Disponível no Fio +5V+5\text{V} (porta USB 2.0)——500500mA\text{mA}
Nível Lógico UART (TXD / RXD — VDD_325V_{\text{DD\_325}} regulado)3,03,03,33,33,63,6V DC\text{V DC}
Tolerância de Tensão na Entrada RXD−0,3-0,33,3 a 5,03,3 \text{ a } 5,05,55,5V DC\text{V DC}
Tensão de Saída em Nível Alto (VOHV_{\text{OH}} em TXD)2,42,43,33,33,63,6V DC\text{V DC}
Tensão de Saída em Nível Baixo (VOLV_{\text{OL}} em TXD)0,00,00,150,150,40,4V DC\text{V DC}
Tensão de Entrada para Nível Alto (VIHV_{\text{IH}} em RXD)2,02,03,33,35,55,5V DC\text{V DC}
Tensão de Entrada para Nível Baixo (VILV_{\text{IL}} em RXD)−0,3-0,30,00,00,80,8V DC\text{V DC}
Corrente de Operação do CI PL2303HX (Ativo)—17172525mA\text{mA}
Corrente em Modo Suspenso USB (Suspend)—250250400400μA\mu\text{A}
Taxa de Transmissão (Baud Rate) Programável75759600/1152009600 / 11520012288001228800bps\text{bps}
Temperatura de Operação−40-40+25+25+85+85∘C^{\circ}\text{C}

Na comunicação serial assíncrona, a duração temporal de cada bit individual (TbitT_{\text{bit}}, em segundos) transmitido nos condutores TXD e RXD é inversamente proporcional à taxa de transmissão (Baud Rate, em bps\text{bps}):

Tbit=1Baud RateT_{\text{bit}} = \frac{1}{\text{Baud Rate}}

Considerando a estrutura padrão de quadro 8N1 (1 start bit+8 data bits+0 parity+1 stop bit=10 bits1\text{ start bit} + 8\text{ data bits} + 0\text{ parity} + 1\text{ stop bit} = 10\text{ bits} por cada byte útil enviado), a taxa máxima efetiva de transferência de bytes (Throughput, em bytes/s\text{bytes/s}) é calculada por:

Throughputmaˊx=Baud Rate10\text{Throughput}_{\text{máx}} = \frac{\text{Baud Rate}}{10}

Portanto, a uma velocidade padrão de 115200 bps115200\text{ bps}, cada bit possui largura temporal de Tbit≈8,68 μsT_{\text{bit}} \approx 8,68\,\mu\text{s} e o canal atinge uma transferência máxima contínua de 11520 bytes/s11520\text{ bytes/s} (≈11,25 kB/s\approx 11,25\text{ kB/s}).


Descrição do produto

O que é o Cabo Conversor USB Serial UART TTL PL2303HX Dupont?

O Cabo Conversor USB Serial UART TTL PL2303HX Dupont é uma ferramenta de interface e programação que integra todo o circuito eletrônico de conversão USB-Serial no interior da carcaça plástica injetada do conector USB Tipo A. O circuito impresso interno abriga o controlador Prolific PL2303HX, que reúne um transceptor físico USB 2.0 Full-Speed, regulador de tensão linear integrado de 3,3 V3,3\text{ V} (VDD_325V_{\text{DD\_325}}), gerador de clock interno de alta precisão e controlador serial assíncrono completo com buffers FIFO bidirecionais.

A partir da extremidade do conector USB, estende-se um cabo blindado flexível de 1 metro1\text{ metro} com 3,5 mm3,5\text{ mm} de espessura que se ramifica na ponta oposta em quatro vias individuais nas cores vermelho, preto, branco e verde. Cada via possui seu próprio alojamento plástico fêmea padrão Dupont de 2,54 mm2,54\text{ mm}, permitindo conexão direta às barras de pinos (pin headers) de placas de desenvolvimento, módulos de rádio, receptores GPS e computadores de placa única sem necessidade de protoboard ou cabos adaptadores adicionais.

Para que serve?

  • Gravação de código e bootloaders em microcontroladores sem USB integrada: transferência direta de firmware para placas compactas como Arduino Pro Mini, ESP8266 (ESP-01 / ESP-12F), ESP32-CAM, STM32F103 (Blue Pill via bootloader USART1) e microcontroladores AVR/PIC.
  • Acesso ao terminal de depuração (Serial Console) em Linux Embarcado: monitoramento de logs de inicialização (U-Boot e Kernel) e login via terminal serial (headless) na barra GPIO de 40 pinos de placas Raspberry Pi, Orange Pi, Banana Pi, roteadores e gateways IoT.
  • Testes de bancada e configuração de módulos seriais via comandos AT: comunicação direta a partir do PC com módulos Bluetooth (HC-05 / HC-06), GPS (NEO-6M / NEO-8M), GSM/GPRS (SIM800L), LoRa UART e leitores RFID, agilizando a validação de hardware antes da integração ao microcontrolador.

Por que devo usar?

  • Formato integrado em cabo de 1 metro com pontas Dupont independentes: dispensa o uso de cabos extensores USB somados a pequenos módulos PCB avulsos, permitindo conectar os terminais +5V, GND, RXD e TXD mesmo quando os pinos da placa-alvo estão distribuídos em posições distantes entre si.
  • Compatibilidade nativa com lógica de 3,3 V3,3\text{ V} e 5 V5\text{ V}: o regulador interno do PL2303HX alimenta o estágio de saída serial em 3,3 V3,3\text{ V} (seguro para os pinos de dados do ESP32, ESP8266, STM32 e Raspberry Pi), enquanto sua entrada RXD é tolerante a sinais de 5 V5\text{ V} vindos de placas Arduino Uno, Nano e Mega, além de fornecer +5 V+5\text{ V} (VBUSV_{\text{BUS}}) no fio vermelho para alimentar o circuito externo.
  • Ampla faixa de velocidades (Baud Rate de 75 bps75\text{ bps} a 1,2 Mbps1,2\text{ Mbps}): suporta desde velocidades baixas de equipamentos industriais legados até altas taxas de transferência (115200 bps115200\text{ bps}, 230400 bps230400\text{ bps}, 460800 bps460800\text{ bps} e 921600 bps921600\text{ bps}) exigidas para upload rápido de memória Flash em módulos ESP32 e ESP8266.

Quando devo usar?

Utilize este cabo sempre que precisar de uma conexão serial UART em nível lógico TTL (3,3 V3,3\text{ V} ou 5 V5\text{ V}) rápida e direta entre a porta USB do computador e pinos de cabeçalho de placas eletrônicas em bancada (até 1 m1\text{ m} de distância).

Em contrapartida, não utilize este cabo nos seguintes cenários:

  1. Equipamentos com porta serial padrão RS-232 (±12 V\pm 12\text{ V}): dispositivos industriais com conector DB9 operam com tensões bipolares de até ±15 V\pm 15\text{ V} e lógica invertida, o que queimaria instantaneamente o controlador PL2303HX. Nesses casos, utilize um Cabo Conversor USB para RS-232 DB9 com transceptor MAX232.
  2. Comunicação industrial a longas distâncias: barramentos UART TTL não balanceados sofrem queda de tensão e ruído eletromagnético acima de 1 a 2 m1\text{ a }2\text{ m}. Para redes de longa distância, utilize um Conversor USB para RS-485.
  3. Aplicações que exigem pino DTR físico para Auto-Reset automático: como o cabo disponibiliza 4 condutores (+5V, GND, RXD e TXD) e não expõe o sinal de controle de modem DTR/RTS nos conectores Dupont, a gravação de placas como Arduino Pro Mini ou ESP32-CAM requer o acionamento manual do botão RESET (ou jumper GPIO0) na placa. Se desejar reinicialização automática sem intervenção manual ou isolamento total de conflitos de driver Prolific no Windows 11, considere utilizar o Cabo Conversor USB Serial UART TTL CP2102 Dupont ou um módulo conversor de 6 pinos com terminal DTR.

Pinout e diagrama de entradas/saídas

O cabo adota o padrão internacional de quatro cores para adaptadores USB-TTL. A tabela a seguir detalha cada condutor, seu sentido de tráfego em relação ao próprio cabo conversor e sua função elétrica.

Pino / Cor do FioNome do Sinal (no Cabo)Direção (Referência: Cabo PL2303HX)Nível Elétrico / TensãoFunção Técnica Detalhada
Vermelho+5V / VCCSaída de Alimentação+5,0 V DC+5,0\text{ V DC} (VBUSV_{\text{BUS}} USB)Disponibiliza alimentação positiva de 5 V5\text{ V} proveniente da porta USB do computador (até 500 mA500\text{ mA}) para energizar placas externas através do pino 5V ou VIN.
PretoGNDReferência Comum0 V0\text{ V} (Terra)Referência de potencial elétrico (0 V0\text{ V}) compartilhada entre a porta USB do computador e o sistema embarcado. Conexão obrigatória em qualquer montagem.
BrancoRXDEntrada de Dados SerialLógica TTL 3,3 V3,3\text{ V} (tolerante a 5 V5\text{ V})Pino Receptor (Receive Data) do controlador PL2303HX. Recebe os dados seriais transmitidos pela placa externa. Deve ser conectado ao pino TX do microcontrolador.
VerdeTXDSaída de Dados SerialLógica TTL 3,3 V3,3\text{ V}Pino Transmissor (Transmit Data) do controlador PL2303HX. Envia os dados seriais gerados pelo computador para a placa externa. Deve ser conectado ao pino RX do microcontrolador.

💡 Dica: Uma regra prática de bancada para nunca inverter os dois fios de dados é associar a letra inicial da cor à ação do sinal a partir do cabo: Verde = Vai (TXD, o dado sai do cabo e vai para o RX da placa) e Branco = Busca (RXD, o cabo recebe/busca o dado vindo do TX da placa).


Como fazer a ligação

Requisitos de instalação e alimentação

Antes de realizar as conexões físicas nos terminais Dupont de 2,54 mm2,54\text{ mm}, verifique o modo de alimentação elétrica do circuito-alvo:

  1. Alimentação fornecida pelo cabo USB-Serial (montagem a 4 fios): caso a placa ou módulo (por exemplo, um Arduino Pro Mini de 5 V5\text{ V}, um módulo ESP32-CAM pelo pino 5V ou um módulo GPS NEO-6M) esteja desenergizado e consuma menos de 500 mA500\text{ mA}, conecte todos os 4 fios (Vermelho, Preto, Branco e Verde).
  2. Placa com alimentação própria ou fonte externa (montagem a 3 fios): se o microcontrolador ou placa (como um Raspberry Pi, uma placa de controle industrial ou um Arduino já conectado por outro cabo USB/fonte externa) possuir sua própria fonte de energia, mantenha o Fio Vermelho (+5V) desconectado e isolado. Conecte exclusivamente os 3 fios de sinal e referência: Preto (GND), Branco (RXD) e Verde (TXD).
  3. Atenção aos pinos 3V3 de microcontroladores de 3,3 V3,3\text{ V}: o fio Vermelho fornece +5,0 V+5,0\text{ V} diretos do barramento USB. Em placas de 3,3 V3,3\text{ V} (como ESP32 DevKit ou NodeMCU), o fio Vermelho só deve ser ligado no pino VIN / 5V (entrada do regulador AMS1117 da placa), nunca no pino de saída 3V3.

Diagrama de ligação elétrica

Em qualquer barramento UART assíncrono, a conexão das vias de dados deve seguir a topologia cruzada (cross-over): o pino transmissor do cabo (TXD) liga-se ao receptor da placa (RX), enquanto o receptor do cabo (RXD) liga-se ao transmissor da placa (TX). O diagrama esquemático vetorial abaixo apresenta a ligação completa entre a porta USB do computador, o Cabo Conversor PL2303HX Dupont e um microcontrolador.

Diagrama de ligação elétrica do Cabo Conversor USB Serial UART TTL PL2303HX Dupont

Conforme detalhado no diagrama esquemático acima:

  • O Fio Vermelho (+5V) alimenta o pino 5V / VIN da placa-alvo (quando esta não possui fonte externa ativa);
  • O Fio Preto (GND) interliga o terra da porta USB do computador ao pino GND da placa-alvo, garantindo a referência comum de 0 V0\text{ V};
  • O Fio Branco (RXD do cabo) realiza o cruzamento para o pino TX (TXD0) do microcontrolador;
  • O Fio Verde (TXD do cabo) realiza o cruzamento para o pino RX (RXD0) do microcontrolador.

Tabela de conexões dos terminais

A tabela a seguir resume o mapeamento De →\to Para entre os 4 conectores Dupont fêmea do cabo PL2303HX e as principais placas do mercado.

Terminal no Cabo PL2303HX (Cor / Sinal)Arduino Uno / Nano / Mega (UART Software/Hardware)Arduino Pro Mini (Cabeçalho FTDI)ESP32 DevKit V1 / ESP32-CAMRaspberry Pi (Barra GPIO 40 Pinos)
Fio Vermelho (+5V)5V (apenas se sem fonte/USB)VCC (5V) ou RAW5V / VINNão conectar (usar fonte própria)
Fio Preto (GND)GNDGND / BLKGNDPino 6 (GND)
Fio Branco (RXD — Entrada)Pino TX (ex.: D11 ou D1)TXO (TXD)TX0 (GPIO1) ou GPIO17Pino 8 (GPIO14 / TXD0)
Fio Verde (TXD — Saída)Pino RX (ex.: D10 ou D0)RXI (RXD)RX0 (GPIO3) ou GPIO16Pino 10 (GPIO15 / RXD0)

Cuidados e observações de segurança

⛔ Perigo: Jamais conecte o Fio Vermelho (+5V) ao pino 3V3 de módulos que operam exclusivamente em 3,3 V3,3\text{ V} sem regulador de tensão (como o módulo Wi-Fi ESP8266 ESP-01 ou sensores I2C/UART de 3,3 V3,3\text{ V}). A aplicação direta de 5 V5\text{ V} na linha de 3,3 V3,3\text{ V} causará dano irreversível imediato ao circuito integrado. Além disso, nunca ligue o fio Vermelho se a placa já estiver energizada por uma fonte externa.

⚠️ Atenção: Se durante os testes nenhum caractere aparecer no Monitor Serial ou surgirem símbolos truncados, verifique três pontos críticos: (1) se o Fio Preto (GND) está firmemente conectado ao GND da placa; (2) se os fios Verde (TXD) e Branco (RXD) estão devidamente cruzados com RX e TX da placa; e (3) se a taxa de transmissão (Baud Rate) selecionada no software do PC é exatamente igual à configurada em Serial.begin() no microcontrolador.


Como usar

Guia de operação passo a passo

Siga o roteiro técnico abaixo para configurar o driver no sistema operacional, reconhecer a porta serial e executar o teste funcional de loopback antes de acoplar o cabo ao circuito definitivo.

Passo 1: Instalação do driver e identificação da porta serial

  • No Linux (Ubuntu, Debian, Mint, Fedora, Raspberry Pi OS): o suporte ao controlador Prolific PL2303HX já é nativo no kernel Linux através do módulo pl2303. Ao inserir o conector USB no computador, o sistema cria automaticamente o dispositivo /dev/ttyUSB0 (ou /dev/ttyUSB1). Para verificar a detecção pelo terminal, execute:
lsusb | grep -i 067b:2303
dmesg | grep -i pl2303 | tail -n 5
  • No Windows (7 / 8 / 8.1 / 10 / 11): conecte o cabo à porta USB e abra o Gerenciador de Dispositivos (Win + X →\to Gerenciador de Dispositivos →\to Portas (COM e LPT)). O Windows Update instalará automaticamente o driver Prolific USB-to-Serial Comm Port (COMx).

💡 Dica: Em versões recentes do Windows 10 e Windows 11, a atualização automática da Microsoft pode instalar o driver Prolific versão 3.8.x ou superior, que exibe o aviso “PL2303HXA Phased Out Since 2012. Please contact your supplier” (ou Erro Código 10) para chips da revisão clássica PL2303HX (Rev. A). Caso isso ocorra, a solução técnica definitiva consiste em instalar o driver legado oficial Prolific PL2303 Driver v3.3.2.102 (ou v3.4.67.325) e selecioná-lo manualmente em Gerenciador de Dispositivos →\to Atualizar Driver →\to Procurar software de driver no computador →\to Permitir que eu escolha em uma lista de drivers disponíveis no computador.

Passo 2: Teste de autodiagnóstico físico (Loopback Test)

Para validar o funcionamento elétrico do cabo e do driver antes de conectá-lo a um microcontrolador:

  1. Com os quatro conectores Dupont desconectados de qualquer circuito, utilize um jumper macho-macho (ou um terminal metálico) para interligar o Fio Verde (TXD) diretamente ao Fio Branco (RXD);
  2. Mantenha os fios Vermelho (+5V) e Preto (GND) desencapados/livres, sem encostar um no outro;
  3. Conecte o cabo ao computador, abra o Monitor Serial da Arduino IDE (ou o software PuTTY / Tera Term), selecione a porta COMx (ou /dev/ttyUSB0) e configure qualquer velocidade (ex.: 9600 ou 115200 baud);
  4. Digite uma frase de teste e pressione Enter. Como o transmissor está fechado em anel com o receptor, a mesma frase deverá retornar imediatamente na janela do terminal. Se o eco ocorrer, o hardware e o driver do cabo PL2303HX estão 100% íntegros.

Modos de operação e ajustes

O cabo conversor PL2303HX permite operar em três modos clássicos de engenharia embarcada:

  1. Modo Terminal de Telemetria e Comando (3 ou 4 vias): comunicação em tempo real entre aplicações no PC (Python pyserial, Node-RED, LabVIEW ou Monitor Serial) e a porta UART de microcontroladores.
  2. Modo Gravação de Bootloader Serial (Acionamento Manual de Reset): como o cabo dispõe de 4 vias (+5V, GND, RXD e TXD), ao gravar placas sem conversor USB integrado basta realizar a entrada manual em modo de programação:
    • Em placas ESP32-CAM / ESP8266: conecte o pino GPIO0 ao GND antes de energizar a placa (ou pressione RST com GPIO0 aterrado), execute o Upload na Arduino IDE e, ao finalizar 100%, remova o jumper de GPIO0 e reinicie a placa.
    • Em placas Arduino Pro Mini: inicie o Upload na Arduino IDE e, no exato instante em que a barra de status mudar de “Compilando sketch…” para “Carregando…”, pressione e solte rapidamente o botão RESET da placa Pro Mini.
  3. Modo Ponte Direta PC ↔\leftrightarrow Periférico UART: conexão direta dos 4 fios do cabo a módulos GPS, leitores de código de barras ou módulos Bluetooth/LoRa para inspeção de pacotes e envio de comandos de configuração AT diretamente pelo computador.

Exemplos práticos de uso

Exemplo 1: Canal secundário de comando e telemetria no Arduino Uno / Nano via SoftwareSerial

Neste primeiro exemplo, conectamos o Cabo Conversor PL2303HX Dupont aos pinos digitais D10 e D11 de um Arduino Uno ou Nano. Isso cria uma porta serial extra independente da USB nativa da placa, permitindo receber comandos do computador (LED ON, LED OFF, LEITURA) e devolver leituras analógicas formatadas.

Conexões físicas para este exemplo:

  • Fio Preto (GND do cabo) →\to Pino GND do Arduino;
  • Fio Verde (TXD do cabo) →\to Pino D10 do Arduino (configurado como RX da biblioteca SoftwareSerial);
  • Fio Branco (RXD do cabo) →\to Pino D11 do Arduino (configurado como TX da biblioteca SoftwareSerial);
  • Fio Vermelho (+5V do cabo) →\to Desconectado (caso o Arduino já esteja alimentado por outra porta USB ou fonte externa).

Compile e grave o sketch C++ abaixo na Arduino IDE:

/**
 * RoboBuilders - Manual Técnico: Cabo Conversor USB Serial UART TTL PL2303HX Dupont
 * Exemplo 1: Comunicação Bidirecional com Arduino Uno/Nano via SoftwareSerial
 *
 * Conexões do Cabo PL2303HX (RB2073) no Arduino:
 * - Fio Preto   (GND) -> GND do Arduino
 * - Fio Verde   (TXD) -> Pino D10 do Arduino (RX da SoftwareSerial)
 * - Fio Branco  (RXD) -> Pino D11 do Arduino (TX da SoftwareSerial)
 * - Fio Vermelho(+5V) -> Desconectado (se o Arduino já possuir alimentação própria)
 */

#include <Arduino.h>
#include <SoftwareSerial.h>

// Mapeamento dos pinos para o cabo PL2303HX
constexpr uint8_t PINO_RX_PL2303 = 10; // Recebe sinal do Fio Verde (TXD do cabo)
constexpr uint8_t PINO_TX_PL2303 = 11; // Envia sinal para o Fio Branco (RXD do cabo)
constexpr uint8_t PINO_LED = LED_BUILTIN;

// Instancia a porta serial por software nos pinos D10 (RX) e D11 (TX)
SoftwareSerial serialPL2303(PINO_RX_PL2303, PINO_TX_PL2303);

unsigned long ultimoEnvioMs = 0;
constexpr unsigned long INTERVALO_LOG_MS = 3000;

void interpretarComando(String cmd) {
  cmd.trim();
  cmd.toUpperCase();

  if (cmd == "LED ON") {
    digitalWrite(PINO_LED, HIGH);
    serialPL2303.println(F("[OK] LED integrado acionado (HIGH)."));
  } else if (cmd == "LED OFF") {
    digitalWrite(PINO_LED, LOW);
    serialPL2303.println(F("[OK] LED integrado desligado (LOW)."));
  } else if (cmd == "LEITURA") {
    int adcBruto = analogRead(A0);
    float tensao = (adcBruto * 5.0f) / 1023.0f;
    serialPL2303.print(F("[ADC A0] Valor Bruto: "));
    serialPL2303.print(adcBruto);
    serialPL2303.print(F(" | Tensao: "));
    serialPL2303.print(tensao, 2);
    serialPL2303.println(F(" V"));
  } else if (cmd.length() > 0) {
    serialPL2303.print(F("[ERRO] Comando invalido: "));
    serialPL2303.println(cmd);
    serialPL2303.println(F("Comandos disponiveis: LED ON | LED OFF | LEITURA"));
  }
}

void setup() {
  pinMode(PINO_LED, OUTPUT);
  digitalWrite(PINO_LED, LOW);

  // Porta serial nativa (opcional para monitoramento local)
  Serial.begin(115200);

  // Inicializa o barramento UART com o cabo PL2303HX a 9600 bps (8N1)
  serialPL2303.begin(9600);

  serialPL2303.println(F("======================================================"));
  serialPL2303.println(F("RoboBuilders - Interface UART PL2303HX Ativa (9600 bps)"));
  serialPL2303.println(F("Envie: LED ON, LED OFF ou LEITURA"));
  serialPL2303.println(F("======================================================"));
}

void loop() {
  // 1. Processa comandos recebidos do computador via Cabo PL2303HX
  if (serialPL2303.available() > 0) {
    String linha = serialPL2303.readStringUntil('\n');
    Serial.print(F("Comando via PL2303HX: "));
    Serial.println(linha);
    interpretarComando(linha);
  }

  // 2. Transmite telemetria periódica a cada 3 segundos
  unsigned long agora = millis();
  if (agora - ultimoEnvioMs >= INTERVALO_LOG_MS) {
    ultimoEnvioMs = agora;
    int adcA0 = analogRead(A0);
    float tensaoA0 = (adcA0 * 5.0f) / 1023.0f;

    serialPL2303.print(F("[TELEMETRIA] Uptime: "));
    serialPL2303.print(agora / 1000);
    serialPL2303.print(F("s | A0: "));
    serialPL2303.print(tensaoA0, 2);
    serialPL2303.println(F(" V"));
  }
}

Exemplo 2: Comunicação em alta velocidade (115200 bps115200\text{ bps}) com ESP32 via Hardware UART2

O ESP32 possui três controladores UART de hardware dedicados e trabalha com nível lógico nativo de 3,3 V3,3\text{ V}, casando perfeitamente com os níveis de tensão de TXD e RXD do PL2303HX. No código abaixo, configuramos a UART2 (Serial2) nos pinos GPIO16 (RX2) e GPIO17 (TX2) operando a 115200 bps115200\text{ bps} para diagnóstico de sistema e validação de pacotes com cálculo de checksum.

/**
 * RoboBuilders - Manual Técnico: Cabo Conversor USB Serial UART TTL PL2303HX Dupont
 * Exemplo 2: Telemetria e Diagnóstico em Alta Velocidade (115200 bps) no ESP32 (UART2)
 *
 * Conexões do Cabo PL2303HX (RB2073) no ESP32 DevKit V1:
 * - Fio Preto   (GND) -> GND do ESP32
 * - Fio Verde   (TXD) -> GPIO16 (RX2 do ESP32)
 * - Fio Branco  (RXD) -> GPIO17 (TX2 do ESP32)
 * - Fio Vermelho(+5V) -> Pino 5V / VIN (somente se o ESP32 não estiver alimentado via USB)
 */

#include <Arduino.h>

// Pinos da UART2 dedicada no ESP32
constexpr int8_t PINO_RX2 = 16; // Recebe dados do Fio Verde (TXD do cabo PL2303HX)
constexpr int8_t PINO_TX2 = 17; // Envia dados ao Fio Branco (RXD do cabo PL2303HX)

unsigned long pacotesRecebidos = 0;
unsigned long ultimoHeartbeatMs = 0;

void setup() {
  // Inicializa a Serial0 padrão e a Serial2 conectada ao cabo PL2303HX
  Serial.begin(115200);
  Serial2.begin(115200, SERIAL_8N1, PINO_RX2, PINO_TX2);

  delay(400);
  Serial2.println("\r\n[ESP32 UART2] Canal Prolific PL2303HX inicializado a 115200 bps (8N1).");
  Serial2.println("[ESP32 UART2] Digite qualquer mensagem para receber confirmacao e checksum XOR.");
}

void loop() {
  // Verifica recepção de pacotes vindos do PC pelo cabo PL2303HX
  if (Serial2.available() > 0) {
    String mensagem = Serial2.readStringUntil('\n');
    mensagem.trim();

    if (mensagem.length() > 0) {
      uint8_t checksumXor = 0;
      for (size_t i = 0; i < mensagem.length(); i++) {
        checksumXor ^= static_cast<uint8_t>(mensagem[i]);
      }

      Serial2.printf("[ACK #%lu] Payload: \"%s\" (%u bytes) | Checksum XOR: 0x%02X | RAM Livre: %u B\r\n",
                     ++pacotesRecebidos,
                     mensagem.c_str(),
                     mensagem.length(),
                     checksumXor,
                     ESP.getFreeHeap());
    }
  }

  // Envia pacote de integridade (Heartbeat) a cada 5 segundos
  if (millis() - ultimoHeartbeatMs >= 5000) {
    ultimoHeartbeatMs = millis();
    Serial2.printf("[STATUS] Uptime: %lu s | CPU: %u MHz | Pacotes processados: %lu\r\n",
                   millis() / 1000,
                   ESP.getCpuFreqMHz(),
                   pacotesRecebidos);
  }
}

Projetos

O Cabo Conversor USB Serial UART TTL PL2303HX Dupont integra o conjunto de ferramentas de bancada utilizadas em outros manuais e tutoriais práticos do blog da RoboBuilders:


Conclusão

Neste manual técnico, apresentamos todas as informações de engenharia necessárias para instalar e operar o Cabo Conversor USB Serial UART TTL PL2303HX Dupont (RB2073):

  • Especificações técnicas e elétricas: detalhamos os parâmetros do controlador Prolific PL2303HX, incluindo alimentação USB de +5,0 V+5,0\text{ V} (até 500 mA500\text{ mA}), nível lógico serial regulado em 3,3 V3,3\text{ V} (VDD_325V_{\text{DD\_325}}) e taxas de comunicação de 75 bps75\text{ bps} até 1,2 Mbps1,2\text{ Mbps}.
  • Descrição do produto e pinout por cores: mapeamos os quatro condutores com terminais Dupont fêmea de 2,54 mm2,54\text{ mm} — Vermelho (+5V), Preto (GND), Branco (RXD) e Verde (TXD) — e destacamos os casos ideais de aplicação e restrições.
  • Como fazer a ligação: ilustramos no diagrama esquemático vetorial o cruzamento obrigatório das linhas de dados (Fio Verde TXD →\to RX da placa e Fio Branco RXD →\to TX da placa) e as precauções essenciais com o pino de alimentação de +5 V+5\text{ V}.
  • Como usar na prática: abordamos a configuração de drivers VCP no Windows e Linux, o teste rápido de loopback e exemplos completos de código C++ para Arduino (SoftwareSerial) e ESP32 (HardwareSerial UART2).

Respeitando o código de cores dos terminais Dupont e o cruzamento entre transmissor e receptor, o cabo conversor PL2303HX oferece uma solução prática, robusta e versátil para gravação de firmware, acesso a consoles Linux embarcados e depuração serial em projetos de robótica e automação.

Solução de problemas

Olá! Sou o assistente técnico da RoboBuilders. Descreva seu problema com o Cabo Conversor USB Serial UART TTL PL2303HX Dupont: Manual Técnico Completo e eu ajudarei a encontrar a solução.

O assistente usa IA e pode errar. Confirme informações críticas no datasheet oficial do fabricante.