EA DIP128 Display ansteuern Kategorie: Sonstige Hardware (von wernerAZ - 18.03.2007 12:57) | ||
| ||
Hallo, mein Versuch das LCD anzusteuern ist fehlgeschlagen. Bekomme kein einziges Pixel auf Display. Anbei mein Versuch. Was mache ich falsch? code function rst() { ports.set(13,0); //Reset sleep 10; ports.setb(0,0x11100000); } function status() { int stat; ports.set(11,0); //E2 ports.set(12,1); //E1 ports.set(13,1); //Res ports.set(14,0); //D/I ports.set(15,1); //R/W stat=ports.getb(0); //Datenleitungen lesen sleep 10; ports.set(12,0); //E1 ports.setb(0,stat); sleep 1000; } function befehl(int data) { ports.setb(0,data); ports.set(11,0); //E2 ports.set(12,1); //E1 ports.set(13,1); //Res ports.set(14,0); //D/I ports.set(15,0); //R/W sleep 10; ports.set(12,0); ports.set(14,1); ports.set(15,1); } function schreiben(int data) { ports.setb(0,data); ports.set(11,0); //E2 ports.set(12,1); //E1 ports.set(13,1); //Res ports.set(14,1); //D/I ports.set(15,0); //R/W sleep 10; ports.set(12,0); ports.set(14,1); ports.set(15,1); } function lesen() returns int { int x; ports.set(11,0); //E2 ports.set(12,1); //E1 ports.set(13,1); //Res ports.set(14,0); //D/I ports.set(15,1); //R/W ports.getb(0); sleep 10; ports.set(12,0); ports.set(14,1); ports.set(15,1); return x; } thread main { int d; status(); rst(); //Reset plm.beep(1); status(); befehl(0x00111111); //Display on plm.beep(2); status(); befehl(0x00111110); //Display off plm.beep(3); status(); befehl(0x00111111); //Display on plm.beep(4); status(); befehl(0x11000001); //Zeile 1 plm.beep(5); status(); befehl(0x10111000); //Page 0 plm.beep(6); status(); befehl(0x01000011); //Spalte 3 plm.beep(7); status(); for d=0 ... d<50 { schreiben(0x11001010); //schreibe auf Display-Ram(Position) } plm.beep(8); status(); d=lesen(); //Display auslesen plm.beep(9); status(); ports.setb(0,d); //Wert auf LEDs plm.beep(10); sleep 3000; befehl(0x11000001); //Zeile 1 plm.beep(5); status(); befehl(0x10111000); //Page 0 plm.beep(6); status(); befehl(0x01000011); //Spalte 3 plm.beep(7); status(); d=lesen(); //Display auslesen plm.beep(9); status(); ports.setb(0,d); //Wert auf LEDs plm.beep(10); sleep 3000; plm.beep(-1); loop { } } /code Bitte heft mir. GruÃ? Werner | ||
Antwort schreiben Antworten: Re: EA DIP128 Display ansteuern (von André H. - 25.03.2007 17:27) Re: EA DIP128 Display ansteuern (von wernerAZ - 26.03.2007 10:18) |