Herunterladen Inhalt Inhalt Diese Seite drucken

Messkurvendaten Auslesen - Rohde & Schwarz FSL6 Kompakthandbuch

Spektrumanalysator
Inhaltsverzeichnis

Werbung

R&S FSL

Messkurvendaten auslesen

Im folgenden Beispiel werden die Messkurvendaten, die mit der Grundeinstellung
aufgenommen werden, aus dem Gerät ausgelesen und in einer Liste auf dem Bildschirm
dargestellt. Das Auslesen wird nacheinander im Binär- und im ASCII-Format durchgeführt,
einmal bei Span > 0 und einmal bei Span = 0.
Im Binärformat wird der Kopfteil der Meldung mit der Längenangabe ausgewertet und zur
Berechnung der X-Achsenwerte verwendet.
Im ASCII-Format wird lediglich die Liste der Pegelwerte ausgegeben.
Das Auslesen von Binärdaten erfolgt in 3 Schritten:
1. Auslesen der Stellenzahl der Längenangabe
2. Auslesen der Längenangabe selbst
3. Auslesen der Messkurvendaten selbst
Diese Vorgehensweise ist bei Programmiersprachen notwendig, die nur Strukturen mit
gleichartigen Datentypen (Arrays) unterstützen (wie z.B. Visual Basic), da die Datentypen
von Kopfteil und Datenteil bei Binärdaten unterschiedlich sind.
Die VISA-Bibliothek bietet nur einen Mechanismus für das Auslesen in String-Puffer. Für
die Konvertierung der Daten in ein Array präziser Einzelwerte müssen die Inhalte des
Strings in einen Puffer dieses Typs kopiert werden. Das folgende Beispiel verwendet eine
Betriebssystemfunktion für den Kopiervorgang. Die Funktionsdeklaration muss zu einem
Modul (.bas) wie folgt hinzugefügt werden:
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (pDest As
Any, pSource As Any, ByVal ByteLen As Long)
Die Arrays für die Messdaten sind so dimensioniert, dass die Messkurvendaten
des R&S FSL (501 Messpunkte) darin Platz finden.
REM ************************************************************************
Public Sub ReadTrace()
'––––––––– Creating variables ––––––––––––––––––––––––––––––––––––––––––––––
Dim traceData(1250) As Single
Dim digits As Byte
Dim traceBytes As Integer
Dim traceValues As Integer
Dim BinBuffer as String * 5000
Dim retCount as Long
asciiResult$ = Space$(25000)
result$ = Space$(100)
startFreq$ = Space$(100)
span$ = Space$(100)
'––––––––– Default setting of the R&S FSL –––––––––––––––––––––––––––––––––
CALL SetupInstrument
CALL InstrWrite(analyzer,"INIT:CONT OFF")
CALL InstrWrite(analyzer,"INIT;*WAI") 'Perform sweep with sync
1300.2519.61
Komplexere Programmbeispiele
'Buffer for floating point binary data
'Number of characters in
'length specification
'Len. of trace data in bytes
'No. of meas. values in buff.
'String buffer for binary data
'Buffer for ASCII trace data
'Buffer for simple results
'Buffer for start frequency
'Buffer for span
'Default setting
'Switch to single sweep
6.17
D-3

Werbung

Inhaltsverzeichnis
loading

Diese Anleitung auch für:

Fsl18Fsl3

Inhaltsverzeichnis