SparkFun Forums 

Where electronics enthusiasts find answers.

Have questions about a SparkFun product or board? This is the place to be.
By matthewb
#8557
Hey,

I am working on a micro project and would like to control multiple RS422 devices from the 1 micro. The micro only need be connected to one device at a time. I could use relays to switch the micro to each device but would rather an IC solution.

Would anyone have any suggestions?

Thanks,
M@
User avatar
By phalanx
#8591
One way to implement your idea is to use PICs that have a 9bit UART built in and hook up RS422 tranceivers to it. What is typically done is when the 9th bit is set, the data received is considered an address. The device that has that address would then process the next instruction sent to it while the others would ignore it. This would allow you to daisy chain all of your devices without the need for additional hardware for CS lines or physical switching of data lines.

You could even make your protocol behave like I2C where you have start and stop conditions which would allow you to continuously send data to a single device without having to resend its address over and over. It is a choice as to how far you want to take the development of your protocol.

Due to the fact that you have separate TX and RX lines, it would be difficult to implement a chain where the "slave" devices can send data to other "slave" devices but if top speed is not critical you can easily route data through the "master" for delivery to another device.

Good luck!

-Bill