-
Hallo.
Das neue Semester hatte angefangen. Deswegen kam ich nicht dazu mich meinem LCD zu widmen. Naja jetzt hab ich´s wieder vor mir zu liegen und die Probleme sind immer noch die alten. Es wird nur ein schwarzer Balken angezeigt.
Es wird anscheinend nicht ein mal initialisiert. Ich dachte es liegt am Batron Controller Typ SPLC780, aber die initialisierung ist gleich dem HD44780.
Nach zahlreichen Versuchen mit der Lib von Peter Pfleury weis ich nicht woran es liegen könnte.
Nochmal ein paar Eckdaten:
Display: BT 22005
Anschlüße am ATMEGA8:
PortC 6=E
PortC 5=R/W
PortC 4=RS
PortC (0-3)=DB(4-7) 4-Bit-Modus
Wenn jemand von euch mir ein Testprogramm mit Lib und allen was zum laufen dazugehürt per Mail (decca@gmx.net) oder posten könnte wäre das echt super. Dann könnte ich meine Programme vergleichen und Fehler finden. Hoffe ich zumindest.
Danke
Gruß Decca
-
Hast du mal das Fuse-Bit RSTDSBL gecheckt?
Nur so ne Idee, PprtC.6 ist ja auch Reset...
HD44780 kann man in 2 verschiedenen Modi betreiben (abgesehen von 4/8 Bit), vielleicht ist da ja ein Fehler in der Initialisierung oder der Controller unterstützt den Modus nicht.
Zu Fleurys LCD-Routinen kann ich nix sagen (ich hab meine eigenen), aber nach dem Schreiben würd ich warten. LCDs sind ja recht langsam, also eher so:
Code:
int main(void)
{
/* initialize display, cursor off */
lcd_init(LCD_DISP_ON_CURSOR_BLINK);
/* put string to display (line 1) with linefeed */
lcd_puts("LCD Test Line 1\n");
for (;;);
}
-
DANKE,DANKE,DANKE,DANKE,DANKE,DANKE,DANKE,DANKE,DA NKE,DANKE,DANKE,DANKE,DANKE,DANKE,DANKE,DANKE,DANK E,DANKE,DANKE,DANKE,DANKE!!!
Es hat die ganze Zeit am Fuse Bit gelegen, da wäre ich nie drauf gekommen.
Was habe ich denn damit jetzt aktiviert?
Wird das jetzt als normaler Ausgang genutzt?
Vielen Dank!
-
Also mein Display funktioniert, aber jetzt klappt die Programmierung über den parallel Port nicht mehr.
Ausserdem kann ich die Fuse Bit´s mit yaap auch nicht mehr einlesen.
Kann man das trotzdem noch rückgängig machen?
-
OOooops...
Dieses Bit ist etwas heikel, es kann nur mit parallel-programmier-Modus rückgesetzt werden, also nicht über das SPI, über den die ISP meist läuft (egal ob über COM- oder parallel Port), weil ISP den RESET-Pin benötigt um den Controller zu resetten.
Das steht im Handbuch etwas versteckt.
Ich bin davon ausgegangen, daß du parallel programmierst, weil du ja den PortC.6 benutzt. :-b
Immerhin bist du einen Schritt weiter, auch wenns jetzt net mehr zurück geht.