Showing results for 
Search instead for 
Did you mean: 

SPI Digital Waveform Library

Re: SPI Digital Waveform Library

I have used the digital waveform library with the pci-6221. You need to use the correlated DIO example. I am not sure exactly where I found it but it was on NI's website.

0 Kudos
Message 121 of 181

Re: SPI Digital Waveform Library

Dear all,


We have an NI PCI-6229 DAQ card and we have modified the SPI Digital Waveform Library to communicate with a custom A/D converter chip. 

Our goal is to log data from the chip as fast as possible and store them to a file for further processing. We are currently working with 100kHz SPI clock rate and each transaction needs 40 bits to complete (400 us). Our problem is that when running in continuous mode we can't initiate transactions faster than ~ 25 ms. Is this normal? This latency is observed even when running in a while loop only the part of the code that generates the waveform to the hardware.

We want to reduce this latency to minimum (< 1-2 ms if possible). Any feedback is much appreciated!




0 Kudos
Message 122 of 181

Re: SPI Digital Waveform Library

Hello everyone,


I was wondering if this SPI Digital Waveform Library works with NI myDAQ.


Thank you in advance

0 Kudos
Message 123 of 181

Re: SPI Digital Waveform Library



  I have an application where i need to capture ADC data continuously using SPI communication .ADC used in this application is 12 bit ADC and it gives out data when CSB line is Low for 16 clock cycle .





Driver niHSDIO

CSB --> Low for 16 clk

MISO--> Connected to Serial data out of ADC

MOSI --> Not used



If i use Below attached code it works fine for few 100's of sample but if i need to capture more number of saple say 5000 or more sample it becomes very slow. Can some one help me out in creating SPI waveform for 100k sample and store it in 6552 onboard memory --->Send it to ADC --> store ADC captured data for 100k samples in onboard memory --> transfer this data to PC memory for post processing.




0 Kudos
Message 124 of 181

回复: SPI Digital Waveform Library

Is there any C++ or .Net sample for this  SPI Digital Waveform Library ???


Thinks a lot.


0 Kudos
Message 125 of 181

Re: 回复: SPI Digital Waveform Library

Dear, someone could help me? I believe that is simple, but I have not much knowledge in LabVIEW. I am using the example posted by David S. SPI for communication between Labview and a microcontroller. The microcontroller sends an 8-bit information, which I see in the graph as a waveform, but I need to show this information as a number, this is the result of a measure of microcnotrolador. How do this? I'm not so familiar with Labview.

0 Kudos
Message 126 of 181

Re: 回复: SPI Digital Waveform Library

Hi all, 


i'm using "DAQmx SPI - Internal" from "Serial Protocols with Waveform Devices" downloaded at, i got a Cdaq9174 with NI 9401 and i want to generate a simple SPI waveform to use as source to test SPI reading capabilities on 4 DIO pins of a sbRIO 9602 configured to read data with SPI protocol.


I get error on Init IntClk

Error -200452 occurred at Property Node DAQmx Export Signal (arg 1) in Init IntClk

Possible reason(s):

Specified property is not supported by the device or is not applicable to the task.

Property: DataActiveEvent.OutputTerm

Task Name: _unnamedTask<F>


Can you help me to solve this?





0 Kudos
Message 127 of 181

Explanation of how to write SDW SPI waveform



First, thanks to David S. for writing this great SPI library. 


I have read the entire thread.  I am trying to implement a SPI master on a USB-6229 with labview 2011.  I have read, executed and understood the correlated DO example.  Likewise for the waveform-generating example that comes with the SDW.  But, I am having trouble bridging a gap: how do I write the waveform produced by the SDW subVIs?  No polymorphic version of DAQmx digital writes seems to be happy with it.  Examining various posts in this thread, it looks like people are picking apart the SPI signal and writing it channel by channel using multiple discrete correlated tasks, one per SPI line.  Is there a more elegant way of doing this?


I have attached a snippet of pared-down code showing the wire I am trying to understand: it's the output of the SDW SPI library, which has all SPI lines in one channel.  I've tried every version of the DO write VI, but can't find one that will accept this wire (I can wire it, but I get runtime erros about the number of channels not matching).  I've created my task with all 3 output channels, each initialized using "One channel for all lines" attribute, as instructed in the SDW documentation.  I've ignored the MISO input line, as I don't need it.


In other words: how can I match the SPI SDW wire (multiple signals in one waveform) with the needs of DAQmx (one signal per waveform, perhaps as rows in a 2D array)?

0 Kudos
Message 128 of 181

Rif.: SPI Digital Waveform Library


I'd like to have a clarification about the SPI Digital Waveform Library. 

Is it possible to use this library with the NI cDAQ-9191 mounting a NI9401 Digital I/O Module?




Christian_L ha scritto:

Please provide feedback, comments and questions on the SPI Digital Waveform reference library in this thread.


- David


(posted by Christian on behalf of David)



0 Kudos
Message 129 of 181

Re: SPI Digital Waveform Library



I'm working on a SPI communication with an USB-6341. (With Correlated DIO)

After I set CS1 high (CS aktive high), I write 4 Bytes of Data to the device. Then I set CS2 high and would like to read Data from the device.

I'm able to send the 4 Bytes to the device (only one slave is set in the programm). -> Device reacts right.

When i set two slaves in the programm in the next step, i get error -200463 from the CorrDIO VI.

I have no idea what is wrong in my VI....

0 Kudos
Message 130 of 181