It seems that I was having problems due to settings in my MAX tasks. I can get my program to work in two ways:
1. When I set my Labview program to acquire one sample at a time within the producer loop, with the loop iterating at 500 Hz and I set my all of my MAX tasks to acquire '1 sample (on demand)' at a time.
2. The other way I have been able to get it to work is; set my labview program to acquire multiple samples at a time, with the loop iterating at one per second, and setting only the 'analog input' task aquisition mode to 'continious samples' and the other three tasks to '1 sample (on demand)'.
The indexing and conversion from digital to analog waveform does not seem to affect anything.
I am going to have my program work using the second method, of the two above, because I would rather the samples get stored in the FIFO buffer and not have to iterate my producer loop quickly to take the load off the CPU.
The only thing that is still a puzzle to me is; why does it work when my 'analog input' task is in 'continious samples' mode and the other three tasks are in '1 sample (on demand)' mode? Could it be because my analog input tasks has 31 channels, whereas the other three tasks only have 4 or 5 channels?