Digital Waveform Writes
- Updated2023-02-17
- 2 minute(s) read
Digital Waveform Writes
To perform a digital waveform write, call the DigitalSingleChannelWriter.WriteWaveform or DigitalMultiChannelWriter.WriteWaveform method with one DigitalWaveform or an array of DigitalWaveform objects, respectively, for each channel.
When performing a write, NI-DAQmx ignores timing information and extended properties set on the DigitalWaveform; to configure timing, you must use the ConfigureSampleClock method instead.
The following example demonstrates how to perform a digital waveform write on a task with a single channel:
VB.NET
' Given a Task instance "myTask", ' Initialize the data Dim data As DigitalWaveform = New DigitalWaveform(100, 8) ' Create the writer and attach it to the stream Dim writer As DigitalSingleChannelWriter = New DigitalSingleChannelWriter(myTask.Stream) ' Perform the write writer.WriteWaveform(True, data)
C#
// Given a Task instance "myTask", // Initialize the data DigitalWaveform data = new DigitalWaveform(100, 8); // Create the reader and attach it to the stream DigitalSingleChannelWriter writer = new DigitalSingleChannelWriter(myTask.Stream); // Perform the write writer.WriteWaveform(true, data);
The following example demonstrates how to perform a digital waveform write on a task with multiple channels:
VB.NET
' Given a Task instance "myTask", ' Initialize the data Dim data(2) As DigitalWaveform data(0) = New DigitalWaveform(100, 8) data(1) = New DigitalWaveform(100, 8) ' Create the writer and attach it to the stream Dim writer As DigitalMultiChannelWriter = New DigitalMultiChannelWriter(myTask.Stream) ' Perform the write writer.WriteWaveform(True, data)
C#
// Given a Task instance "myTask", // Initialize the data DigitalWaveform[] data = new DigitalWaveform[2]; data[0] = new DigitalWaveform(100, 8); data[1] = new DigitalWaveform(100, 8); // Create the reader and attach it to the stream DigitalMultiChannelWriter writer = new DigitalMultiChannelWriter(myTask.Stream); // Perform the write writer.WriteWaveform(true, data);