-
Posts
6,668 -
Joined
-
Last visited
Content Type
Profiles
Forums
Events
Gallery
Posts posted by attila
-
-
Hi @Zeyu
1. Use argument 1 to fetch data dwf.FDwfAnalogInStatus(hdwf, c_int(1), byref(sts))
2. On AD2 the Record mode, streaming over USB working at up to about 1-2MHz
You could use 2nd configuration to have 16ki sample device buffer which can be used at up to 100MHz. The default, first configuration has 8kiS, 8192S3. The generated signal is set to 5V amplitude, 10Vpk2pk. The Scope channel 1 range is set to 5Vpk2pk.
-
-
-
Hi @spbhanus
May I ask what the problem was.
-
Hi @spbhanus
Please contact Mathworks.
It is working for me with MATLAB 2020bIt prints error if the device is used by another application or the WF runtime version is not 3.7.2(0)
-
-
Hi @maling
The 36W should be typically suffice suffice for 9 devices.
The FDwfGetLastErrorMsg should be called immediately after the failing function. Calling another function will clear the error of previous function.
For the mentioned Python 3 support I've only updated the py examples. -
Hi @LarsB
Do you have GND connection between Digital Discovery and the electronic device ?
Is the Voltage/Threshold correctly set in WF/Supplies ?
I would recommend to use the latest software:
https://forum.digilentinc.com/topic/8908-waveforms-beta-download/ -
-
For instance with Wavegen Custom/Math like below (/3 to fit in +-100% and 3V amp to amplify it back), or Func and Alter/Add twice.
-
-
-
Such could be implemented with custom application:
FDwfDigitalInAcquisitionModeSet(hdwf, acqmodeRecord)
FDwfDigitalInSampleFormatSet(device.hdwf, 16)
FDwfDigitalInInternalClockInfo(hdwf, &hzBase)
FDwfDigitalInDividerSet(hdwf, hzBase/UartRate/X) X = ~5
forever:
FDwfDigitalInStatus(hdwf, 1, &sts)
FDwfDigitalInStatusRecord(hdwf, &ca, &ce, &cw)
for i in ca:
uint16 sample
FDwfDigitalInStatusData2(hdwf, &sample, i, 2) // 16bits = 2bytes
process it: look for start, bits, stop... X=5 sample/uart-bitI've added UartSpy to the SDK motodo list but I don't know when I'll have time to implement it.
-
Hi @josu.jugo
Beside the trigger level the selected filter, hysteresis and channel range (resolution) could influence the sensitivity.
FDwfAnalogInTriggerFilterSet(hdwf, filterAverage) default is decimate which looks for trigger at 100MHz sample rate, average only at specified frequency
FDwfAnalogInTriggerHysteresisSet(hdwf, 0.1) level +/-hyst
FDwfAnalogInChannelRangeSet(hdwf, idx, 5.0) select 5Vpk2pk range (<=5.0) or 50V (>5.0)You could also use pulse, slope trigger and holdoff options.
-
Hi @maling
Could it be a powering issue?
Depending on usage each AD2 could take 2-5W. With 9 units this could be 18-45W, 3.6-9A/5V Is this in the limits of the USB hub/supply.Each FDwf functions returns true (1) on success or false (0) on failure.
It could be used like this:bool myfunc(){
if FDwf...(.) ==0 return false
if FDwf...(..) ==0 return false
...
return true
}if !myfunc() {
FDwfGetLastErrorMsg(sz)
print(sz)
} -
Hi @spbhanus
See the links in the earlier post:
On 10/22/2021 at 10:49 AM, attila said:Hi @spbhanus
1. The MATLAB DAQ toolbox plugin only supports Analog Discovery 1/2 and provides limited features.
However the WaveForms SDK which lets you to use all the features (including simultaneous analog/digital sampling) can also be used from MATLAB, see the following post:2. Yes. With plugin like below and with SDK FDwfAnalogInChannelRangeSet
https://www.mathworks.com/help/daq/getting-started-acquiring-data-with-digilent-analog-discovery.html -
-
-
-
-
-
Hi @longboard
Try Independent or Synchronized (option after Channels), set Run to Auto and Repeat Trigger checked.
-
Hi @longboard
The length is "unlimited" (limited by the host) since it is streamed, sent in chunks to the device.
-
Hi @ca_michelle
Thank you for the observation.
Next week you will have the version fixing this issue.
Can I run I2C in loopback on Analog Discovery (old black model) with protocol/logic analyzer ?
in Test and Measurement
Posted · Edited by attila
Hi @varunnagpaal
Make sure the wiring is correct and the devices use common ground.
Make sure the pullup voltage is correct, 3.3V or at least above 1.5V
I managed to reproduce the "Transferring data" hold by setting the pullup to 1.5V
This because at this level it is in hysteresis domain of the 3.3V logic. After the master releases the low drive it will not go up to logic high.