1
\$\begingroup\$

I have a custom-designed circuit that communicates to and from the external world through an RS422 interface. I wish to communicate with it with an Arduino, preferably UNO. The RS422, much like the RS485, uses two lines for both the receive and transmit lines (one positive, one negative). From what I can find on the net, RS422 uses 0-5V digital communication, which is the same as the Arduino serial pins, right?

Can I use one of the lines, the positive (?), for both the TX and RX of the RS422 interface and connect them to pins 0 and 1 of the Arduino? Or would I have to connect to the USB plug of the Arduino?


UPDATE

The problem I'm facing is I already have a custom-designed Arduino shield that sends and received serial data, and I completely forgot about the RS422 interface. I can easily sort out the multiple devices on one UART bus in software, but I wasn't sure whether you could simply plug one of the differentials of the TX/RX of an RS422 to the Serial pins, or not.

\$\endgroup\$
3
\$\begingroup\$

You need to interface the RS422 properly to the Arduino. There are special chips that do this for you. Just like you would use a MAX232 (or similar) to interface the Arduino to an RS232 system, you need to shift the voltages to the right levels, and create or combine the differential pairs.

Maxim (the makers of the MAX232 chip) make a number of chips for RS485 and RS422 systems. Their parametric search shows them all: http://para.maximintegrated.com/en/search.mvp?fam=rs485&hs=1

Other companies make chips that do the same job as well.

\$\endgroup\$
  • \$\begingroup\$ So, short answer is no? What happens if I do? \$\endgroup\$ – Tom Mar 19 '15 at 10:20
  • \$\begingroup\$ If one of your RS422 signal happens to be 0-5V with 0V=LOW and 5V=HIGH and you share the ground between the systems, then it may work. If not, then you risk damaging the Arduino. \$\endgroup\$ – Majenko Mar 19 '15 at 10:21
  • \$\begingroup\$ As well as the risk of non-common ground, there's the fact that RS-422 is designed to be differential - i.e. if one signal is high, the other is low and vice-versa. Also, they're supposed to transition between states at the same time. When you're driving the RS-422 line, you won't be able to use the on-chip UART because you'll need to drive two different pins in anti-phase (although you could use the UART and feed the pin back to the Arduino with an interrupt to create the inverted version of the UART output, but you'd still end up with a time delay where both pins are the same value. \$\endgroup\$ – David Smith Mar 19 '15 at 11:19
  • \$\begingroup\$ Short answer is: do it properly. The driver chips are pretty cheap. Maxim ones are good, but more expensive than most. I don't know where you are, but the usual sites like RS/Farnell (UK) or Mouser/DigiKey (US) etc. will carry a range of manufacturers. \$\endgroup\$ – David Smith Mar 19 '15 at 11:22
  • \$\begingroup\$ @DavidSmith I have updated the question with a few more details. Long story short, I already have a PCB designed, and forgot about the RS422. I need to find a way of incorporating it with as little change as possible. \$\endgroup\$ – Tom Mar 19 '15 at 13:32
1
\$\begingroup\$

TTL to RS485 converters are very cheap and easy to buy. Here is one for $7 from NewEgg...

http://www.newegg.com/Product/Product.aspx?Item=9SIA4SR1T52538&nm_mc=KNC-GoogleMKP-PC&cm_mmc=KNC-GoogleMKP-PC--pla--Electronics-_-9SIA4SR1T52538&gclid=CjwKEAjw56moBRD8_4-AgoOqhV4SJADWWVCco_vnIRyl08e2ifXOBH_v86voUoQ0z_zgjA2TuOBc4RoCrSHw_wcB&gclsrc=aw.ds

There are many more.

\$\endgroup\$
0
\$\begingroup\$

I do interface with two RS422 devices. One I just listen to and the other I send and receive data. A couple of resistors, a soldering iron and a small experimental PCB does it in my case.

\$\endgroup\$
  • \$\begingroup\$ Can you add some more details? This seems pretty vague at the moment without any specifics about how you went about it. \$\endgroup\$ – PeterJ Oct 24 '15 at 13:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.