Programming Examples
40
Keysight InfiniiVision M9241/42/43A PXIe Oscilloscopes SCPI Programmer's Guide
1479
Debug.Print "Waveform points: " + _
FormatNumber(lngPoints, 0)
Debug.Print "Waveform average count: " + _
FormatNumber(lngCount, 0)
Debug.Print "Waveform X increment: " + _
Format(dblXIncrement, "Scientific")
Debug.Print "Waveform X origin: " + _
Format(dblXOrigin, "Scientific")
Debug.Print "Waveform X reference: " + _
FormatNumber(lngXReference, 0)
Debug.Print "Waveform Y increment: " + _
Format(sngYIncrement, "Scientific")
Debug.Print "Waveform Y origin: " + _
FormatNumber(sngYOrigin, 0)
Debug.Print "Waveform Y reference: " + _
FormatNumber(lngYReference, 0)
' Get the waveform data
Dim lngNumBytes As Long
lngNumBytes = DoQueryIEEEBlock_Bytes(":WAVeform:DATA?")
Debug.Print "Number of data values: " + _
CStr(lngNumBytes - CInt(Chr(byteArray(1))) - 2)
' Set up output file:
strPath = "c:\scope\data\waveform_data.csv"
' Open file for output.
Open strPath For Output Access Write Lock Write As hFile
' Output waveform data in CSV format.
Dim lngDataValue As Long
' Skip past header.
For lngI = CInt(Chr(byteArray(1))) + 2 To lngNumBytes - 2
lngDataValue = CLng(byteArray(lngI))
' Write time value, voltage value.
Print #hFile, _
FormatNumber(dblX (lngI * dblXIncrement), 9) + _
", " + _
FormatNumber(((lngDataValue - lngYReference) * _
sngYIncrement) + sngYOrigin)
Next lngI
' Close output file.
Close hFile
' Close file.
MsgBox "Waveform format BYTE data written to " + _
"c:\scope\data\waveform_data.csv."