I am currently writing an application to control some bidirectional lines on the NI-6343 card from a LabWindows CVI GUI. These lines can be Input or Output as controlled from the GUI. Using DAQmx, I found some help with using the TriState commands to help with this, but my question is - would there have to be additional control lines/circuitry to prevent both sides of the cards I/O port writing to the line at the same time? Has anyone got this card, or similar, working in the configuration? What is the best solution for achieving this?
Thank you for your post, I am the applications engineer who will be helping you find the answers to your questions regarding bidirectional IO using the PCI 6343. I have some further questions to confirm I understand your project and I also have some resources to share with you.
As I understand from your post you would like to use the DIO ports as bidirectional lines, this is possible using this card, as stated in the manual for the device. You won't need to add any additional circuitry as a single line can only carry out one task at a time and the direction of the signal will be determined by your code. Each line in the ports will have an individual number, the manual shows the pinout and will allow you to decide which lines to use for which task.
The X-series manual the PFI section of this manual will be most useful to you
1) I also found another forum post which discusses DAQ tasks and CVI.
A few of the resources I have found point to LabVIEW, but I would like to explain that LabVIEW has the same functionality as Labwindows and using the help file available to you will assist with finding the correct functions and code for your project.
2) This example shows the bidirectional task in LabVIEW, but the functions used in the code are also available in CVI.
3) If you have measurement studio you can configure and program a digital port for bidirectional mode using the NI-DAQ API function calls (language interface).
If you could confirm that I am on the right path, that would be great. I recommend looking through these resources and attempting to implement some DAQ coding, please let me know how you get on, so I can support you to the best of my ability.
Thanks for the reply.
When I was talking about the additional circuitry (i.e. a control line), I was still under the impression that if both sides of the DIO port were trying to drive an output at the same time this could lead to damage on the card, or does the card have in built protection for this?
The 1st link you gave me on the tristate settings was the one I had read and was going to use, but still had the question in the paragraph above.
Thank you for clarification on the question and confirming which examples you have already looked into, so I think we are following the same page.
I have looked further into the manuals to find the information you require before you set up the system. The DIO lines on an X series card is protected against overvoltage, undervoltage, overcurrent and ESD events. There are some suggestions made for the hardware set up in the DIO section of the manual, so I recommend becoming familiar with these to ensure your system functions as expected, the main information comes from chapter 6, page 22, the rest of the device specifications showing voltage and current limits are available online and also in the manual.
If you have any further questions or queries please feel free to get in touch.