12-03-2010 12:46 PM
I'm trying to generate a RS-422 PPS signal using the PXI-8431/8 PXI board, LabWindows/CVI and the standard CVI library functions but I can't find a way of producing a signal that remains HI persistently for X number of ms. I realize that using the PXI-6602 would be an ideal solution but for my case I'm relying on the RT OS to maintain determinism. Do you know of a white paper or discussion thread that might describe a reliable way of doing this with the CVI functions and serial boards I have?
This post was copied from the LabView discussion board. Sorry for the inconvenience.
Solved! Go to Solution.
12-06-2010 10:07 AM
Hello,
I do not believe that there is a way to do this. The driver doesn't support the toggling of the lines, especially with the accuracy you would need. It would be best to use the PXI-6602 card for this. Have a great day!
Best Regards,
Adam G
12-06-2010 05:51 PM
So I've got my hands on the 6602 and am looking for example code to get me started, but all I can find are dated version (5.5 or earlier). Is there anything current that could offer some guidelines for generating the PPS? Specifically, I'm using a RT Hypervisor controller and building an RT application.
Thank you for your help.
12-07-2010 11:30 AM
Hi There,
Assuming you're using DAQmx and you want to generate a continuous pulse train (hardware-timed), you can find examples that do exactly this by looking in: Start » All Programs » National Instruments » NI DAQ » Text-Based Code Support » Ansi C Examples » Counter » Generate Pulse.
Hope this helps!
Sean
12-07-2010 04:38 PM
I tried the files you recommend (plus some other examples from various locations) and I keep getting a series of error messages:
Undefined symbol '_RegisterWinMsgCallback@24' referenced in "dataacq.lib".
Undefined symbol '_UnRegisterWinMsgCallback@4' referenced in "dataacq.lib".
Undefined symbol '_GetCVIWindowHandle@0' referenced in "dataacq.lib".
Some files that the example includes are:
NIDAQEX.C
NIDAQEX.H
These all go away when I boot into Windows. I have loaded the Real-Time module and am using a RT Hypervisor controller. Could I be missing software or be using a Windows library when a RT lib is available?
Thanks.
12-08-2010 07:09 AM
One additional note:
I can include dataacq.h in my RT application code and it compiles fine. I begin seeing errors when I add the CVI function from the Traditional DAQ library, ICTR_Setup().
12-08-2010 11:09 AM
Hi JMK,
You can use DAQmx or TDAQ, not both. I would strongly recommend DAQmx since TDAQ is no longer supported.
Sean
12-08-2010 11:38 AM
Sean,
I updated the pulse generation functions with those from the DAQmx library and am now up and running.
Thank you so much for the input.
J
12-09-2010 11:21 AM
Hey Jmk,
Glad to hear it. Happy coding!
Sean