Beispiel: Unterprozeduren (Pseudo-Treiber-Technik)
adminZuletzt aktualisiert: 15.06.2026
metcalbeispielcallfldfindunterprozedur
Dieses Beispiel zeigt die Pseudo-Treiber-Technik: Ein Hauptprogramm übergibt Parameter an ein Unterprogramm, das je nach Eingabe automatisch die passende Messung wählt. So lässt sich dieselbe Unterprozedur wiederverwenden, Code reduzieren und die Struktur vereinfachen. Schlüsselbefehle: CALL, FLD(), FIND(), JMPL, LABEL.
Hauptprogramm
1.001 MATH MEM2="200V 2%" Parameter fuer Spannung uebergeben
1.002 CALL Unterprogramm Unterprogramm aufrufen
1.003 MATH MEM2="1kZ 1.5%" Parameter fuer Widerstand uebergeben
1.004 CALL Unterprogramm Unterprogramm aufrufen
Unterprogramm
1.001 MATH MEM=FLD(MEM2,1," ") Ersten Wert extrahieren (z. B. 200)
1.002 MATH M[1]=FLD(MEM2,2," ") Zweiten Wert extrahieren (z. B. 2)
1.003 JMPL VOLT_FUNKTION FIND(MEM2,"V",1) > 0 Spannung?
1.004 JMPL OHM_FUNKTION FIND(MEM2,"Z",1) > 0 Widerstand?
1.005 LABEL VOLT_FUNKTION
1.006 JMPL MILLI_VOLT FIND(MEM2,"m",1) > 0 Millivolt?
1.007 5500 V M1% 2W Messung durchfuehren
2.001 JMPL ENDE
2.002 LABEL MILLI_VOLT
2.003 5500 mV M1% 2W Messung durchfuehren
3.001 JMPL ENDE
3.002 LABEL OHM_FUNKTION
3.003 JMPL KILO_OHM FIND(MEM2,"k",1) > 0 Kiloohm?
3.004 5500 Z M1% CW Messung durchfuehren
4.001 LABEL KILO_OHM
4.002 5500 kZ M1% 2W Messung durchfuehren
5.001 LABEL ENDE
Erklärung
- MATH MEM=FLD(MEM2,1," ") – extrahiert das erste Feld der Zeichenkette in
MEM2, getrennt durch Leerzeichen. Da MEM nur Zahlen aufnimmt, bleibt z. B. aus „200V" der Wert 200. - FIND(MEM2, "V", 1) – prüft, ob „V" (für Spannung) im String
MEM2vorkommt. Falls ja, erfolgt der Sprung zum LabelVOLT_FUNKTION. - CALL Unterprogramm – ruft das Unterprogramm auf und übergibt die zuvor definierten Parameter.
- JMPL [Bedingung] – springt zu einem Label, wenn die Bedingung wahr ist.
- LABEL – definiert einen Zielpunkt für bedingte oder bedingungslose Sprünge.
Logik in Kürze
- Das Hauptprogramm legt die Messparameter in
MEM2ab. - Das Unterprogramm zerlegt sie in Wert und Toleranz, erkennt Spannung oder Widerstand und führt die passende Messung aus.
- Labels strukturieren die Logik und erlauben gezielte Sprünge.
So lassen sich Unterprozeduren wiederverwenden, Code reduzieren und komplexe Prozeduren effizienter gestalten.
