I have build a RS485 communication system between a PC and a MSP430 launchpad board using MAX 485 RS485 chip from Maxim integrated.The circuit diagram is attached as an image.
I have given a detailed explanation first and the problem at the end
Transmitter Section.
Consists of an FT232 (USB to UART converter) connected to a MAX485 chip.The CBUS pins of the FT232 are configured to control the DE and ~RE pins of the MAX485 .
A 120 ohm termination resistor is connected to the MAX485 chip in the transmitter.
Two Biasing resistors are connected to A,B of MAX485 and pulled up and down as shown in the circuit.
FT232 signal levels are at 5V levels.
Receiver Section
A MAX485 is interfaced to a MSP430G2553 as shown in the attached image.
A 120 ohm resistor is used as termination in the receiver side.
Working
The PC transmits a couple of characters through the transmitter section.CBUS pins are used to control the he DE and ~RE pins of the MAX485 using a library provided by FTDI.
On the receiver side MSP430 waits for the characters and blinks an LED on receiving it.
The transmitter and receiver are connected by a 1 meter long twisted pair (not shielded).
During testing the power for transmitter and receiver are taken from the same PC USB port ,(grounds are same).
The Transmission baudrate is 9600,8N1 data format.
Problem
The characters transmitted from the PC through the transmitter section are received by the MSP430 and it lights up the corresponding LED.
The Problem comes when i replace the MAX485 ic in the receiver section with DS485 or DS36C279 which according to TI are drop in replacements for MAX485.like this
[FT232]+[MAX485] ----------------------- [DS485]+[MSP430]
After replacement The MSP430 in the receiver side stops receiving the serial data,No serial data received interrupt is coming in MSP430.If i put back the MAX485 in the circuit the system works perfectly.
Why does this happen?
Now if i use DS485 on both sides as shown below
[FT232]+[DS485] ----------------------- [DS485]+[MSP430]
system works fine.
Also if i use DS36C279 on both sides as shown below
[FT232]+[DS36C279 ] ----------------------- [DS36C279 ]+[MSP430]
system works fine.
Also if i interchange the ic's like
{FT232]+[DS36C279 ] ----------------------- [DS485 ]+[MSP430]
system works fine.It appears that TI chips do not work with the RS485 chips from Maxim.
Does anybody know how to rectify this problem?
Please click on the image to see it