Hallo miteinander,
ich will mit einem Atmega128 das DOGLXL-160 Display ansteuern. Dazu
nutze ich die LCD Routinen von Jan M. (
Beitrag "Library für EA-DOGM Grafikdisplays inkl. Font-Generator" ). Jedoch habe ich bereits
bei der Initialisierung des Displays Probleme, dass aber zunächst nicht
auf die allg. Funktionalität der Routine zurückzuführen ist. Mit einem
Atmega32 habe ich diese schon erfolgreich getestet. Mein Problem ist,
dass ich bei einer bestimmen Stelle inderhalb der Routinen "hängen"
bleibe. Das M103 Fuse-Bit habe ich deaktiviert. Anscheinend hat der
Atmega128 Probleme mit dem Code, mit dem der Atmega32 zurechtkommt. Ich
habe mal meine Source- und Header-Files angehängt.
Die Stelle an der es das Problem gibt ist die Zeile
1 | #define LCD_SET_COM_END(i) lcd_command(LCD_COM_END); \
|
2 | lcd_command(i)
|
in der dogm-graphic.h . Aufgerufen wird dieses Kommando durch die Zeile
in der Initialisierung in dogm-graphic.c
Kommentiere ich eins der beiden lcd_command Aufrufe aus, funktioniert
es. Aber ich verstehe nicht warum genau der Atmega128 da hängen bleibt
sobald beide lcd_command Aufrufe stehen. Vielleicht hat der ein oder
andere die Lib von Jan M. mit dem Atmega128 schon erfolgreich getestet
und kann mir hier weiterhelfen. Liegt es vielleicht immer noch an einer
103-Kompalibilität? Ich danke schonmal für hilfreiche Antworten im
Voraus :).
Grüße Gyro