
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
||
|
> Hallo! > Ich versuche nun schon ne halbe ewigkeit folgenden code nach BASIC++ zu übersetzen, aber es funzt absolut nicht.. jemand nen tip? Zunachst solltest Du die Konventionen von Basic++ einhalten. Also kein gosub, statt "&hxxxxx" "xxxxh" usw. Da Du uns nicht erzählst, wo es denn nun klemmt, welche Fehlermeldungen du bekomst etc. klatsche ich hier meine gesammelten LCD Routinen rein. ACHTUNG! Die benütigten Variablen musst Du Dir selbst aus dem Code rausklauben und definieren! Grüße Henrik '--------------------- LCD Routinen --------------------------------- function lcd_locate(y ref line, x ref row) if line = 1 then base = line1 'Die Werte sind als Konstanten if line = 2 then base = line2 'im Kopf definiert und können if line = 3 then base = line3 'dort dem verwendeten Display if line = 4 then base = line4 'angepasst werden. 'Das Datenblatt gibt Auskunft 'über die CG-ROM Belegung. lcddata = base + row-1 lcd_writecmd() end function '--------------------------------------------------------- function lcd_cursor_on() lcddata = 00001110b lcd_writecmd() end function '--------------------------------------------------------- function lcd_cursor_off() lcddata = 00001100b lcd_writecmd() end function '------------------------------------------------------------------- function init_character() lcddata=00000110b 'User Ram aktivieren und lcd_writecmd() 'auf schreiben setzen. lcddata=01000000b 'Zeiger auf Zeichen '0 setzen. lcd_writecmd() for tempval = 0 to 63 lcddata = looktab (lcd_character,tempval) put lcddata next lcddata = 10000000b lcd_writecmd() 'User Ram deaktivieren 'umschalten auf Normal- 'betrieb end function '------------------------------------------------------------------- '--------------------------------------------------------- '---------- Hilfsroutine für CMD-Ausgabe an LCD ---------- '--------------------------------------------------------- function LCD_WRITECMD() '-------- höherwertiges nibble senden ------------------ OUTBYTE = (LCDDATA shr 4) OUTPORT = OUTBYTE or 01000000b set_byteport() OUTPORT = OUTBYTE and 10111111b set_byteport() '--------- niederwertiges nibble senden ------------------ OUTBYTE = (LCDDATA and 0Fh) OUTPORT = OUTBYTE or 01000000b set_byteport() OUTPORT = OUTBYTE and 10111111b set_byteport() end function '---------------------------------------------------------- '------- Bug Umgehungspfusch für C-Control(V 2.01)-------- '---------------------------------------------------------- function set_byteport() LCDP0 = OP0 LCDP1 = OP1 LCDP2 = OP2 LCDP3 = OP3 LCDP4 = OP4 LCDP5 = OP5 LCDP6 = OP6 end function '-------------------------------------------------------------------- '-------------------------------------------------------------------- table lcd_character 'invertierte Zahlendarstellung 0 bis 7 31 17 21 21 21 21 17 31 '0 31 27 19 27 27 27 17 31 '1 31 17 29 29 17 23 17 31 '2 31 17 29 29 17 29 17 31 '3 31 21 21 21 17 29 29 31 '4 31 17 23 23 17 29 17 31 '5 31 19 23 23 17 21 17 31 '6 31 17 29 27 23 23 23 31 '7 end table Meine Homepage: http://www.henrik-reimers.de/control/ |
| Antwort schreiben |