06-06-2006 11:07 AM
06-06-2006 11:19 AM
06-07-2006 12:43 PM
Hello Johnnie,
What value are you sending to the Wait until next millisecond multiple function? If you are specifying a value that is low, below a few milliseconds, your computer's processor may not be allowing the loop to iterate at this speed, interrupting LabVIEW so that other tasks can occur. What operating system are you using? You might use the tick count function to determine the time that elapses for each loop iteration and compare it to the time you are specifying with the wait function. What is the maximum digital output speed you have been able to achieve?
Regards,
Laura
06-07-2006 06:47 PM
Thanks a lot for reply,
I currently use Windows 2000 XP as a operating system in my computer that has Athlon 2200+ and Asus kv700 as a motherboard so hardware is rather fast.
The problem that I described in my post occurs at both low and high frequences at with I try to control loop execution. At low frequences the output signal becoms longer despite the fact that total number of samples is smaller, than in case I use frequences a litttle higher and more samples so that the output signal has the same amount of time like in first case when freqency is low and number of samples smaller.
I don't expect to reach frequences higher than 700 - 800 hz
In my question I also wonder whether or not there is another method I can use to control rate at which digital port is updated and where is a hole in my algorithm. on the other hand I wonder whether for loop always control DAQmx Base Write(Digital U8 1CHan 1Samp).vi function accurately. Maybe the way I sand samples to the loop is wrong but I send samples to the DAQmx Base Write(Digital U8 1CHan 1Samp) one by one with auto indexing option enabled.
However thanks Laura for cooperation concerning my problem
With kind of regards
Johnnie
06-08-2006
11:55 AM
- last edited on
07-15-2025
02:12 PM
by
Content Cleaner
Hi Johnnie,
Since you are using Windows, why are you not using NI-DAQmx? This is the driver recommended for use with Windows. I recommend that you switch over to NI-DAQmx and use the NI-DAQmx Base to NI-DAQmx Conversion Utility to convert your currently written programs.
When doing software-timed digital output, the only way to control the output is to use a loop to control the time between one sample and the next. Your way of sending the samples to the DAQmxWrite VI sounds fine. Is your Wait function inside this For Loop? It should be so that it can control the time between samples.
Regards,
Laura
06-08-2006 04:54 PM
Dear Laura,
Unfortunately I have to use NI-DAQmx BASE because the aplication I develop is a custom aplication and the only driver available is this one.
06-08-2006 05:02 PM
"Wait until next ms" function is used inside the loop, and it is to conrol loop execution correctly.
Maybe there is some problem in the way I prepare output signal, but in my point of view everything looks pretty good.
Hm, there must be any solution - there must be some mistake,
Thanks a lot again,
Yours sincerely,
Johnnie.
06-09-2006 10:34 AM
Hi Johnnie,
If you would like us to try to provide additional help, please post this portion of your code.
Are you developing an application that you will use on a different operating system? I don't understand why you cannot use NI-DAQmx.
Thanks!
Laura
06-11-2006 05:34 AM
06-11-2006 06:34 AM