Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

9 bit multidrop, doable?

Hi All,

 

I am getting ready to do RS485 communications using a form of 9 bit multi-drop protocol on my next project

(the first byte has the 9th bit set, the rest of the packet does not)

 

Now, I know that you can get the ninth bit by playing with parity bit (MARK or SPACE)

The problem is do I want to try: has anyone had success with this?

 

A few years ago, we did a proof of concept on this in C++: it failed

There was too much latency in the windows operating system: sometimes it worked, sometimes not

 

My baud is about 57.6 K

Any hardware or software recommends would be appreciated

 

Thanks,

Jeff

 

 

 

 

0 Kudos
Message 1 of 4
(3,730 Views)

Hello Jeff,

 

All of our 485 devices should be able to work with the multi drop configuration. Here is a link to a knowledgebase that talks about the using multi drop with 485. You can see all of the 485 devices that we offer. For the software to control it I would recommend using LabVIEW. We also have a knowledgebase that tells how to do 9 bit communication in LabVIEW. I do not have any personal experience doing 9 bit multi drop though, does anyone else? Please let me know if you have anymore questions. Have a great day!

 

Best Regards,

 

Adam G  

National Instruments
Applications Engineer
0 Kudos
Message 2 of 4
(3,703 Views)

Jeff,

 

I've not done any 9 bit protocol but I have fooled around with programatically asserting and deasserting the DTR line on 232 ports.  I found the USB-Serial adapters don't work very well for stuff like this due to overhead/delays in the USB driver layer.  Takes forever to assert/deassert a control line or change the parity mode on the fly.  Best bet is to use something like a PCI or PCIe card thats plugged directly into the pc backplane.

 

 

Message 3 of 4
(3,698 Views)

Hi Jeff,

 

I use the 9th bit protocol with LabVIEW and it works fine.

 

Sending: change the parity in MARK and SPACE like you said.

 

Receiving: In the VISA config file disable the replacement character (DisableErrorReplacement=1)

                Ignore error after receive data (parity error)

 

Let me know if this works for you.

 

 

You also can use hardware that support this. I use this solution for a test. 

 

Kees

 

Message 4 of 4
(3,668 Views)