Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Max485 Auto direction

Status
Not open for further replies.

haohaodk46

Member level 4
Joined
Apr 8, 2012
Messages
69
Helped
1
Reputation
2
Reaction score
2
Trophy points
1,288
Activity points
1,762
Hi all,
This is circuit for 485 auto direction


1663171066004.png


Everyone can explain why it worked ?
When a bit of TX signal is low level then DE,RE pin is at low. It will disable transmit and at receive mode. Is this circuit work ?
If this circuit work well then can It apply for about 32 node ?
Is Best solution auto direction or manual control DE RE pin ?
Many thanks!
 

Hi,

small picture. No details.

I´d say
* it just drives true LOW ...
* but HIGH is is pulled by the resistors.

Not recommended for high speed. (I´d not use it for low speed either)

Klaus
 

When a bit of TX signal is low level then DE,RE pin is at low.
No. Transistor inverts TX signal. Driver is enabled during TX low. The circuit can only work if RS485 pull- up/-down resistors are strong enough to enforce idle state. Unfortunately that's not the case with the given resistor values and the specified receiver threshold range.

Means the circuit isn't guaranteed to work.
 

If you fix the termination resistor issue, there' still a problem of unsufficient drive strength in low-high direction so that the circuit doesn't work well at higher speed or with larger capacitive load. A usual solution is apply an off-delay to DE.
 

1663209644267.png


I update schmatic again
--- Updated ---

Hi,

small picture. No details.

I´d say
* it just drives true LOW ...
* but HIGH is is pulled by the resistors.

Not recommended for high speed. (I´d not use it for low speed either)

Klaus
is It okay with 9600bps speed and multi node on bus ?
--- Updated ---

Hi,

small picture. No details.

I´d say
* it just drives true LOW ...
* but HIGH is is pulled by the resistors.

Not recommended for high speed. (I´d not use it for low speed either)

Klaus
is It okay with 9600bps speed and multi node on bus ?
 

Hi

We don't know cable capacitance, additional termination, and so on..

I stay with my opinion: I'd not use it even for low speed.

Klaus
 

With Vcc=5V you get about 50 mV bias. Specified receiver threshold is 200 mV. -> Circuit may work or not, depending on actual receiver exemplar.
 

My circuit is little bit different.
It worked in my circuit and in Chinese USB-RS485 module, which use CH340 IC. Speed, I tested up to 1Mbps still OK.
Warning is the value of R36, R11, and Q8 (or R5,R6,Q1 in my circuit) need to select correct. If not it will not work.
1663516344117.png
 

Hi,

both circuits (post#1, post#8) suffer from the same problem:
There is not true "DRIVE HIGH" according RS485.

As FvM already mentioned there should be at least
* drive high for a minimum time (driver should be active for more than 1 bit time) In best case the DRIVER_ENA is driven by the UART hardware. It should be driven HIGH (that´s what the STOP bit is for) long enough for the voltage on the cable on every point is stable with respect of signal run time and echoing.

The shown circuits are not according RS485 specification..
The given circuits may work ... or not. It depends on cabling, cable lengths, termination, pull_up ...

Just the statement "it worked in my circuit" does not mean it complies with the specification regarding voltage levels and timing. And it does not mean it is safe.

It´s like passing a crossroad without caring about traffic. It may work for days, weeks, months, maybe even years. Still it is not safe and an accident may happen at any time.

If you do a test with an eye diagram than you see that some bits are shorter and dont have equal voltage levels.
****

My personal opinion:
I say this careless designs are a reason for "sporadic fails". Some people/companies accept this sporadic fails. Some blame it on the noisy environment, some blame it on the transmitting circuit, some on the receiving circuit. Always blaming the other.
.. no one takes the responsibility for the fails of his cheap design..

"Cheap"...
A simple solution to improve performance could be to just add a capacitor for delayed DISABLE of the driver. (post#4)

Klaus
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top