Jump to content

Component: PicoScope (PS2000) (Test Equipment): Difference between revisions

From Flowcode Help
No edit summary
m Text replacement - "width="90%" style="background-color:#D8C9D8; color:#4B008D;"" to "width="90%" class="mtx-class-macrohead""
 
(19 intermediate revisions by 3 users not shown)
Line 14: Line 14:
==PicoScope component==
==PicoScope component==
A set of functions designed for interacting with a 2000 series Pico scope via simulation.
A set of functions designed for interacting with a 2000 series Pico scope via simulation.
==Component Source Code==
Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_PS2000.fcsx FC_Comp_Source_PS2000.fcsx]
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_PS2000.fcsx FC_Comp_Source_PS2000.fcsx]


==Detailed description==
==Detailed description==




Line 27: Line 55:




An example project showing the capabilities of the Velleman K8055D board combined with a Pico Technology series 2 scope.


{{Fcfile|Velleman_and_Picoscope_v2.fcfx|Velleman and Picoscope Demo}}


==Downloadable macro reference==


{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ps2000_get_timebase'''
|-
| colspan="2" | Returns details associated with the selected timebase index 
|-
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | Handle
|-
| colspan="2" | the handle of the required device. 
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | timebase
|-
| colspan="2" | The ps2000a API allows you to select any of 2 32  different timebases based on a maximum sampling rate of 1 GS/s. 
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | no_of_samples
|-
| colspan="2" | number of samples required 
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | time_interval
|-
| colspan="2" | time interval between readings at the selected timebase. Use NULL if not required. 
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | time_units
|-
| colspan="2" |  
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | oversample
|-
| colspan="2" | not used. 
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | max_samples
|-
| colspan="2" | on exit, the maximum number of samples available. 
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:]] -
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
 
 
 
 
 
 
 
 
 
''<span style="color:red;">No additional examples</span>''
 
==Macro reference==
 
===ps2000_close_unit===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ps2000_open_unit_progress'''
| width="90%" class="mtx-class-macrohead" | '''ps2000_close_unit'''
|-
|-
| colspan="2" | This function checks on the progress of a request made to ps2000aOpenUnitAsync to open a scope.&nbsp;
| colspan="2" | This function shuts down an oscilloscope.&nbsp;
|-
|-
|-
|-
| width="10%" align="center" | [[File:]] -  
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | handle
| width="90%" | Handle
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | The handle of the scope device to be closed&nbsp;
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | Progress
|-
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:]] -  
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===ps2000_flash_led===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ps2000_flash_led'''
| width="90%" class="mtx-class-macrohead" | '''ps2000_flash_led'''
|-
|-
| colspan="2" | This function flashes the LED on the front of the scope without blocking the calling thread. &nbsp;
| colspan="2" | This function flashes the LED on the front of the scope without blocking the calling thread. &nbsp;
|-
|-
|-
|-
| width="10%" align="center" | [[File:]] -  
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | handle
| width="90%" | handle
|-
|-
| colspan="2" | handle of the scope device&nbsp;
| colspan="2" | handle of the scope device&nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:]] -  
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===ps2000_get_timebase===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ps2000_stop'''
| width="90%" class="mtx-class-macrohead" | '''ps2000_get_timebase'''
|-
|-
| colspan="2" | This function stops the scope device from sampling data. If this function is called before a trigger event occurs, the oscilloscope may not contain valid data.&nbsp;
| colspan="2" | Returns details associated with the selected timebase index&nbsp;
|-
|-
|-
|-
| width="10%" align="center" | [[File:]] -  
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | Handle
| width="90%" | Handle
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | the handle of the required device.&nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:]] -  
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" | timebase
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| colspan="2" | The ps2000a API allows you to select any of 2 32  different timebases based on a maximum sampling rate of 1 GS/s.&nbsp;
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ps2000_get_unit_info'''
|-
|-
| colspan="2" | This function retrieves information about the specified oscilloscope.&nbsp;
| width="10%" align="center" | [[File:Fc9-s32-icon.png]] - LONG
| width="90%" | no_of_samples
|-
|-
| colspan="2" | number of samples required&nbsp;
|-
|-
| width="10%" align="center" | [[File:]] -  
| width="10%" align="center" | [[File:Fc9-s32-icon.png]] - LONG
| width="90%" | Handle
| width="90%" | time_interval
|-
|-
| colspan="2" | the handle of the device&nbsp;
| colspan="2" | time interval between readings at the selected timebase. Use NULL if not required.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | info_string
| width="90%" | time_units
|-
|-
| colspan="2" | unit information string&nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:]] -  
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | string_length
| width="90%" | oversample
|-
|-
| colspan="2" | the maximum number of chars in the string&nbsp;
| colspan="2" | not used.&nbsp;
|-
|-
| width="10%" align="center" | [[File:]] -  
| width="10%" align="center" | [[File:Fc9-s32-icon.png]] - LONG
| width="90%" | info_line
| width="90%" | max_samples
|-
|-
| colspan="2" | a number specifying what information is required. 0=DriverVersion / 1=USBVersion / 2=HardwareVersion / 3=VariantInfo / 4=BatchAndSerial / 5=CalDate / 6=KernelVersion / 7=DigHardwareVersion / 8=AnHardwareVersion&nbsp;
| colspan="2" | on exit, the maximum number of samples available.&nbsp;
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:]] -
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ps2000_set_channel'''
|-
| colspan="2" | This function specifies whether an input channel is to be enabled, its input coupling type, voltage range, analog offset and bandwidth limit.&nbsp;
|-
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | handle
|-
| colspan="2" | Handle of the device&nbsp;
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | channel
|-
| colspan="2" | the channel to be configured.  The values are: 0=ChanA / 1=ChanB&nbsp;
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | enabled
|-
| colspan="2" | whether or not to enable the channel. The values are: 0=Disable / 1=Enable&nbsp;
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | dc
|-
| colspan="2" | the impedance and coupling type. Values: 0=AC / 1=DC&nbsp;
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | range
|-
| colspan="2" | the input voltage range: 0=50mV / 1=100mV / 2=200mV / 3=500mV / 4=1V / 5=2V / 6=5V / 7=10V / 8=20V&nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:]] -  
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===ps2000_get_times_and_values===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ps2000_get_times_and_values'''
| width="90%" class="mtx-class-macrohead" | '''ps2000_get_times_and_values'''
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | &nbsp;
|-
|-
|-
|-
| width="10%" align="center" | [[File:]] -  
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | Handle
| width="90%" | Handle
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:]] -  
| width="10%" align="center" | [[File:Fc9-s32-icon.png]] - LONG
| width="90%" | times
| width="90%" | times
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:]] -  
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | buffer_a
| width="90%" | buffer_a
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:]] -  
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | buffer_b
| width="90%" | buffer_b
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:]] -  
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | buffer_c
| width="90%" | buffer_c
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:]] -  
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | buffer_d
| width="90%" | buffer_d
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:]] -  
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | overflow
| width="90%" | overflow
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:]] -  
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | time_units
| width="90%" | time_units
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:]] -  
| width="10%" align="center" | [[File:Fc9-s32-icon.png]] - LONG
| width="90%" | no_of_samples
| width="90%" | no_of_samples
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:]] -  
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s32-icon.png]] - LONG
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===ps2000_get_unit_info===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ps2000_set_trigger'''
| width="90%" class="mtx-class-macrohead" | '''ps2000_get_unit_info'''
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | This function retrieves information about the specified oscilloscope.&nbsp;
|-
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | handle
|-
| colspan="2" | &nbsp;
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | source
|-
| colspan="2" | &nbsp;
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | threshold
|-
| colspan="2" | &nbsp;
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | direction
|-
| colspan="2" | &nbsp;
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | delay
|-
|-
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:]] -
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | auto_trigger_ms
|-
| colspan="2" | &nbsp;
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:]] -
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ps2000_set_sig_gen_built_in'''
|-
| colspan="2" |  sets up the signal generator to produce a signal from a list of built-in waveforms&nbsp;
|-
|-
| width="10%" align="center" | [[File:]] -  
| width="90%" | Handle
| width="90%" | Handle
|-
|-
| colspan="2" | Handle to the device&nbsp;
| colspan="2" | the handle of the device&nbsp;
|-
|-
| width="10%" align="center" | [[File:]] -  
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| width="90%" | Offset_uV
| width="90%" | info_string
|-
|-
| colspan="2" | the voltage offset, in microvolts, to be applied to the waveform&nbsp;
| colspan="2" | unit information string&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u32-icon.png]] - ULONG
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | pk2pk_uV
| width="90%" | string_length
|-
|-
| colspan="2" | the peak-to-peak voltage, in microvolts, of the waveform&nbsp;
| colspan="2" | the maximum number of chars in the string&nbsp;
|-
|-
| width="10%" align="center" | [[File:]] -  
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | waveType
| width="90%" | info_line
|-
|-
| colspan="2" | the type of waveform to be generated. 0=Sine / 1=Square / 2=Triangle / 3=RampUp / 4=RampDown / 5=Sinc / 6=Gaus / 7=HalfSine / 8=DC&nbsp;
| colspan="2" | a number specifying what information is required. 0=DriverVersion / 1=USBVersion / 2=HardwareVersion / 3=VariantInfo / 4=BatchAndSerial / 5=CalDate / 6=KernelVersion / 7=DigHardwareVersion / 8=AnHardwareVersion&nbsp;
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | startFrequency
|-
| colspan="2" | the frequency that the signal generator will initially produce&nbsp;
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | stopFrequency
|-
| colspan="2" | the frequency at which the sweep reverses direction or returns to initial&nbsp;
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | increment
|-
| colspan="2" | the amount of frequency increase or decrease in sweep mode&nbsp;
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | dwellTime
|-
| colspan="2" | the time for which the sweep stays at each frequency, in seconds&nbsp;
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | sweepType
|-
| colspan="2" | whether the frequency will sweep from startFrequency to stopFrequency. 0=Up, 1=Down, 2=UpDown, 3=DownUp&nbsp;
|-
| width="10%" align="center" | [[File:Fc9-u32-icon.png]] - ULONG
| width="90%" | sweeps
|-
| colspan="2" | produce number of cycles specified by shots&nbsp;
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:]] -
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ps2000_close_unit'''
|-
| colspan="2" | This function shuts down an oscilloscope.&nbsp;
|-
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | Handle
|-
| colspan="2" | The handle of the scope device to be closed&nbsp;
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:]] -
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ps2000_run_block'''
|-
| colspan="2" | This function starts collecting data in block mode.&nbsp;
|-
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | handle
|-
| colspan="2" | &nbsp;
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | no_of_samples
|-
| colspan="2" | &nbsp;
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | timebase
|-
| colspan="2" | &nbsp;
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | oversample
|-
| colspan="2" | &nbsp;
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | time_indisposed_ms
|-
|-
| colspan="2" | &nbsp;
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:]] -  
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===ps2000_get_values===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ps2000_get_values'''
| width="90%" class="mtx-class-macrohead" | '''ps2000_get_values'''
|-
|-
| colspan="2" | This function returns block-mode data, with or without downsampling.&nbsp;
| colspan="2" | This function returns block-mode data, with or without downsampling.&nbsp;
|-
|-
|-
|-
| width="10%" align="center" | [[File:]] -  
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | Handle
| width="90%" | Handle
|-
|-
| colspan="2" | the handle of the required device.&nbsp;
| colspan="2" | the handle of the required device.&nbsp;
|-
|-
| width="10%" align="center" | [[File:]] -  
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | buffer_a
| width="90%" | buffer_a
|-
|-
| colspan="2" | Start point for data collection&nbsp;
| colspan="2" | Start point for data collection&nbsp;
|-
|-
| width="10%" align="center" | [[File:]] -  
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | buffer_b
| width="90%" | buffer_b
|-
|-
| colspan="2" | Number of samples&nbsp;
| colspan="2" | Number of samples&nbsp;
|-
|-
| width="10%" align="center" | [[File:]] -  
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | buffer_c
| width="90%" | buffer_c
|-
|-
| colspan="2" | Down sample ratio&nbsp;
| colspan="2" | Down sample ratio&nbsp;
|-
|-
| width="10%" align="center" | [[File:]] -  
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | buffer_d
| width="90%" | buffer_d
|-
|-
| colspan="2" | Down sample mode : 0=None / 1=Aggregate / 2=Decimate / 4=Average&nbsp;
| colspan="2" | Down sample mode : 0=None / 1=Aggregate / 2=Decimate / 4=Average&nbsp;
|-
|-
| width="10%" align="center" | [[File:]] -  
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | overflow
| width="90%" | overflow
|-
|-
| colspan="2" | Flags to indicate if an overflow has occurred&nbsp;
| colspan="2" | Flags to indicate if an overflow has occurred&nbsp;
|-
|-
| width="10%" align="center" | [[File:]] -  
| width="10%" align="center" | [[File:Fc9-s32-icon.png]] - LONG
| width="90%" | no_of_samples
| width="90%" | no_of_samples
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:]] -  
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s32-icon.png]] - LONG
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===ps2000_open_unit===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ps2000_ready'''
| width="90%" class="mtx-class-macrohead" | '''ps2000_open_unit'''
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | Returns a handle to the opened unit Returns 0 if no unit found Returns -1 if unit failed to open&nbsp;
|-
|-
| width="10%" align="center" | [[File:]] -
| width="90%" | Handle
|-
|-
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:]] -  
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===ps2000_open_unit_async===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ps2000_open_unit_async'''
| width="90%" class="mtx-class-macrohead" | '''ps2000_open_unit_async'''
|-
|-
| colspan="2" | This function opens a scope without blocking the calling thread.&nbsp;
| colspan="2" | This function opens a scope without blocking the calling thread.&nbsp;
|-
|-
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:]] -  
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===ps2000_open_unit_progress===
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''ps2000_open_unit_progress'''
|-
| colspan="2" | This function checks on the progress of a request made to ps2000aOpenUnitAsync to open a scope.&nbsp;
|-
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ps2000_open_unit'''
| width="90%" | handle
|-
|-
| colspan="2" | Returns a handle to the opened unit Returns 0 if no unit found Returns -1 if unit failed to open&nbsp;
| colspan="2" | &nbsp;
|-
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | Progress
|-
|-
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:]] -  
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===ps2000_ready===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''CommsBaud'''
| width="90%" class="mtx-class-macrohead" | '''ps2000_ready'''
|-
|-
| colspan="2" | Sets the Baud rate of the alt communications channel&nbsp;
| colspan="2" | &nbsp;
|-
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | Baud
| width="90%" | Handle
|-
|-
| colspan="2" | Range: 0-7 : 0=1200 / 7=115200&nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===ps2000_run_block===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''LCDOptions'''
| width="90%" class="mtx-class-macrohead" | '''ps2000_run_block'''
|-
|-
| colspan="2" | Controls some of the LCD options&nbsp;
| colspan="2" | This function starts collecting data in block mode.&nbsp;
|-
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | Foreground
| width="90%" | handle
|-
|-
| colspan="2" | Range: 0-1&nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-s32-icon.png]] - LONG
| width="90%" | Background
| width="90%" | no_of_samples
|-
|-
| colspan="2" | Range: 0-1&nbsp;
| colspan="2" | &nbsp;
|-
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | timebase
|-
| colspan="2" | &nbsp;
|-
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | oversample
|-
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-s32-icon.png]] - LONG
| width="90%" | Transparent
| width="90%" | time_indisposed_ms
|-
|-
| colspan="2" | Range: 0-1&nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===ps2000_set_channel===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''LCDVerbose'''
| width="90%" class="mtx-class-macrohead" | '''ps2000_set_channel'''
|-
|-
| colspan="2" | Controls the Verbose mode.  When enabled the LCD automatically displays an account of the incoming API commands and parameters. When switched off the LCD is free for the user to control as required.&nbsp;
| colspan="2" | This function specifies whether an input channel is to be enabled, its input coupling type, voltage range, analog offset and bandwidth limit.&nbsp;
|-
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | Mode
| width="90%" | handle
|-
|-
| colspan="2" | Range: 0-1 : 0=Off or User Mode / 1=API Verbose Mode&nbsp;
| colspan="2" | Handle of the device&nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" | channel
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| colspan="2" | the channel to be configured.  The values are: 0=ChanA / 1=ChanB&nbsp;
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ReadDigitalInput'''
|-
|-
| colspan="2" | Reads a single digital input.&nbsp;
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | enabled
|-
|-
| colspan="2" | whether or not to enable the channel.  The values are: 0=Disable / 1=Enable&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | Channel
| width="90%" | dc
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | the impedance and coupling type. Values: 0=AC / 1=DC&nbsp;
|-
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | range
|-
| colspan="2" | the input voltage range: 0=50mV / 1=100mV / 2=200mV / 3=500mV / 4=1V / 5=2V / 6=5V / 7=10V / 8=20V&nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===ps2000_set_sig_gen_built_in===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''PWMConfig'''
| width="90%" class="mtx-class-macrohead" | '''ps2000_set_sig_gen_built_in'''
|-
|-
| colspan="2" | Sets the PWM configuration. Channel = 0 - 1 : 0 = EN_AB, A, B / 1 = EN_CD, C, D Period = 0 - 65535 Scaler = 0 - 3 :  0=1:1 1=1:8 2=1:64 3=1:256&nbsp;
| colspan="2" | sets up the signal generator to produce a signal from a list of built-in waveforms&nbsp;
|-
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | Channel
| width="90%" | Handle
|-
|-
| colspan="2" | Range 0-1&nbsp;
| colspan="2" | Handle to the device&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="10%" align="center" | [[File:Fc9-s32-icon.png]] - LONG
| width="90%" | Period
| width="90%" | Offset_uV
|-
|-
| colspan="2" | Range: 0-65535&nbsp;
| colspan="2" | the voltage offset, in microvolts, to be applied to the waveform&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-u32-icon.png]] - ULONG
| width="90%" | Scaler
| width="90%" | pk2pk_uV
|-
|-
| colspan="2" | Range: 0-3&nbsp;
| colspan="2" | the peak-to-peak voltage, in microvolts, of the waveform&nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" | waveType
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| colspan="2" | the type of waveform to be generated. 0=Sine / 1=Square / 2=Triangle / 3=RampUp / 4=RampDown / 5=Sinc / 6=Gaus / 7=HalfSine / 8=DC&nbsp;
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''PWMEnable'''
|-
|-
| colspan="2" | Allows pulse width modulated transistor outputs to be switched on or off. Bit 0 = Enable AB Bit 1 = A / Bit 2 = B Bit 3 = C / Bit 4 = D Bit 5 = Enable CD&nbsp;
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" | startFrequency
|-
|-
| colspan="2" | the frequency that the signal generator will initially produce&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" | EnableMask
| width="90%" | stopFrequency
|-
|-
| colspan="2" | Range 0-63 or 0b00000 to 0b111111&nbsp;
| colspan="2" | the frequency at which the sweep reverses direction or returns to initial&nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" | increment
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| colspan="2" | the amount of frequency increase or decrease in sweep mode&nbsp;
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''PWMDuty'''
|-
|-
| colspan="2" | Sets a single PWM channel duty. Channel = 0 - 5 : 0=EN_AB, 1=A, 2=B, 3=C, 4=D, 5=EN_CD Duty = 0 - 65535&nbsp;
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" | dwellTime
|-
|-
| colspan="2" | the time for which the sweep stays at each frequency, in seconds&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | Channel
| width="90%" | sweepType
|-
|-
| colspan="2" | Range 0-5&nbsp;
| colspan="2" | whether the frequency will sweep from startFrequency to stopFrequency. 0=Up, 1=Down, 2=UpDown, 3=DownUp&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="10%" align="center" | [[File:Fc9-u32-icon.png]] - ULONG
| width="90%" | Duty
| width="90%" | sweeps
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | produce number of cycles specified by shots&nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===ps2000_set_trigger===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''LCDCursor'''
| width="90%" class="mtx-class-macrohead" | '''ps2000_set_trigger'''
|-
|-
| colspan="2" | Sets the cursor position for the MIAC display&nbsp;
| colspan="2" | &nbsp;
|-
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | X
| width="90%" | handle
|-
|-
| colspan="2" | Range: 0-21&nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | Y
| width="90%" | source
|-
|-
| colspan="2" | Range: 0-4&nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" | threshold
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| colspan="2" | &nbsp;
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''WriteTran'''
|-
|-
| colspan="2" | Allows a single transistor output to be switched on or off.&nbsp;
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | direction
|-
|-
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | Channel
| width="90%" | delay
|-
|-
| colspan="2" | Range 1-4&nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" | Value
| width="90%" | auto_trigger_ms
|-
|-
| colspan="2" | 0 = Off, 1 = On&nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===ps2000_stop===
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''LCDClear'''
| width="90%" class="mtx-class-macrohead" | '''ps2000_stop'''
|-
|-
| colspan="2" | Clears the MIAC display&nbsp;
| colspan="2" | This function stops the scope device from sampling data. If this function is called before a trigger event occurs, the oscilloscope may not contain valid data.&nbsp;
|-
|-
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" | Handle
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| colspan="2" | &nbsp;
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''LCDClear'''
|-
| colspan="2" | Clears the LCD&nbsp;
|-
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




==Property reference==
==Property reference==


{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties'''
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Connections'''
|-
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-prop-icon.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Simulations'''  
| width="90%" class="mtx-class-macrohead" | '''Properties'''  
|-
|-
|}
|}

Latest revision as of 14:23, 13 July 2026

Author Matrix Ltd
Version 1.0
Category Test Equipment


PicoScope component

A set of functions designed for interacting with a 2000 series Pico scope via simulation.

Component Source Code

Please click here to download the component source project: FC_Comp_Source_PS2000.fcsx

Please click here to view the component source code (Beta): FC_Comp_Source_PS2000.fcsx

Detailed description

No detailed description exists yet for this component

Examples

No additional examples

Macro reference

ps2000_close_unit

ps2000_close_unit
This function shuts down an oscilloscope. 
- INT Handle
The handle of the scope device to be closed 
- INT Return


ps2000_flash_led

ps2000_flash_led
This function flashes the LED on the front of the scope without blocking the calling thread.  
- INT handle
handle of the scope device 
- INT Return


ps2000_get_timebase

ps2000_get_timebase
Returns details associated with the selected timebase index 
- INT Handle
the handle of the required device. 
- INT timebase
The ps2000a API allows you to select any of 2 32 different timebases based on a maximum sampling rate of 1 GS/s. 
- LONG no_of_samples
number of samples required 
- LONG time_interval
time interval between readings at the selected timebase. Use NULL if not required. 
- INT time_units
 
- INT oversample
not used. 
- LONG max_samples
on exit, the maximum number of samples available. 
- INT Return


ps2000_get_times_and_values

ps2000_get_times_and_values
 
- INT Handle
 
- LONG times
 
- INT buffer_a
 
- INT buffer_b
 
- INT buffer_c
 
- INT buffer_d
 
- INT overflow
 
- INT time_units
 
- LONG no_of_samples
 
- LONG Return


ps2000_get_unit_info

ps2000_get_unit_info
This function retrieves information about the specified oscilloscope. 
- INT Handle
the handle of the device 
- STRING info_string
unit information string 
- INT string_length
the maximum number of chars in the string 
- INT info_line
a number specifying what information is required. 0=DriverVersion / 1=USBVersion / 2=HardwareVersion / 3=VariantInfo / 4=BatchAndSerial / 5=CalDate / 6=KernelVersion / 7=DigHardwareVersion / 8=AnHardwareVersion 
- INT Return


ps2000_get_values

ps2000_get_values
This function returns block-mode data, with or without downsampling. 
- INT Handle
the handle of the required device. 
- INT buffer_a
Start point for data collection 
- INT buffer_b
Number of samples 
- INT buffer_c
Down sample ratio 
- INT buffer_d
Down sample mode : 0=None / 1=Aggregate / 2=Decimate / 4=Average 
- INT overflow
Flags to indicate if an overflow has occurred 
- LONG no_of_samples
 
- LONG Return


ps2000_open_unit

ps2000_open_unit
Returns a handle to the opened unit Returns 0 if no unit found Returns -1 if unit failed to open 
- INT Return


ps2000_open_unit_async

ps2000_open_unit_async
This function opens a scope without blocking the calling thread. 
- INT Return


ps2000_open_unit_progress

ps2000_open_unit_progress
This function checks on the progress of a request made to ps2000aOpenUnitAsync to open a scope. 
- INT handle
 
- INT Progress
 
- INT Return


ps2000_ready

ps2000_ready
 
- INT Handle
 
- INT Return


ps2000_run_block

ps2000_run_block
This function starts collecting data in block mode. 
- INT handle
 
- LONG no_of_samples
 
- INT timebase
 
- INT oversample
 
- LONG time_indisposed_ms
 
- INT Return


ps2000_set_channel

ps2000_set_channel
This function specifies whether an input channel is to be enabled, its input coupling type, voltage range, analog offset and bandwidth limit. 
- INT handle
Handle of the device 
- INT channel
the channel to be configured. The values are: 0=ChanA / 1=ChanB 
- INT enabled
whether or not to enable the channel. The values are: 0=Disable / 1=Enable 
- INT dc
the impedance and coupling type. Values: 0=AC / 1=DC 
- INT range
the input voltage range: 0=50mV / 1=100mV / 2=200mV / 3=500mV / 4=1V / 5=2V / 6=5V / 7=10V / 8=20V 
- INT Return


ps2000_set_sig_gen_built_in

ps2000_set_sig_gen_built_in
sets up the signal generator to produce a signal from a list of built-in waveforms 
- INT Handle
Handle to the device 
- LONG Offset_uV
the voltage offset, in microvolts, to be applied to the waveform 
- ULONG pk2pk_uV
the peak-to-peak voltage, in microvolts, of the waveform 
- INT waveType
the type of waveform to be generated. 0=Sine / 1=Square / 2=Triangle / 3=RampUp / 4=RampDown / 5=Sinc / 6=Gaus / 7=HalfSine / 8=DC 
- FLOAT startFrequency
the frequency that the signal generator will initially produce 
- FLOAT stopFrequency
the frequency at which the sweep reverses direction or returns to initial 
- FLOAT increment
the amount of frequency increase or decrease in sweep mode 
- FLOAT dwellTime
the time for which the sweep stays at each frequency, in seconds 
- INT sweepType
whether the frequency will sweep from startFrequency to stopFrequency. 0=Up, 1=Down, 2=UpDown, 3=DownUp 
- ULONG sweeps
produce number of cycles specified by shots 
- INT Return


ps2000_set_trigger

ps2000_set_trigger
 
- INT handle
 
- INT source
 
- INT threshold
 
- INT direction
 
- INT delay
 
- INT auto_trigger_ms
 
- INT Return


ps2000_stop

ps2000_stop
This function stops the scope device from sampling data. If this function is called before a trigger event occurs, the oscilloscope may not contain valid data. 
- INT Handle
 
- INT Return


Property reference

Properties