LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Starting analog read corrupts analog write waveform

Solved!
Go to solution
Solution
Accepted by dacad

The 6014 is evidently very intolerant of bus latency for analog outputs.  From the specifications:

 

 

6014.png

 

 

It only has one DMA channel available for all resources.  You should explicitly set the AI task to use interrupts and the AO task to use DMA.

 

DataXFerMechanism.png

 

Even with this though, having such a non-existent FIFO is risky business.  Your XP computer would likely have a different PCI host controller than your Windows 7 one which could very easily explain the difference in behavior.  The 6221 will be much more tolerant of bus latency as it has an 8k FIFO and dedicated DMA channel per subsystem (max AO rate on a single channel is 833 kHz according to the spec).

 

 

Best Regards,

John Passiak
Message 11 of 12
(310 Views)

You are my savior.   This is an area where my knowledge is a bit lacking, being able to look at hardware interface specs like this and sort out what the limitations, capabilities and requirements are.

 

I set the AO to DMA and it worked no problems.  The AI would not accept Interupts as an option though. The error that popped up told me that I had to use Input Programmed I/O and after switching to that, I was able to run both tasks simultaneously with no errors.

 

I do read what you are saying about FIFO and will keep that nugget in the back of my mind.  May be a reason to pad the hardware budget going forward.  At least I feel good about blaming the computer.

 

 

A learning moment indeed.

 

 

Addendum:   This approach works but I have to generate the AI task each time.  Does not appear to work with the task that is preconfigured in MAX.  Not a problem really just a bit odd.

 

 

Thanks.....

Doug

"My only wish is that I am capable of learning each and every day until my last breath."
0 Kudos
Message 12 of 12
(297 Views)