Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

RS485 Help.

Status
Not open for further replies.

Borisw37

New Member
I have a system that uses RS485 in full duplex (MAX489 IC)
The system contains 4 modules daisy chained together first one is the master. I am having problems receiving data sent from the slaves. Here are the details:
Master has 120ohm termination resistors across the TX+/TX- lines and RX-/RX+ lines
Last unit in the chain also has these two termination resistors. The other two units do not have any termination resistors.
If I have just Master and Last Unit connected everything works great and I'm measuring 5v diff. signal across Master's RX-/RX+.
With 3 units (Master-Unit1-Unit3_Terminated) I get 3v diff. and everything still works fine.
With 4 units (Master-Unit1-Unit2-Unit3_Terminated) I get 1.9v diff and the MAX489 on the master does not recognize it as valid data.
I'm using CAT5 cable, 30ft between master and the next unit and 5ft cables between the units. Data is sent at a slow 9600bps.

My understanding was that MAX489 devices can drive up to 32 devices on a single line....
Please help.
 
If your system is using 4 wires, 2 for Tx and 2 for Rx, it is probably more accurate to call it RS422.

I assume that the master transmits to 3 slaves all set to receive and that is OK.

When the slaves transmit, if you only have one slave connected to the (master receive) line, all is OK.
But when you add more slaves, the received voltage at the master is reduced until it no linger works.

It sounds to me that the problem is that your slaves have their transmitters permanently enabled.
What you must do is to ensure that the slaves only turn on their transmitters when they have data to send, (there may be a setup to put them into half duplex).
The rest of the time they must be switched off to their high impedance state so that they do not load the line and reduce the voltage of the slave which is trying to transmit.

JimB
 
Last edited:
JimB.

Thank you for your reply. I think you are correct. The transmitters on all the devices are always enabled. I thought that that would not affect the line. Its late now but I will give it a shot tomorrow.
Makes perfect sense though. Since the TTL input to the drive is held low when there is no data to send, an enabled driver will hold its output too.
Why didn't I see this before.....
If this works, THANK YOU! I've been pulling my hair out for the last 2 days trying to solve this.
 
Last edited:
Glad that I could be helpfull.

JimB
 
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top