Herunterladen Inhalt Inhalt Diese Seite drucken

Programmierbeispiele In Quickbasic; Ieee-Werteberechnung Mittels Mks$ Und Csv-Funktion - ABB TZA 401 Bedienungsanleitung

Messrechner modbus-schnittstelle
Inhaltsverzeichnis

Werbung

Programmierbeispiele in Quickbasic 4.5

IEEE-Werteberechnung mittels MKS$ und CSV-Funktion

'Demoprogramm zur Bearbeitung von IEEE-Werte-Darstellung
'in Quick-Basic 4.5
'benutzt die Quick-Basic-Funktionen MKS$ und CVS
'-------------------------------------------------------
DECLARE FUNCTION BIN.AER$ (z$)
DECLARE FUNCTION HEX2$ (x)
CLS
DO
INPUT "Realwert (E = Ende) "; Realwert$
IF UCASE$(Realwert$) = "E" THEN END
Realwert! = VAL(Realwert$)
'-------------------------------------------------------
'Aufbereiten:
'-------------------------------------------------------
' Realwert in IEEE-Darstellung
IEEE$ = MKS$(Realwert!)
FOR I = 0 TO 3
Byte(I) = ASC(MID$(IEEE$, I + 1, 1))
NEXT
Date0& = Byte(1) * 256 + Byte(0)
Date1& = Byte(3) * 256 + Byte(2)
'Diese 2 Worte muessen richtig in das Sendetelegramm
'eingebaut werden.
'-------------------------------------------------------
'Kontroll-Darstellungen
IEEE$ = HEX2$(Byte(3)) + HEX2$(Byte(2))
IEEE$ = IEEE$ + HEX2$(Byte(1)) + HEX2$(Byte(0))
PRINT IEEE$; " ="; BIN.AER$(IEEE$)
'=======================================================
'Zurückrechnen
'-------------------------------------------------------
'es sind empfangen worden die Bytes(0) bis Byte(3)
'-------------------------------------------------------
IEEEHEX$ = ""
FOR I = 0 TO 3
IEEEHEX$ = IEEEHEX$ + CHR$(Byte(I))
NEXT
Realwert! = CVS(IEEEHEX$)
PRINT "Rueckrechnung = "; Realwert!
LOOP
'----------------------------------------
'Umwandlung einer Hex-Ziffer in Binärdarstellung
'---------------------------------------------------
FUNCTION BIN.AER$ (z$)
DEFINT A-Z
FOR I = 1 TO LEN(z$)
x1$ = ""
x% = VAL("&H" + MID$(z$, I, 1))
DO UNTIL x% = 0
Y$ = LTRIM$(STR$(x% MOD 2))
x% = x% \ 2
x1$ = Y$ + x1$
LOOP
x1$ = RIGHT$("0000" + x1$, 4)
x$ = x$ + " " + x1$
NEXT
BIN.AER$ = x$
END FUNCTION
'----------------------------------------
DEFSNG A-Z
'Stellt Hex-Ziffern zweistellig dar
'----------------------------------------
FUNCTION HEX2$ (x)
HEX2$ = RIGHT$("00" + HEX$(x), 2)
END FUNCTION
'4 Byte-String
Programmierbeispiele in Quickbasic 4.5 23

Werbung

Inhaltsverzeichnis
loading

Inhaltsverzeichnis