EmbeddedRelated.com
Forums
The 2024 Embedded Online Conference

RS485: two transceivers

Started by aleksa April 14, 2011
I have two CPUs, master and slave.
They are (will be, actually) connected with one SN75176B IC
on each side, with two wires connecting them.

After reset, the master will be in transmit mode, slave in recv mode.

When the master sends a command to slave, the master will
switch into recv mode and slave into transmit mode.

Now, what happens while they are switching? At one moment,
both sides may be in input mode, and the wires will float,
maybe generating a start impulse.

How is this situation usually handled?

I could probably solve this with software, by waiting
some time, then discarding the byte received, if any.
The slave would have to wait even longer and then start sending. 


"aleksa" <aleksazr@gmail.com> wrote in message news:io6k61$upc$1@dont-email.me...
>I have two CPUs, master and slave. > They are (will be, actually) connected with one SN75176B IC > on each side, with two wires connecting them. > > After reset, the master will be in transmit mode, slave in recv mode. > > When the master sends a command to slave, the master will > switch into recv mode and slave into transmit mode. > > Now, what happens while they are switching? At one moment, > both sides may be in input mode, and the wires will float, > maybe generating a start impulse. > > How is this situation usually handled? > > I could probably solve this with software, by waiting > some time, then discarding the byte received, if any. > The slave would have to wait even longer and then start sending. >
Do I just place a pull-up one one line, and a pull-down on the other?
I've found this

Biasing an RS-485 Network
http://www.bb-elec.com/tech_articles/rs422_485_app_note/system_configuration.asp


Or maybe I could just use SN75LBC176D IC.

Ok, that was me, talking to myself. 


In comp.arch.embedded,
aleksa <aleksazr@gmail.com> wrote:
> Or maybe I could just use SN75LBC176D IC. > > Ok, that was me, talking to myself.
Sorry to interrupt that conversation. ;-) Yes, biasing is the solution for that problem and using fail safe receivers is always a good thing. Don't forget the terminators. You must also make sure the common mode voltage stays within limits. Most systems use a ground wire. -- Stef (remove caps, dashes and .invalid from e-mail address to reply by mail) Another Armenia, Belgium ... the weak innocents who always seem to be located on a natural invasion route. -- Kirk, "Errand of Mercy", stardate 3198.4
"Stef" <stef33d@yahooI-N-V-A-L-I-D.com.invalid> wrote in message news:7afe9$4da6defd$5f6173bc$19163@abuse.newsxs.nl...
> In comp.arch.embedded, > aleksa <aleksazr@gmail.com> wrote: >> Or maybe I could just use SN75LBC176D IC. >> >> Ok, that was me, talking to myself. > > Sorry to interrupt that conversation. ;-) > > Yes, biasing is the solution for that problem and using fail safe > receivers is always a good thing. Don't forget the terminators.
You mean I should use biasing resistors in addition to a fail-safe IC? BTW, to anyone starting with RS485: www.national.com/an/AN/AN-1057.pdf
Am 14.04.2011 13:13, schrieb aleksa:
> "aleksa"<aleksazr@gmail.com> wrote in message news:io6k61$upc$1@dont-email.me... >> I have two CPUs, master and slave. >> They are (will be, actually) connected with one SN75176B IC >> on each side, with two wires connecting them. >> >> After reset, the master will be in transmit mode, slave in recv mode. >> >> When the master sends a command to slave, the master will >> switch into recv mode and slave into transmit mode. >> >> Now, what happens while they are switching? At one moment, >> both sides may be in input mode, and the wires will float, >> maybe generating a start impulse. >> >> How is this situation usually handled? >> >> I could probably solve this with software, by waiting >> some time, then discarding the byte received, if any. >> The slave would have to wait even longer and then start sending. >> > > Do I just place a pull-up one one line, and a pull-down on the other? > >
For such systems, i use pull-up and pull down as you write and termination from A to B. Pull up and down is something like 390 Ohms or 1 K and termination is 120 Ohms. Best regards Stefan DF9BI
On 2011-04-14, aleksa <aleksazr@gmail.com> wrote:

>> Now, what happens while they are switching? At one moment, both sides >> may be in input mode, and the wires will float, maybe generating a >> start impulse. >> >> How is this situation usually handled?
> Do I just place a pull-up one one line, and a pull-down on the other?
Yes. ISTR 4.7K was a fairly common value. Also don't forget that 1) For a bus longer than about 0.1 bits, termination resistors are required on both ends of the bus. 2) A signal ground is also required. RS485 receivers can typically only deal with a common-mode voltage of 7-12V. -- Grant Edwards grant.b.edwards Yow! Here I am in 53 at B.C. and all I want is a gmail.com dill pickle!!
In comp.arch.embedded,
aleksa <aleksazr@gmail.com> wrote:
> > "Stef" <stef33d@yahooI-N-V-A-L-I-D.com.invalid> wrote in message news:7afe9$4da6defd$5f6173bc$19163@abuse.newsxs.nl... >> In comp.arch.embedded, >> >> Yes, biasing is the solution for that problem and using fail safe >> receivers is always a good thing. Don't forget the terminators. > > You mean I should use biasing resistors > in addition to a fail-safe IC?
No, I don't say you should. But it would be my preference if I have the freedom to pick te parts. ;-) -- Stef (remove caps, dashes and .invalid from e-mail address to reply by mail) You will live a long, healthy, happy life and make bags of money.
> > 2) A signal ground is also required. RS485 receivers can typically > only deal with a common-mode voltage of 7-12V. >
If you have signal ground on both sides, you should connect. If not, don&#4294967295;t care, should work also without GND. Best regards Stefan DF9BI

The 2024 Embedded Online Conference