06-06-2008 10:34 AM
06-09-2008 04:24 AM
06-11-2008 05:24 AM
Hi Graham, thanks for your response on this. ok, i see where you're coming from. I'll give that a go.
I was presuming it would work the same way it does with analog output. With that i write an array of output values to the task first, then start it running and each time it recieves a rising edge on the trigger it jumps to the next one.. ive attached a pic of that code for clarity.
Ultimatley im trying to output a digital signal to set a DAC so i need a clock signal aswell, my thought was doing it this way and using a clock sigal connected to the trigger input to trigger the next sample to output. I would like to be able to use either an external or internal clock. It would be great if i could route the internal clock signal to one of the output pins, in a way that its just running in the background if you know what i mean, ive seen signal routing mentioned somewhere, would that be the way to do this?
Also I wonder if you could point me in the direction of something that explains how to handle digital signals generally, is not something ive really done before. I've come across digital waveforms in the help file.. is this what i should use for this sort of thing?
many thanks,
Mike Parker
06-11-2008 08:12 AM
09-14-2010 08:24 AM
Hi,
I have a very similar problem to this one.
I have to transmit a 14 bit word as a serial output on one data line. There is an external clock input, each time the rising edge of the clock is sensed the output will change to the next bit in the word.
I have tried various solutions with DAQmx timing and DAQmx start trigger both of which give errors.
NI Labview 7.1
Hardware i have a USB 6008 and a PCI 6509, i have tried both.
Are there any solutions?
09-14-2010
07:28 PM
- last edited on
02-13-2025
03:10 PM
by
Content Cleaner
Hi venturer,
I need to start out by saying that neither the 6008 nor the 6509 support clocked digital I/O. This makes either of these boards less than ideal for accepting an external signal to be used to clock out serial data.
However, If you are not open to new hardware the 6509 should be much better than the USB 6008 for this application (although that isn't necessarily saying all that much). You could configure it to use change detection to send a software event when the clock signal goes high. In the event handler you would write a single bit of your serial output.
The speed of your external clock is a critical factor in determining if the above approach would be suitable. Is the delay from the clock edge to the data line being updated a factor for you?
The best solution would be to use a board with clocked digital I/O (e.g. PCIe-6320).
Best Regards,
09-14-2010 07:39 PM
Just saw your timing diagram, the period of your clock signal says >5 us. How much greater than 5 us can you go? 5 us isn't going to work so well for the software-timed approach.
Best Regards,
09-15-2010 02:12 AM
The 5uS is produced externally and is fed in as an input. This external clock signal will trigger the changes for each serial output of data bits
Thanks
09-15-2010 10:56 AM - edited 09-15-2010 10:57 AM
5 us (200 kHz) is too fast for the software-timed solution. Unless you are able to slow down the rate you'll want to use a board that supports clocked DIO.
Best Regards,