Jump to content

attila

Technical Forum Moderator
  • Posts

    6,450
  • Joined

  • Last visited

Everything posted by attila

  1. Hi @linc With the 50 V range, the resolution decreases, so a larger hysteresis may be required to reject noise. Use the easier to use acqmodeSingle. The record is only required for streaming for captures longer than the device's buffer size. Use newer software version which provides simple capture up to 128M samples for ADP3X50
  2. In Network Analyzer you can set Source: External and control the sweep from Wavegen or external equipment. The NA will look for peak in the spectrum and consider this the signal frequency. Under Options menu you can adjust the External Threshold, the minimum peak magnitude. Depending or number of Steps, set the sweep time to seconds or minutes, for wide logarithmic scales you can adjust the sweep frequencies manually. When all the step points are captured it will draw a line, until this only dots.
  3. Hi @Andreas Schröck This is currently not possible. Do you need a fixed offset between the two frequencies?
  4. Hi @gcb As you can see in the changelog, beta versions are frequent updates that add new features and fix bugs. The release version comes out about twice a year, usually in sync with a product release, and is tested a bit more. These are useful in class so that everyone uses the version over the course of a semester.
  5. Hi @AlexMark6 You can use the Sweep mode or Amplitude Modulation or a custom waveform but this later one would be limited in resolution.
  6. Hi @AndyMessier See the following: ramp_test2.py
  7. Hi @woldes It shouldn't be that complicated, in Logic select Mode: Record, press the first Config button, adjust the Samples, Rate, Total Time, Trigger positions as needed In Protocol UART tab, use 'Send & Receive' if you are looking only at one uart channel, or Spy for 2 or more, and press Receive.
  8. Hi @gcb You can use the Script tool to automate things or custom app using WaveForms SDK, see DigitalDiscovery_Play Record... examples. and use the latest sw version:
  9. Hi @mat There is no VI for this purpose, but you can use the VI's 'instrument handle' to call the C API
  10. Hi @gcb In Pattern Generator the DIOs can be configured to generate different frequencies, pulses, phases... optionally each having 1k-32k custom pattern buffer. In a bus the selected DIOs are configured at sequential phase, period... settings to generate various types of counters. The Play mode Logic Analyzer is different, currently only available with Digital Discovery. Main usage is to regenerate the capture on 1 or more DIOs but it can also generate data from imported files, DIOs have at same frequency and phase but different bit positions of samples. The application lets you open multiple instruments (Scope, Wavegen, Logic, Patterns, Logger, Voltmeter, Spectrum, Network, Impedance Analyzer, Tracer...) relying on the same device resource (Scope, Wavegen channels, Logic, Patterns, Supplies, StaticIO). Only one of these instances can control at a time a device resource, the last used instance (Run or Stop press), the other display Busy state. Like having multiple identical interfaces open only the last started one will capture, the other will be busy. The Voltmeter, Logger and Spectrum also uses the Scope device resource. The Wavegen channels are separate device resources, can run independently, except when used in Synchronized mode. The Network and Impedance Analyzer use Scope and Wavegen 1 channel, by default, also Supplies and StaticIO when used with IA adapter. The Tracer uses Scope, Wavegen 1 and 2, also Power Supplies and StaticIO when used with Transistor tester adapter. The Protocol tool uses Patterns device resource to send and Logic to receive data. The Logic uses the Patterns resource in Play mode. Regarding your junk.txt which is actually a csv, change the "List separator" to comma. The default delimiter for TXT files is Tab and for CSV is comma. This is regional system option dependent but can be set to US under Settings/Options/Application. If you want to generate burst like in your file, this can be done with all T&M devices and Pattern Generator. The demo mode is intended to explore the application and device features, but it does to fully emulate all the features. DIO24 wired to DIN0
  11. Hi @MattiaB Only with the FDwfDigitalIOPullSet C API For AD3 all DIOs and Trigger IO have the same pull, drive, slew option. up/down: 0/0 none, 1/0 up, 0/1 down, 1/1 keeper
  12. Hi @StefKay The channel indices up to 2x are Filter channels and the following ones are Wavegen digital readbacks. Like AD3 has two real channels + 2 filter channels + 2 AWG readbacks. Indices 0 and 1 are for the scope channels, 2 and 3 are for the filter channels, 4 and 5 are for wavegen readbacks. The EcplyseZ7 and ADP3X50 has additional readback for FM/PM and AM/SUM nodes. Enable these with FDwfAnalogInChannelEnableSet. Note, the device capture memory is shared between the enabled (1,2,4,8) channels so the depth decreases as more are enabled. Like AD3 with the first default configuration has a total of 32k samples buffer. Having one channel enabled you get 32k sample, with 2 enabled 16kS/channel, with 3 or 4 8kS/ch and with 5 or 6 4kS/ch. The sample applies for EcplyseZ7 and ADP3X50 having 256M and 128M sample memory.
  13. Hi @StefKay The FDwfEnumUserName returns the editable name or use FDwfDeviceOpenEx("name:mydevicename\0", &hdwf) The ElypseZ7 is a development board. The WaveForms support for it originally was only used for internal Zmod development, validation, testing and calibration. The board's SN and device name are stored in the other USB controller's EEPROM and the reserved fields for these in the QSPI are empty. To change these, in WaveForms hold down the Ctrl key while opening Settings/'Device Manager'. Now under More dropdown a 'Device IDs' option will show up where you can change the names and SN by entering new value, and press the Set button after the field, but don't change the Prod|Rev|FW.
  14. Hi @SpencerStorey You can use File/Export, the View/Logging or Script tool to automate things, process or export and call external app, or use the SDK.
  15. Hi @scorbetta The rgValue and rgFlag expects 32bit unsigned values. You should store the 'read' as an ID, for instance flag value 1 to represent 'read', 2 to represent 'write'... function Value2Text(flag, value){ switch(flag){ case 0: return "nop"; case 1: return "RD b"+value.toString(2); case 2: return "WR h"+value.toString(16); default: return "DAT "+value; } }
  16. Hi @SergeLafontaine Do you have a notification to allow dwf.framework under System Preferences/ Security & Privacy/ General/ Allow Anyway ?
  17. Hi @Clyde VIO = Digital Power Supply 2 pins on the DIO connector
  18. Hi @Clyde On ADP3X50 the Digital IO voltage is adjustable between 1.2V and 3.3V The VIO output of this, first 2 pins of the DIO connector, is protected and can deliver up to 300mA. The 4 USB host ports are available in Linux mode. 2 of this can deliver 500mA and the other 2 900mA. The device has no other power supplies. Eventually the 2 AWG channel can output +/-5V 30mA 50R
  19. Hi @AKA The DIO drive on AD2 is 4mA. On AD3 is by default 4mA but can be adjusted with C API FDwfDigitalIODriveSet
  20. Hi @AKA What header are you reconnecting ?
  21. Hi @AndyMessier It can generate waveform or pattern from device buffer up to system frequency sample rate or higher, by skipping some, see AnalogOut_Custom.py example The system frequency, for all instruments can be adjusted with DwfParamFrequency. In play mode the data is streamed, transferred in chunks from computer, limiting the sample rate to 1-2MHz The newly added idle hold option keeps the last output value in done state, with finite run time.
  22. Hi @malexander WF links to libs. My testing with Ubuntu 22 was also successful.
  23. Hi @bobql 1. The Sensor tab on execution first calls the initialize function, where sensor register, global variables, file initialization... can be performed. 2. Calls the software loop function, without executing it in the device, to build a pattern with the transfers, like for CS, CLK and MOSI. 3. Starts to generate this pattern with hardware timer at the specified rate and iterations, and at the same time it captures the transfers. 4. Decodes the received MISO bits by software call of loop function, without executing it in the device. 5. At the end calls the finish function, where sensor register shutdown and file finalize can be performed. The software timing of the software function calls in not precise but the pattern generation is, which are basically loop function calls in hardware. Similar can be done in SDK. Pattern with digitalout functions, see DigitalOut_SPI.py example, repeat can be set to 'infinite'. Steps 3-4 can be merged, to receive and decode simultaneously, see DigitalIn_Spi_Spy.py. In Sensors tab these are separate since the sw loop execution takes some time and it would be a bottleneck at high rates.
×
×
  • Create New...