¿Puedo una interfaz RS422 para los pines seriales de Arduino?

Tengo un circuito diseñado a medida que se comunica hacia y desde el mundo exterior a través de una interfaz RS422. Deseo comunicarme con él con un Arduino, preferiblemente UNO. El RS422, al igual que el RS485, utiliza dos líneas tanto para la recepción como para la transmisión (una positiva y otra negativa). Por lo que puedo encontrar en la red, RS422 usa comunicación digital de 0-5V, que es lo mismo que los pines seriales de Arduino, ¿verdad?

¿Puedo usar una de las líneas, la positiva (?), tanto para el TX como para el RX de la interfaz RS422 y conectarlos a los pines 0 y 1 del Arduino? ¿O tendría que conectarme al enchufe USB del Arduino?


ACTUALIZAR

El problema al que me enfrento es que ya tengo un escudo Arduino diseñado a medida que envía y recibe datos en serie, y me olvidé por completo de la interfaz RS422. Puedo ordenar fácilmente los múltiples dispositivos en un bus UART en el software, pero no estaba seguro de si podría simplemente conectar uno de los diferenciales del TX/RX de un RS422 a los pines seriales o no.

Respuestas (3)

Debe conectar el RS422 correctamente al Arduino. Hay chips especiales que hacen esto por ti. Al igual que usaría un MAX232 (o similar) para conectar el Arduino a un sistema RS232, debe cambiar los voltajes a los niveles correctos y crear o combinar los pares diferenciales.

Maxim (los creadores del chip MAX232) fabrica una serie de chips para sistemas RS485 y RS422. Su búsqueda paramétrica los muestra a todos: http://para.maximintegrated.com/en/search.mvp?fam=rs485&hs=1

Otras compañías también fabrican chips que hacen el mismo trabajo.

Entonces, ¿la respuesta corta es no? ¿Qué pasa si lo hago?
Si una de sus señales RS422 resulta ser 0-5 V con 0 V = BAJO y 5 V = ALTO y comparte la conexión a tierra entre los sistemas, entonces puede funcionar. De lo contrario, corre el riesgo de dañar el Arduino.
Además del riesgo de terreno no común, existe el hecho de que RS-422 está diseñado para ser diferencial, es decir, si una señal es alta, la otra es baja y viceversa. Además, se supone que deben hacer la transición entre estados al mismo tiempo. Cuando esté manejando la línea RS-422, no podrá usar el UART en el chip porque necesitará manejar dos pines diferentes en antifase (aunque podría usar el UART y retroalimentar el pin al Arduino con una interrupción para crear la versión invertida de la salida UART, pero aún terminaría con un retraso de tiempo donde ambos pines tienen el mismo valor.
La respuesta corta es: hazlo correctamente. Los chips de los controladores son bastante baratos. Los de Maxim son buenos, pero más caros que la mayoría. No sé dónde se encuentra, pero los sitios habituales como RS/Farnell (Reino Unido) o Mouser/DigiKey (EE. UU.), etc. tendrán una variedad de fabricantes.
@DavidSmith He actualizado la pregunta con algunos detalles más. En pocas palabras, ya tengo un PCB diseñado y me olvidé del RS422. Necesito encontrar una manera de incorporarlo con el menor cambio posible.
En ese caso, sí, puede "más o menos" hacerlo para las entradas (conectando la señal "verdadera" directamente al pin de entrada de Arduino e ignorando la señal "invertida"), pero corre el riesgo de tener problemas con diferenciales de tierra y problemas de propagación/integridad de la señal. Para las salidas, creo que es realmente un "no-go" porque realmente necesita conducir ambas líneas como inversas entre sí. ¿Qué tal usar un chip de interfaz DIP (por ejemplo, MAX485CPA) en un poco de veroboard (stripboard)? Me temo que todas las posibles soluciones sin giro son "trucos sucios". :(

Hago interfaz con dos dispositivos RS422. Uno solo escucho y el otro envío y recibo datos. En mi caso, un par de resistencias, un soldador y una pequeña PCB experimental lo hacen.

¿Puedes agregar algunos detalles más? Esto parece bastante vago en este momento sin ningún detalle sobre cómo lo hiciste.