Ja ich weiß nur nicht wie ich den "LCD Zähler" programmieren muss.
Da brauche ich hilfe.
Gruß
Speed
Druckbare Version
Ja ich weiß nur nicht wie ich den "LCD Zähler" programmieren muss.
Da brauche ich hilfe.
Gruß
Speed
Hallo Speed,
Ich kenne da nur die alte C-Control I und deren Application Board.Zitat:
Ja ich weiß nur nicht wie ich den "LCD Zähler" programmieren muss.
Ich weiss nicht genau, welche Du hast.
Bei meiner alten CC1 ginge das so:
#AUSGABE
gosub LCD_CLS
lcd_param = &H4E : gosub LCD_WRITECHAR 'N
lcd_param = &H52 : gosub LCD_WRITECHAR 'R
lcd_param = &H20 : gosub LCD_WRITECHAR '
value=COUNT:gosub convert
return
COUNT ist Dein Zähler, value eine Word-Variable, die durch die Routine convert auf dem LCD ausgegeben wird. convert und die anderen Unterprogramme zur LCD-Ansteuerung werden ja auf der CD in Beispielprogrammen mitgeliefert, Du müsstest sie also haben.
Gruß Dirk
Ich habe das C-Control I mit Application Board,
aber bei mir war kein Datenträger dabei.
Gruß
Speed
Hallo Speed,
hier die Routinen für die LCD-Ansteuerung. Auch "convert" ist dabei (Ausgabe bis 999):
Gruß DirkCode:' Keyboard- und LCD-Interface
define lcd_buf byte[12]
define lcd_param byte[13]
' Binär - Dezimal Umwandlung
define hunderter byte[14]
define zehner byte[15]
define einer byte[16]
define value byte[17]
' LCD-Port
define lcd_port byteport[2]
define lcd_rw port[13]
define lcd_rs port[14]
define lcd_e port[15]
'********************************************************************
' Initialisierung LCD-Display
gosub LCD_INIT
' Hier Hauptprogramm!!
'********************************************************************
' LCD-Interface:
#LCD_INIT
' alle ports 0
lcd_port = off
' 8-Bit-Modus aktivieren
lcd_param=&H38 : gosub LCD_WRITECMD
' mit 8-Bit-Command in 4-Bit-Modus umschalten
lcd_port=&B00000010
tog lcd_e
tog lcd_e
' ab jetzt 4-Bit-Modus
lcd_param = &H28 : gosub LCD_WRITECMD
lcd_param = &H0C : gosub LCD_WRITECMD
' Display loeschen
#LCD_CLS
lcd_param = &H02 : gosub LCD_WRITECMD
lcd_param = &H01 : gosub LCD_WRITECMD
return
' Zeilenwechsel
#LCD_GOTOLINE
if lcd_param = 1 then lcd_param = &H80
if lcd_param = 2 then lcd_param = &HC0
goto LCD_WRITECMD
' LCD-Kommando
#LCD_WRITECMD
lcd_buf = off
goto LCD_WRITE
' Zeichenausgabe
#LCD_WRITECHAR
lcd_buf = &B00100000
' Kommando oder Zeichen an Display senden
#LCD_WRITE
lcd_port = lcd_buf or (lcd_param shr 4) ' Hi-Nibble
tog lcd_e
tog lcd_e
lcd_port = lcd_buf or (lcd_param and &H0F) ' Lo-Nibble
tog lcd_e
tog lcd_e
return
'********************************************************************
' Binär - Dezimal Umwandlung:
#convert
hunderter=value/100
if hunderter>0 then lcd_param=hunderter+&H30 else lcd_param=&H20
gosub LCD_WRITECHAR
'zehner abfragen
zehner=(value-(hunderter*100))/10
lcd_param=zehner+&H30
gosub LCD_WRITECHAR
'einer abfragen
einer=value-(hunderter*100)-(zehner*10)
lcd_param=einer+&H30
gosub LCD_WRITECHAR
return
'********************************************************************
Ich hab das Programm auf das C-Control geladen, aber auf dem LCD ist nur „00“ zu sehen.
Mach ich was falsch?
Gruß
Speed