quinta-feira, março 15, 2012

Adaptador USB Serial TTL JY-MCU

A retirada da porta serial RS232 dos PCs trouxe um grande problema para os hobbistas. As portas USB, apesar de mais rápidas e versáteis, apresentam uma complexidade muito maior tanto do ponto de vista elétrico como de protocolo, além de muitas vezes necessitarem drivers específicos.

Uma solução são conversores USB serial como o que examino aqui.



Este adaptador é comercializado pela DealExtreme. O preço (US$9,10) não é absurdo, embora seja bem mais caro que alguns adaptadores USB serial RS232, que requerem hardware adicional e tem melhor acabamento (porém um mercado potencial maior).

Como dá para reparar na foto acima, o acabamento é quase nulo: um tubinho de plástico recobre a placa. Os sinais seriais estão em um conector "espeto" padrão, com indicação clara dos sinais nos dois lados da placa (atenção: Rx e Tx são do ponto de vista do PC). Além da plaquinha vem um pequeno rabicho fêmea/fêmea para o lado serial. Você provavelmente vai precisar fazer um rabicho mais comprido e/ou usar um cabo extensor no lado da USB.

Uma boa notícia para os usuários Windows é que o adaptador utiliza drivers que já vem com o sistema operacional. Nos meus testes com Windows XP, Vista (32 bits) e Windows 7 (64 bits) bastou espetar para a placa ser reconhecida e o driver instalado. No Windows XP apareceu um aviso que o driver não estava assinado, mas bastou seguir em frente.


A placa possui três LEDs, dois para indicação de atividade nas linhas de comunicação (Rx e Tx) e um para indicar que a placa está alimentada (STA). Parece ter lugar para um quarto LED (não instalado), provavelmente para o sinal DTR.

Este é um ponto interessante do adaptador. Além dos sinais Rx e Tx, o sinal DTR também é suportado (mas não os outros sinais usados no RS 232). O nome do adaptador na DealExtreme ("JY-MCU USB Serial Port Adapter Download Line Arduino") dá uma dica de uso: o sinal DTR pode ser usado para implementar o auto-reset do Arduino (como veremos no próximo post).

Além dos sinais DTR, Rx e Tx, o conector possui os sinais GND, +5 (indicado como VBUS) e +3,3V. Embora a corrente que possa ser puxada da USB não seja imensa, é suficiente para algumas brincadeiras mais simples.

No pouco uso que fiz até agora o adaptador funcionou muito bem e provavelmente vai ser uma ferramenta útil para projetos futuros que necessitem apenas esporadicamente de uma conexão serial (isto é, onde o adaptador não precise ficar fixo ao hardware).

2 comentários:

Wesley H. disse...

Olá DQ.. Bom dia

Recentemente comecei a interagir mais com o mundo do Arduino, e me deparei com seu blog. E olhando esse post que por sinal é muito interessante, me surgiu uma duvida, tentei uma vez interagir uma camera ov7670 com arduino mega para tirar apenas uma foto, mas não consegui, então se eu colocar um adaptador desse e uma outra camera, tipo webcam.. eu conseguiria essa facil comunicação e transmissão da foto??

Obrigado e Parabens pelo blog.

Daniel Quadros disse...

Wesley: você terá vários problemas a resolver para ligar uma webcam a um Arduino. Em primeiro lugar é preciso ter no Arduino uma interface USB host (para isto existem shields e o Arduino ADK). Em segundo lugar é necessário o software que saiba conversar com a câmera. Por último, existe a questão de ter memória suficiente para gravar as fotos. Por outro lado, é muito fácil ligar uma webcam a um Raspberry Pi; por coincidência estou fazendo alguns testes com isto e deve fazer em breve alguns posts a respeito.