Search the Community

Showing results for tags 'api'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • News
    • New Users Introduction
    • Announcements
  • Digilent Technical Forums
    • FPGA
    • Digilent Microcontroller Boards
    • Non-Digilent Microcontrollers
    • Add-on Boards
    • Scopes & Instruments
    • 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

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


AIM


MSN


Website URL


ICQ


Yahoo


Jabber


Skype


Location


Interests

Found 13 results

  1. Greetings, Is there a way to receive 0/1 values for the captured samples using FDwfDigitalInStatusData? I tried transmitting ASCII "a" but the result for each channel is different. I expected and wanted a result of Binary (1000 0110) using ASCII "a", but the actual result that I got was different for each DIO channels. Actual result using DIO #0 = (1)000 0(1)(1)0 Actual result using DIO #1 = (2)000 0(2)(2)0 Actual result using DIO #2 = (4)000 0(4)(4)0 Actual result using DIO #7 = (128)000 0(128)(128)0 I want the result from DIO #1, 2, and 7 to display 0/1 values, but I haven't had any breakthroughs so far. I'm aware that I asked this question sometime ago, but I decided to start a new thread because the other one is too long already. The previous advice that was given to me is from this link: The problem is, I did not fully understand how to apply it to the code I'm working on given below: Dim idxDevice As Integer : idxDevice = -1 Dim handle As Integer 'LA Parameters Dim phzFreq As Double Dim acqMode As Integer : acqMode = 0 Dim trigSrc As Byte : trigSrc = 3 'trigsrcDetectorDigitalIn As Byte = 3 'Set Trigger Bits for Channels to be used Dim LowStateTrigger As UInteger : LowStateTrigger = 0 Dim HighStateTrigger As UInteger : HighStateTrigger = 0 Dim RisingEdgeTrigger As UInteger : RisingEdgeTrigger = 0 Dim FallingEdgeTrigger As UInteger : FallingEdgeTrigger = &HFFFF Dim BaudRate As Double : BaudRate = 9600 Dim nBits As Integer : nBits = 16 Dim SampleMode As Integer : SampleMode = 0 'DwfDigitalInSampleModeSimple As Byte = 0 '4096 for 8bit, 2048 for 16 bit, 1024 for 32bit Dim cSamples As Integer : cSamples = 2048 Dim cSamplesAfterTrigger As Integer : cSamplesAfterTrigger = cSamples - 1 Dim fReconfigure As Integer : fReconfigure = 0 Dim fStart As Integer : fStart = 1 Dim fReadData As Integer : fReadData = 1 Dim sts As Byte Dim rgwData(cSamples) As UInt16 Dim countOfDataBytes As Integer : countOfDataBytes = 2 * cSamples 'Opening Device Call AD2_FDwfDeviceOpen(idxDevice, handle) 'DigitalIn Parameters Call AD2_FDwfDigitalInInternalClockInfo(handle, phzFreq) Call AD2_FDwfDigitalInAcquisitionModeSet(handle, acqMode) Call AD2_FDwfDigitalInTriggerSourceSet(handle, trigSrc) Call AD2_FDwfDigitalInTriggerSet(handle, LowStateTrigger, HighStateTrigger, RisingEdgeTrigger, FallingEdgeTrigger) Call AD2_FDwfDigitalInTriggerAutoTimeoutSet(handle, 10.0) Call AD2_FDwfDigitalInDividerSet(handle, (phzFreq / BaudRate)) Call AD2_FDwfDigitalInSampleFormatSet(handle, nBits) Call AD2_FDwfDigitalInSampleModeSet(handle, SampleMode) Call AD2_FDwfDigitalInBufferSizeSet(handle, cSamples) Call AD2_FDwfDigitalInTriggerPositionSet(handle, cSamplesAfterTrigger) 'Configure for Reception Call AD2_FDwfDigitalInConfigure(handle, fReconfigure, fStart) 'Start Reception Call AD2_FDwfDigitalInStatus(handle, fReadData, sts) 'Retrieves Captured Samples Call AD2_FDwfDigitalInStatusData(handle, rgwData, countOfDataBytes) 'Closing Device Call AD2_FDwfDigitalInReset(handle) Call AD2_FDwfDeviceClose(handle) Any advice would really help a lot. Thanks in advance Regards, Lesiastas
  2. Greetings, I am creating a VBA Macro Script to enable the Pattern Generator function of Analog Discovery 2 for parallel transmission of data. I've already created a VB6 Wrapper (Pattern_Generator) containing these two files: 1). Pattern Generator Wrapper.txt(Calls APIs from dwf.vb) 2). dwf.vb I've referenced it to a VBA Script to call those functions using this snippet of codes: Public TxWrapper As Pattern_Generator.ComClass1 Public Function PatGenForTx() Set TxWrapper = New Pattern_Generator.ComClass1 'PatGen Parameters Dim rgBits1 As String: rgBits1 = "UART" Dim n As Long: n = Len(rgBits1) + 1 Dim idxDevice As Long: idxDevice = -1 Dim handle As Long Dim phzFreq As Double Dim idxChannel1 As Long: idxChannel1 = 0 Dim fEnable As Long: fEnable = 1 Dim secRun1 As Double: secRun1 = (n * 8) * (1 / 9600) Dim cRepeat As Long: cRepeat = 1 Dim t As Long: t = 1 ''DwfDigitalOutTypeCustom As Byte = 1 Dim i As Long: i = 2 ''DwfDigitalOutIdleHigh As Byte = 2 Dim countOfBits1 As Long: countOfBits1 = n * 8 Dim fStart As Long: fStart = 1 'Initializing Device PatGen = TxWrapper.AD2_FDwfDeviceOpen(idxDevice, handle) 'Setting for enabling 1st Channel PatGen = TxWrapper.AD2_FDwfDigitalOutInternalClockInfo(handle, phzFreq) PatGen = TxWrapper.AD2_FDwfDigitalOutEnableSet(handle, idxChannel1, fEnable) PatGen = TxWrapper.AD2_FDwfDigitalOutRunSet(handle, secRun1) PatGen = TxWrapper.AD2_FDwfDigitalOutRepeatSet(handle, cRepeat) PatGen = TxWrapper.AD2_FDwfDigitalOutTypeSet(handle, idxChannel1, t) PatGen = TxWrapper.AD2_FDwfDigitalOutIdleSet(handle, idxChannel1, i) PatGen = TxWrapper.AD2_FDwfDigitalOutDividerSet(handle, idxChannel1, (phzFreq / 9600)) PatGen = TxWrapper.AD2_FDwfDigitalOutDataSet(handle, idxChannel1, rgBits1, countOfBits1) 'Start Site 1 Transmission PatGen = TxWrapper.AD2_FDwfDigitalOutConfigure(handle, fStart) 'Closing Device PatGen = TxWrapper.AD2_FDwfDigitalOutReset(handle) PatGen = TxWrapper.AD2_FDwfDeviceCloseAll() End Function But I am encountering this error at the FDwfDigitalOutDataSet: Any advice? Regards, Lesiastas
  3. Greetings, I am creating a VBA program which uses the DigitalOut Functions in the dwf.vb file to replicate the capability of the AD2's Pattern Generator. I'm having trouble of declaring the FDwfDigitalOutDataSet API in VBA. I always encounter this error: I am aware that this is because of some data types in VB6 that are not supported in VBA. I've encountered similar errors in the FDwfDigitalOutRepeatSet and the FDwfDigitalOutDividerSet API. What I did was change the UInteger data type to Integer, since its the data type supported supported in VBA. Function FDwfDigitalOutRepeatSet(ByVal hdwf As Integer, ByVal cRepeat As Integer) As Integer End Function Function FDwfDigitalOutDividerSet(ByVal hdwf As Integer, ByVal idxChannel As Integer, ByVal v As Integer) As Integer End Function I already changed countOfBits in FDwfDigitalOutDataSet from UInteger to Integer, but the error is still present. I think the error is because of the <MarshalAs(UnmanagedType.LPArray)> used in the FDwfDigitalOutDataSet. What changes could I do to FDwfDigitalOutDataSet in order to agree with VBA? Function FDwfDigitalOutDataSet(ByVal hdwf As Integer, ByVal idxChannel As Integer, <MarshalAs(UnmanagedType.LPArray)> rgBits() As Byte, ByVal countOfBits As Integer) As Integer End Function Sorry in advance, but I could be wrong since I'm a complete novice in coding, especially across different programming platforms. Any advice on how to work around this? Regards, Lesiastas
  4. Greetings, Forgive me, but I'm not that knowledgeable in python and I'm having trouble understanding the "create_string_buffer" argument in the Digital_UART.py sample code. How do you declare this "create_string_buffer" statement into its VB6 equivalent? Sincerely yours, Lesiastas
  5. Greetings! I'm working on a project involving the use of the Analog Discovery 2's Logic Analyzer feature and I've been tasked to recreate its function through the use of a VB6 Wrapper. I'm having a hard time finding the correct APIs to use. The Python sample codes in the WaveForms SDK folder isn't working when I tried to use it in receiving ASCII bits from a UART controller. For people like me that aren't good in coding, it would be great if it would at least contain more examples showing the different uses of the settings present in the Logic Analyzer GUI. So I just set some additional APIs that could help my code and here's the code that I've made so far: The main showstopper that I've encountered right now is the highlighted API in the picture above. It's suppose to retrieve the acquired data samples from the instrument, but it still cannot receive the bits of the ASCII character that I'm sending. This is the result that I'm trying to replicate using the Logic Analyzer APIs: I used a UART Controller as the Tx to the VB6 Wrapper while I was doing breakpoint debug in it to see the received bits. These are the results that I got: It received a "1" and "0" bits unlike the one in the Logic Analyzer GUI. I could be wrong, but I think the problem is I still haven't set the Trigger and Trigger Detector APIs for the Logic Analyzer properly. Any advice guys?
  6. Greetings! I'm currently working on a project involving the use of the Analog Discovery 2's Logic Analyzer. I was tasked to created a VB6 Wrapper to replicate the functions of the Logic Analyzer WaveForms GUI. I'm not very knowledgeable in coding so I was wondering how to translate this python variable from the DigitalIn_Acquisition sample code into its VB6 equivalent: Here's the VB6 code that I made: Again, I'm very sorry, but I'm still a novice at coding. Though I understand that you can't insert a UShort value in a 1-Dimensional Byte Array, I can't think of a way to declare it in order to agree with the Byte Array Data Type. Any advice guys?
  7. Greetings! I'm working on a Project involving the use of the Analog Discovery 2's Pattern Generator function. I was tasked to create a VB6 Wrapper in MS Visual Studio 2013 that will perform the functions of the Pattern Generator by calling certain APIs from its dwf VB.NET file. I have two concerns on how to do this. First, as I looked at the WaveFormsSDK sample codes and the WaveForms™ SDK Reference Manual, there is no API available for setting the clock frequency of the Pattern Generator, unlike in its WaveForms GUI. The only API available is the FDwfDigitalOutInternalClockInfo, which only retrieves the internal clock frequency, not set it to want I need. Secondly, what I need is to sucessfully transmit an ASCII character using the APIs of the Pattern Generator. I'm a novice at coding, especially with complicated routines, so I'm having trouble with coding for the FDwfDigitalOutDataSet API. What I want to do is to send an ASCII character using a string variable that will be converted into its binary equivalent using the snippet of codes below and store those values to the rgBits variable, which is a byte array to transmit it. For example, I'll use ASCII character "U", convert it to its binary form which is Bin(01010101) and put those values in the rgBits variable to be sent to a UART Controller or Logic Analyzer to see if it was transmitted properly. I came up with these codes but I don't think its the correct way of doing it. Sorry but I'm really, really not that good at coding. It would really help to receive some advice on how to do it. 'Convert String to Binary Dim Text As String = TextBox1.Text Dim oReturn As New StringBuilder 'but first, convert String to Byte() Dim PatGenTx As String = ("") Dim rgBits() As Byte ReDim rgBits(0 To Len(PatGenTx)) For i = 1 To Len(PatGenTx) rgBits(i) = Asc(Mid(PatGenTx, i, 1)) Debug.Print(rgBits(i)) Next 'Then store binary values into byte array For Each Character As Byte In ASCIIEncoding.ASCII.GetBytes(Text) oReturn.Append(Convert.ToString(Character, 2).PadLeft(8, "0")) oReturn.Append(PatGenTx) Next TextBox2.Text = (oReturn.ToString) 'Take note: bits order is lsb first ' for TS output the count of bits its the total number of IO|OE bits, it should be an even number ' BYTE: 0 |1 ... ' bit: 0 |1 |2 |3 |...|7 |0 |1 |... ' sample: IO|OE|IO|OE|...|OE|IO|OE|... Dim countOfBits As UInteger : countOfBits = 8 Thank you and God Bless you guys.
  8. Hi! My goal is to use the Analog Digital 2 in order to move a piezoelectric via stick slip motion. I want to program this into a python script so that I can move the stage one step, record data for x amount of time, move the stage one step, record data, etc. In order to do this, I want to output a specific number of sawtooth wave periods (one to two) at a certain frequency. From these posts (https://forum.digilentinc.com/topic/4084-analog-discovery-2-waveform-generator/ , https://forum.digilentinc.com/topic/2609-how-to-create-one-pulse-via-sdk/#comment-9014), I have figured out how to do this through the GUI. I have also followed the example scripts and can output standing wave forms, just not pulses. So now, I am looking for some guidance in putting these together. Can you give me some suggestions, advice, or code snippets that might allow me to accomplish this? Are there any functions in the dwf module that might work? Any help is welcome and appreciated! Thanks, Harry digilentScreenCap
  9. Hi, I am using the Waveforms APIs to process the raw waveform data from the oscilloscope of AD2 to a C++ code. My other requirement is to use the logic analyzer simultaneously to get the data bit stream of data as well. 1. I was able to do this on the Waveforms 2015 GUI but is it possible using the APIs? 2. There are analyzers (SPI, I2C, Serial, CAN etc.) present in the Waveforms GUI, but is there a preset to do the same in the API? (not just being able to read 0/1 but analyse the SPI/CAN bus) Thanks, Shabbir
  10. Hi everyone ! I'd like to use the JTAG-HS3 cable to work on a project which consists in testing several interconnections between devices on a board. I'm using DJTG and DMGR APIs and i'm connected via ssh to the computer which has the cable plugged on. My question is: How do i connect to the board with the DMGR API? I know that i have to use DmgrOpen() function but it requires a "device name", which i don't have. Thanks in advance ! Have a nice day !
  11. I just purchased an Analog Discovery and have been enjoying it so far. The OSX Waveforms2105 app works flawlessly. I'm now trying to run the python example code in the SDK in order to write my own software. If I run `DigitalOut_Pins.py`, I get the following: DWF Version: 3.3.5 Opening first device failed to open device Any ideas? Can I debug this in any way? Thanks.
  12. Hi, Is it possible to program the JTAG-USB cable directly via the FTDI D2XX library, bypassing the Adept DJTG library? It seems to be possible to identify the device after a call to FT_SetVIDPID, but FT_OpenEx always seems to return FT_DEVICE_NOT_OPENED. Is another step needed first? Or is the source code for the Adept SDK libs available? Thanks, Jon
  13. Hello, noob here I just started a project for my university BEng and is based on the chipKit WiFire provided by my supervisor. So far, i felt in love wth MPIDE because is so easy to use and it has all ready for me with 1 exception. The Flowcloud library. For the first 2 months and so I just figured out how to use MPIDE because the boards were from flowcloud so the USB-to-serial cable didn't work so I burned the Bootloader with Digilent's firmware. But now, I lost the Flowcloud app from the PIC chip that my project depends on so much because is required to use a cloud service. Anyhow, my request is: Can someone please tell me how to add the Flowcloud libraries and example codes/functions to work with MPIDE? I really hate MPLAB X because is so complicated and has no examples. Thank you in advance. P.S. I already talked in Flowcloud developer forum about this issue but they told me this is Digilent/chipkit's domain to integrate flowcloud/MPLAB Harmony libraries with MPIDE.