Forum: Mikrocontroller und Digitale Elektronik LCD Atmega 168 Problem initialisiert nicht, kann mir jemand compilieren?


von David (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe ein LCD an einem Atmega 168 in Betrieb, aber es initialisiert 
nicht.

Den Code verwende ich schon für mehrere LCDs (HD4478)(auf anderen 
Prozessoren), daher vermute ich den Fehler dort nicht, gerne aber anbei.

Belegt ist alles wie folg auf einer professionell geätzten Platine 
(Platine auch mit Mulitmeter auf Durchgang gemessen, alles ok):
RS --> Port C PC0
EN --> Port D PD3

Betrieb im 4-bit Modus
DB4 --> Port C PC1
DB5 --> Port C PC2
DB6 --> Port C PC3
DB7 --> Port C PC4

Ich vermute, dass irgendwo beim compilieren irgendetwas schief geht. 
Daher meine Bitte, könnte mir jemand den Code compilieren und das 
hex-file anbei hängen?

Natürlich soll der Code auch nach Fehler abegesucht werden, aber ich tue 
das schon seit 1h erfolglos. Vielleicht sehe ich aber vor lauter Bäume 
den Wald nicht mehr...

Zusätzlich habe ich auf der Platine noch 2 LEDs (an PB4 und PC5) die ich 
per delay blinken lasse. Das tut es auch bei meinem Code.

Das ganze läuft bei 16Mhz (ist aber überall auch so definiert, sprich in 
main und im makefile). Quarz ist aufgelötet und die LEDs blinken auch 
zeitgemäß im 500ms Rythmus. Also Timing passt ebenfalls.

Danke.

Beste Grüße
David

von Tim Music (Gast)


Lesenswert?

Hi,

Portc geht nicht... das klingt für mich schwer nach nem fabrikneuen 
Atmega, welcher noch mit JTAG Schnittstelle an gefused ist. Lese mal von 
einem anderen Gerät die Fuses aus und schau ob es geht.

Tm

von Rene B. (themason) Benutzerseite


Lesenswert?

Also wenn der Code so funktioniert (für andere AVR's ?) dann würde ich 
auch auf falsch gesetzte Fuses Tippen. Gerade der Port C bei dem auch 
JTAG dran hängt, da würde ich auch erstmal wie Tim schwer auf JTAG 
tippen. Habe daran auch schon ein paar mal ein wenig länger gesucht. 
Fuse gesetzt, danach liefs direkt.

von David (Gast)


Lesenswert?

Danke für die Hinweis, aber der Atmega168 hat kein JTAG.

von David (Gast)


Lesenswert?

Ich habe das nun mal in AVR-Studio "kopiert", seltsamerweise läuft es 
da, mit dem dort eigens kreierten makefile. Also Programm ist definitiv 
daher fehlerfrei.
Im Programmers Notepad gehts aber nicht.

Komisch...

von Uwe (de0508)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe die LCD Port meines Displays eingestellt und auch noch eine 
weiteres Defines "LCD_RW" für das R/#W Pin definiert, sowie die DDR und 
PORT Bits im lcd_init() dafür gesetzt.
Also auf meiner Hardware mit meinem Makefile sehe ich die Testausgabe.
Blink LED habe ich gelöscht.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.