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 '********************************************************************







Zitieren

Lesezeichen