Search the Community

Showing results for tags 'waveforms sdk'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


  • News
    • New Users Introduction
    • Announcements
  • Digilent Technical Forums
    • FPGA
    • Digilent Microcontroller Boards
    • Non-Digilent Microcontrollers
    • Add-on Boards
    • Test and Measurement
    • LabVIEW
    • FRC
    • Other
  • General Discussion
    • Project Vault
    • Learn
    • Suggestions & Feedback
    • Buy, Sell, Trade
    • Sales Questions
    • Off Topic
    • Educators
    • Technical Based Off-Topic Discussions

Find results in...

Find results that contain...

Date Created

  • Start


Last Updated

  • Start


Filter by number of...


  • Start





Website URL







Found 18 results

  1. Hi! I'm exploring the example provided in waveforms (DWF version 3.14.2) and noticed the following behavior: If I reduce the nSamples to less than 8194 on line 29, the program gets stuck in the acquisition loop. If I increase the frequency to 10MHz (line 28) , and take for example 1000 samples (line 29), I get unexpected sample values in the plot: Is this behavior expected? Kind regards
  2. If I configure the SPI with mode 0 (polarity=0 and phase=0) and LSB in WaveForms SDK in the Digital Discovery or Analog Discovery 2, and I send the byte 163=0xA3=b10100011; I would see the following: Is it guaranteed that when there is a falling edge of SCLK, the MOSI takes the value just before the transition (the SCLK edge)? What I mean is; is the following image accurate:
  3. I have a device that has a single 16-bits SPI shift register (for both transmissions and receptions). It responds to falling edges of SCLK. The input of the shift register is connected to MOSI and the output to MISO, as the following figure. As the MOSI signal is input to the first flip-flop of the shift register, it should remain stable (not change) during a falling edge of SCLK, while MISO changes its value during a falling edge of SCLK. This way, MISO and MOSI signals are not synchronized. I want to communicate with this device using WaveForms SDK. Is there a w
  4. Hi, I am using Labview to create a pattern generator and logic analyzer on the Analog Discovery Kit using the waveforms sdk dll. At the minute the pattern generator is functioning and I am using it to send data to a second discovery kit to test the logic analyzer. I am having issues acquiring the acquisition data when using the FDwfDigitalInStatusData node, when transmitting 0xFF, I read back 0x6 or 0x9 depending on the trigger position setting. I am only interested in the data after the trigger, I have scourged the internet trying to find a solution with no luck, I have a feeling I am miss u
  5. Are there any differences between Python and C++ version of WaveForms SDK API functions with respect to execution time of the functions?
  6. Is there any way to program an interrupt when a digital input pin goes high in WaveForms SDK with Analog Discovery 2 or Digital Discovery? I want to write a code (using WaveForms SDK), with which I wait for a digital input pin to go high. After the pin goes high, I want to continue with the program. Something like the following code: # Some code while (not digitalInputPinIsHigh()): continue # Continue with the program The problem is that the pin's output is a pulse that is only high for 30 μs, so if I continuously check the digital input pin until it goes high, I think I can
  7. I am programming a Digital Discovery with WaveForms SDK (in Python) to communicate via SPI with an FPGA. The SPI comunication has 16 bit words. First, I have to send the address to read or write (the first bit of the 16 bit word indicates whether it is a read 0 or a write 1). Then, in the second 16 bit word, I read the data if it was a read operation, or I send the data if it was a write operation. I have the following code: # Imports from ctypes import * from dwfconstants import * import sys import time # Load dwf library if sys.platform.startswith("win"): dwf = cdll.LoadLibr
  8. Hi there, Until here, I've done quite a few things, with the magnificient help of attila. I've done a lot a threads that can use the AD2 to record the analog inputs, or the digital inputs, that can configure the analog outputs or the digital outputs. When I run all of those threads together, it works perfectly fine (except for the tick of my PC, that doesn't allow me to be really fast with the digital outputs, but it's not a big problem for the moment). And then, the UART appeared. I have to say, it works great. The problem is with the UART and the digital outputs. When bot
  9. Hello, I have a problem concerning the Digital Discovery using the Waveforms SDK. I thought it is possible to use the full 256MBytes on-board recording memory for 8-bit sampling, but I am only able to read 64M samples, no matter if I use 32 bit, 16 bit or 8 bit sampling (which I configure with the function FDwfDigitalInSampleFormatSet). The maximum size I can set via FDwfDigitalInBufferSizeSet() is 64M (i.e. 67108864), no matter what sample size I set via FDwfDigitalInSampleFormatSet(). That is, if I try to set a higher value for the buffer size, FDwfDigitalInBufferSizeGe
  10. Hello, I am using the Waveforms SDK in LabVIEW with an ADK2. However, something strange is happening. I am generating an array in kHz from 230 to 225. I want to do a frequency sweep through these. That part works fine, except for the first iteration. I've noticed that when FDwfDeviceOpen is run, it generates an odd waveform. AnalogOutFrequencyGet and AnalogOutAmplitudeGet says 1000 Hz and 1 V, respectively. I did not set it to do this and I can't figure out how to stop it. FDwfDeviceOpen is run once and that's the only time this waveform happens. I have thoroughly tested and found that FD
  11. Hello, I'm a bit confused as to how the Waveforms manages its buffer. I'm using the Waveforms SDK (via LabVIEW) to both generate a pulse and act as a scope using the Analog Discovery Kit 2. I am generating a 50 ms, 5V pulse with a frequency of 230 kHz. This is connected to a hardware device. I then want to use the scope function to record the output form this device. I can get the scope to read, but I don't really understand why it works the way that it does. As it stands, the only way that I can consistently get a waveform is as follows (AnalogIn): AutoTimeout: 0.5 Sample
  12. Hello, I am creating a program in LabVIEW that is supposed to accomplish 2 goals: Generate a 50ms pulse using the Analog Discovery Kit 2. The pulse being generated is a 0-5 V square wave with frequencies ranging from ~220 kHz - 230kHz. This component works reliably and I have this completed. Then, use the ADK2 oscilloscope to read and save the data to file. The scope will be attached to secondary hardware which is generating an output. However, I am running into an issue with getting data using the AnalogIn components of the Waveforms SDK. Simply put, it's not working. I want to reco
  13. Hi All, I am having trouble with the Waveforms SDK (using the VBA DLL wrapper), where in I am trying to load more than 500 samples from the AnalogIn instrument on the Analog Discovery 2. Any samples above the 500 first samples are empty. This is using the single acquisition mode. Is there a way to get more than 500 samples per Acquisition, as the buffer is set to around 8k. If not, what is the buffer size there for? Regards, ELy
  14. Thanks for pointing me to the information detailing how to import the dwf.dll's into Labview and for the example code that was available in the WaveForms 2015 SDK. I've been able to use the SDK digital output function calls in LabView to control the digital outputs of the Digital Discovery. I've been able to produce patterns and control timing just like in the WaveForms 2015 program. What I've failed to accomplish is using the SDK digital input functions to acquire data on the digital input lines and dump the logic analyzer memory to an array in LabView. Are there any examples using these
  15. I am trying to write a Python script for a repeated-mode simultaneous logic analyzer / oscilloscope capture using the Analog Discovery 2 and running into some problems. How do I set active digital channels? For example, if I want to modify the DigitalIn_Record example to record from both channel 0 and 1. Is there an analogous command to the AnalogIn version: dwf.FDwfAnalogInChannelEnableSet(hdwf, c_int(0), c_bool(True)) Sorry if this is a trivial question but I cannot find an example or note in the reference manual.
  16. Hello, I'm trying to integrate my Analog Discovery 2 into a testbench for a microcontroller. I started from the code shown in the digitalin_record.cpp example. I have had success using the Waveforms sdk to record signals when sampling at 5Mhz after I changed from the default configuration to one where there is a 16k sample buffer for each digital channel. However, I trigger on one digital input's rising edge and I want to capture only the following 4650 samples. I have not had success in doing so because I always find that a number of samples precede the trigger sample in my recorded data. I h
  17. Hi, I am trying to figure out how to use either ScanShift or ScanScreen acquisition mode for Digital Inputs into the Analog Discovery. And well, I can't get it to work, and haven't really been able to find any information online. My overall goal is to be able to stream out the digital data, so that I can capture and store more (continuous) data than the 16 kB buffer size. This doesn't have to run fast, I need to capture at 10,000 samples per second. The problem seems to be that the Digital In is staying in a "trigger" state. I am using Python, and using the function: dwf.FDwfDigitalInStatus(hd
  18. Hi! In Waveforms 3, one can choose Clock as the output type in Digital Pattern Generator. However, Waveforms SDK offers only 3 choices i.e. Pulse, Custom and Random. Is there any way to directly set the clock or one is is required to customize the Pulse or Random to behave as a clock?