whynot
09.07.2008, 23:28
Hallo,
hatte hier im Forum schon mal nach einer Balkenanzeige gesucht,
aber nicht soviel gefunden.
Also selberschreiben, das Ergebniss Funktioniert. (Bei mir)
Jedenfalls für eingangswerte 0 - 1023 und 20 Zeichen Display
Dabei ist mir aufgefallen das ich die Variabele B als Integer
Dimensionieren muss, obwohl sie zu keiner zeit grösser 255 ist.
Warum ist das so. ?
Und natürlich wäre ich für Vorschläge Dankbar wie man es
besser mach kann bzw. was man so besser nicht macht.
(Sind meine ersten gehversuche in Bascom)
$regfile = "M8def.dat"
$crystal = 8000000
$hwstack = 32
$swstack = 10
$framesize = 40
$lib "LCD4.LBX"
Dim A As Integer
Dim B As Integer
Dim C As Byte
Dim D As Byte
Dim E As Byte
Config Adc = Single , Prescaler = Auto
Config Lcd = 20 * 4
Deflcdchar 1 , 16 , 16 , 16 , 16 , 16 , 16 , 16 , 16
Deflcdchar 2 , 20 , 20 , 20 , 20 , 20 , 20 , 20 , 20
Deflcdchar 3 , 21 , 21 , 21 , 21 , 21 , 21 , 21 , 21
Cls
Cursor Off
Do
A = Getadc(5)
B = A / 52
A = A / 17
D = 3 * B
C = A - D
E = 19 - B
If C > 3 Then C = 3
If B > 0 Then Lcd String(b , 3)
Lcd String(1 , C )
If B < 19 Then Lcd String(e , 32)
Home Upperline
Loop
End
Gruss Achim
hatte hier im Forum schon mal nach einer Balkenanzeige gesucht,
aber nicht soviel gefunden.
Also selberschreiben, das Ergebniss Funktioniert. (Bei mir)
Jedenfalls für eingangswerte 0 - 1023 und 20 Zeichen Display
Dabei ist mir aufgefallen das ich die Variabele B als Integer
Dimensionieren muss, obwohl sie zu keiner zeit grösser 255 ist.
Warum ist das so. ?
Und natürlich wäre ich für Vorschläge Dankbar wie man es
besser mach kann bzw. was man so besser nicht macht.
(Sind meine ersten gehversuche in Bascom)
$regfile = "M8def.dat"
$crystal = 8000000
$hwstack = 32
$swstack = 10
$framesize = 40
$lib "LCD4.LBX"
Dim A As Integer
Dim B As Integer
Dim C As Byte
Dim D As Byte
Dim E As Byte
Config Adc = Single , Prescaler = Auto
Config Lcd = 20 * 4
Deflcdchar 1 , 16 , 16 , 16 , 16 , 16 , 16 , 16 , 16
Deflcdchar 2 , 20 , 20 , 20 , 20 , 20 , 20 , 20 , 20
Deflcdchar 3 , 21 , 21 , 21 , 21 , 21 , 21 , 21 , 21
Cls
Cursor Off
Do
A = Getadc(5)
B = A / 52
A = A / 17
D = 3 * B
C = A - D
E = 19 - B
If C > 3 Then C = 3
If B > 0 Then Lcd String(b , 3)
Lcd String(1 , C )
If B < 19 Then Lcd String(e , 32)
Home Upperline
Loop
End
Gruss Achim