From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Digital I/O

cancel
Showing results for 
Search instead for 
Did you mean: 

Generating arbitrary digital waveforms

Hello,

 

I'm new to the world of hardware-timed digital signals, so I'm unsure of how to proceed. I have a cDAQ-9174 and a NI 9474, which I'd like to use to produce two periodic, synchronized digital signals:

 

digital_wfm.png

 

What's a good way to accomplish this? I found the DAQmx "Generate Signals" -> "Digital Output" task, but that seems to only generate uniform pulse trains, not the arbitrary waveform I'm looking for.

 

 

Thanks in advance.

Certified LabVIEW Developer
0 Kudos
Message 1 of 3
(5,179 Views)

Ok, one step closer to the answer. DAQmx Write.vi (Digital Wfm 1Chan NSamp) lets me define an arbitrary waveform for 1 channel. How do I specify waveforms for two channels?

Certified LabVIEW Developer
0 Kudos
Message 2 of 3
(5,173 Views)

Final answer:

  1. Call DAQmx Create Channel.vi (Digital Output) M times to set M channels
  2. Pass a 1D array of Digital Waveforms with M elements into DAQmx Write.vi (Digital 1D Wfm NChan NSamp)
Certified LabVIEW Developer
0 Kudos
Message 3 of 3
(5,166 Views)