05-28-2009 03:39 PM
Hi every body,
I have to develop an application that execute 16 threads in which I communicate with 16 device via RS232 . I use a Multi port card NI8430/16.
Is that possible with labview. Can it work in parallel. I have no idea about multithreading. Can you give me an example. the pc, need it any special configuration.
Thank you for help it is very urgent
05-28-2009 04:56 PM
05-29-2009 02:31 PM
05-29-2009 03:30 PM
05-29-2009 03:50 PM
Oskar is definitely right. The visa serial is not re-entrant by default. The following KnowledgeBase addresses this issue:
Accessing Serial Ports Using Parallel Execution Hangs My Program Intermittently in LabVIEW
http://digital.ni.com/public.nsf/allkb/59458684CF7861CC862565410061DB3B?OpenDocument
05-29-2009 03:50 PM - edited 05-29-2009 03:51 PM
Oskar Bosch wrote:
I think this vi (visa serial) is not re-entrant. Hence you would not gain much with creating sixteen. I would check into the actual lower level VISA functions and see if those are re-entrant. Otherwise all the threads would be just waiting for the other to finish.
Correct, the VISA configure VI is not reentrant. But so what? That VI should only be called once per port at the beginning of the code. And it would not take long to run anyway.
You don't even need to use that VI. It is just a wrapper for setting a bunch of property nodes for the serial port.
05-29-2009 04:05 PM
05-29-2009 04:12 PM - edited 05-29-2009 04:13 PM
05-30-2009 08:36 AM
05-30-2009 11:54 AM