09-09-2010 11:54 AM
Due to some combined problems, I have to use two separate CVI programs to action on the same DAQ cards. One program is gerenating multiple lines output of digital and analog signals, while the other one is using the analog input. I know this cannot be done by normal programming because one of the program will dominate the DAQ resource all the time. Is there some good why for this kind of applications? I am using NI6229
Thanks.
09-10-2010 04:00 AM
One approach to this kind of problem is to create another program whose sole job is to interface to the hardware. This program then would need to be communicated with from your other two programs which both require access to this hardware - for example by sending data (commands and responses) along named pipes. (Or TCP or DDE or shared memory or whatever inter-process communications mechanism you feel most comfortable with.)
Effectively you would be creating a simple server for the hardware, which can coordinate the interfaces to your other client applications. This can get quite complex to implement well, but if you really cannot combine both your original programs into one application it is a way forward.
JR
09-10-2010 06:30 AM
I have test your idea and it works fine when two programs control the same DAQ card. As long as you do not use the same line in two programs, it functions well. Please just give a try by using MAX.
09-13-2010 08:10 AM