home *** CD-ROM | disk | FTP | other *** search
- '**************************************
- '
- ' C-Control/BASIC DALCD.BAS
- '
- ' Aufgabe:
- '
- ' - Steuerung der DA-AusgΣnge
- ' - ⁿber vier Tasten <A, >A, <B, >B
- ' - Anzeige der Spannungen am Display
- '
- '**************************************
- ' --- Definitionen --------------------
-
- define Datenbus byteport[1]
- define RS port[9]
- define RW port[10]
- define E port[11]
- define Daten byte
- define Zahl word
- define TasterA1 port[13]
- define TasterA2 port[14]
- define TasterB1 port[15]
- define TasterB2 port[16]
- define AusgangA DA[1]
- define AusgangB DA[2]
- define WertA word
- define WertB word
-
-
- ' --- Programmoperationen -------------
-
- gosub Init
- WertA = 50 '5V
- WertB = 50 '5V
- #Loop
- if (Not TasterA1) then WertA = WertA - 1
- if (Not TasterA2) then WertA = WertA + 1
- if (Not TasterB1) then WertB = WertB - 1
- if (Not TasterB2) then WertB = WertB + 1
- if WertA < 0 then WertA = 0
- if WertA > 255 then WertA = 255
- if WertB < 0 then WertB = 0
- if WertB > 255 then WertB = 255
- AusgangA = WertA
- AusgangB = WertB
- Daten = 0
- gosub Cursor
- Zahl = WertA
- gosub SpannungLCD
- Daten = 64
- gosub Cursor
- Zahl = WertB
- gosub SpannungLCD
- pause 10
- goto Loop
-
- #Init
- E=0
- Daten = &H38 'Initialisierung
- gosub Kommando
- Daten = &H0E 'Display einschalten
- gosub Kommando
- Daten = &H01
- gosub Kommando
- return
-
- #Kommando
- RW = 0
- RS = 0
- Datenbus = Daten
- pulse E
- return
-
- #Zeichen
- RW = 0
- RS = 1
- Datenbus = Daten
- pulse E
- return
-
- #Cursor
- RW = 0
- RS = 0
- Datenbus = Daten + &H80
- pulse E
- return
-
-
- #SpannungLCD '##.# V
- Daten = (Zahl / 100) + 48
- gosub Zeichen
- Zahl = (Zahl mod 100)
- Daten = (Zahl / 10) + 48
- gosub Zeichen
- Daten = 46 '"."
- gosub Zeichen
- Daten = (Zahl mod 10) + 48
- gosub Zeichen
- Daten = 32 '" "
- gosub Zeichen
- Daten = 86 '"V"
- gosub Zeichen
- return
-
- end
-