03-16-2007 07:09 AM
03-16-2007 09:27 AM
03-22-2007 11:45 AM
The card you are using has only one A/D converter. All Analog input channels are multiplexed to one A/D converter, so you can not have two subsystems trying to acquire data at the same time. Use one subsystem to acquire ALL neccessary channels at one time, and seperate the data in software afterwards.
03-22-2007 11:58 AM
Hallo Andreas(do you named Andreas?), thank you for your reply. But because I am not so familiar with the NI, so would you like to give me one example about how to use one subsystem to acquire ALL neccessary channels at one time, and seperate the data in software afterwards. Or give me some more tipps?
Thank you very much!
03-22-2007 12:19 PM
It is impossible for me to post an example, as I don´t have simulink. I only can tell you that the board you are using can not have two processes (two threads in C, or two applications) access the analog inputs AT THE SAME TIME, so you alway can have only one process accesssing the analog inputs of your hardware. If you have some kind of blocks in simulink to access the hardware, use one block to acquire all data, not two or more blocks where each block acquires data from one channel.
You can separate the data the single block acquires after that, to process the data in parallel afterwards.
Hope this helps!
André 😉
03-23-2007 07:42 AM
03-26-2007 08:06 AM
I guess you get the error you posted in your first post (no DMA...) if you rty to use both analog input and output on one card.
First, the 6024E has only one DMA-channel, so the error makes sence in a way: the single available DMA-channel si used by the analog input block, so there is no DMA channel available for the anaolog output block.
In general the driver should automatically use the interrupt mode, so yews, in general it is possible to use both anaolg input and analog output on one card at the same time. This works fine in the environments I use (LabVIEW, CVI, C++, .NET etc.)
is there a way to configure the data acquisition in simulink in more dtail (for example, define which transfer mechanism (DMA or Interrupt) is used etc.? You should investigate the options of your blocks in siulink with which you acquire/gernerate your data, to see if you could specifiy the apropriate settings there somehow.
Hope this helps!
André