Beispiel: 24 Bit Auflösung / 10 Volt Bereich:
DCL adc(16)
DCL volt(16) FLOAT
DCL bitval
DCL offset
DCL mask
Bitval = 10.0 / ( 32767.0 * 256.0 ) ;
...
READ adc FROM ADC ; /* einlesen der AD-Rohwerte */
FOR i TO 16 REPEAT;
volt(i) =
END ;
6.2.3 DAC Write
Das Anwenderprogramm muss einen Buffer von 8 Werten á 16 Bit zur Verfügung stellen,
aus diesen wird beim Write dann in die 8 Kanäle des DA-Wandlers geschrieben. Es wer-
den nur die unteren 12 Bit genutzt, da ein 12 Bit-DA-Wandler verbaut ist.
6.2.4 PEN Read
Von dem Geräte kann eine 6 Byte grosse Struktur gelesen werden, die folgenden Inhalt
enthält:
Action.W
PosX.W
PosY.W
Das System löst einen EV 00000001 aus beim UP/DOWN.
Das System löst einen EV 00000002 aus beim Schieben
6.2.5 D1G Read / Write
Es werden die digitalen Eingänge 33..64 besetzt bzw. eingelesen.
6.2.6 D2G Read / Write
Beim Read werden die digitalen Eingänge 17..32 eingelesen. Beim Write werden die digi-
talen Ausgänge 1..16 gesetzt.
6.2.7 DER Read
Es wird der Status der DAC-Kanäle gelesen. Damit kann der DAC überwacht werden.
6.2.8 HUP Write
Es ist ein Wort zu übergeben. Mit dem Wert 0 wird der Signalgeber ausgeschaltet, jeder
andere Wert schaltet ihn ein.
BIT(32) ;
;
FLOAT
;
BIT(32) INIT('00800000'B4 ) ;
BIT(32) INIT('00FFFFFF'B4 ) ;
bitval * TOFIXED(( adc(i) AND mask ) – offset );
(1=Touch erkannt, 2=Schieben, 0=kein Touch)
aktuelle Displaykoordinate X
aktuelle Displaykoordinate y
22/37