Thanks
Neal
There are several converters to allow a 232 port to talk on a 485 bus. Most
use one of the control lines to decide if the 232 is sending to or receiving
from the 485 bus. A company called B&B Electronics makes some of the best
adapters around. These will be easy to use with Linux.
Brian
=======================
Brian Todoroff
brian_t...@sdd.sri.com
> Does anyone have any information on what a rs485 network is
> and is there Linux support as far as boards/drivers?
It is a multidrop serial network often used in industrial control
applications. If I remember correctly, it uses rs422 electrical specs.
I don't know if there are Linux drivers for it. You might try the
Linux-Lab project at:
http://obelix.chemie.fu-berlin.de/
--
Bob Hauck bo...@wasatch.com
Wasatch Communications Group http://www.wasatch.com
--
Claude H. Weber
Haguenau (France)
Email: Cl...@compserve.com
AX25: F5...@HB9EAS.CHE.EU
Neal J. Gieselman a écrit dans l'article <34317d28....@news.wavetech.
net>...
>Hello,
>Does anyone have any information on what a rs485 network is
>and is there Linux support as far as boards/drivers?
>
>Thanks
>Neal
>
In general, saying RS485 network is about as useful as saying RS232 network -
RS485 is just a physical layer consisting of differential signaling using
approx. 3-5v logic levels. Differential SCSI uses the RS485 physical specs.
What most people mean when they inaccurately say "rs485 network" is a
multi-drop half-duplex party line, usually in a master-slave configuration.
9600bps Async is common, faster is possible. Used a lot in embedded and
inustrial control applications. See comp.arch.embedded for lots of
discussion.
For linux, you can use any RS232 serial port and a level translator.
Usually the RTS signal is used to control the transmitter, occaisionaly DTR
is. This can be done in user-level software, and it sort of works, but the
performance I'm seeing is poor - it takes forever to get the transmitter
turned off, so the slave nodes have to wait a long time before responding to
the poll, otherwise the response gets lost because the master isn't
listening yet.
What's worse is that you can take a context switch in between the
transmission and turning off the transmitter. I suppose locking down the
pages and going to a real-time scheduler might help a little, but this
belongs in the tty driver.
For use under Linux I'd get a 232-485 level translator or a '485 serial card
that does transmitter enable automaticly. B&B Electronics has some of
each. The RS485 adaptor for the GETEK serial port cards does _not_ do
automatic transmitter control.
>Thanks
>Neal
--
--
Steve Tell te...@cs.unc.edu http://www.cs.unc.edu/~tell W:919-962-1845
Research Associate, Microelectronic Systems Laboratory
Computer Science Department, UNC@Chapel Hill.
: >Does anyone have any information on what a rs485 network is
: >and is there Linux support as far as boards/drivers?
[...]
: For linux, you can use any RS232 serial port and a level translator.
: Usually the RTS signal is used to control the transmitter, occaisionaly DTR
: is. This can be done in user-level software, and it sort of works, but the
: performance I'm seeing is poor - it takes forever to get the transmitter
: turned off, so the slave nodes have to wait a long time before responding to
: the poll, otherwise the response gets lost because the master isn't
: listening yet.
: What's worse is that you can take a context switch in between the
: transmission and turning off the transmitter. I suppose locking down the
: pages and going to a real-time scheduler might help a little, but this
: belongs in the tty driver.
I put it into the tty driver and it still doesn't work reliably. With most
PC UARTs it's not possible to decide for sure when the last byte has
actually been sent. We fight with this problem regularly (we use a couple
different half-duplex protocols). Sometimes you can guess when the last
byte is sent by shoving an extra byte or two into the UART and shutting off
the transmitter when the extra byte drops from the holding register into the
shift register -- but even that doesn't work all of the time. With some
UARTs that chops of the stop bit of the last data byte.
: For use under Linux I'd get a 232-485 level translator or a '485 serial card
: that does transmitter enable automatically.
Unless you use a proper UART that tells you when it's done sending data,
that's your only hope for reliable operation.
: B&B Electronics has some of each. The RS485 adaptor for the GETEK serial
: port cards does _not_ do automatic transmitter control.
--
Grant Edwards grante@ Yow! I own seven-eighths of all
Rosemount, Inc. rosemount.com the artists in downtown Burbank!