Hi Leute, ich mache gerade das AVR-GCC-Tutorial und da bin ich zur Zeit bei der LCD-Ansteuerung. Ich habe einfach die drei Quellcodes rauskopiert. Einmal die lcd-routines.h, die lcd-routines.c und dann noch die eigentliche Projektdatei, in dem Fall Beispiel 1. Compilieren konnte ich alles ohne Probleme. Leider zeigt es auf meinem LCD nur die 2x16 Balken an...jetzt frage ich mich natürlich wo mein Fehler liegt. Verbindungen habe ich alle überprüft und müssten alle passen. Ich hab allerdings an den angeschlossenen Pins noch LEDs hängen, sozusagen parallel zum LCD. Kann da der Fehler liegen? Wollte diese Pins noch anderweitig benutzen, wenn kein LCD dranhängt. Soll so eine Art Übungsboard sein. Falls es das nicht sein kann, gibt es sonst noch mögliche/häufige Fehlerquellen?
Ich halte es durchaus für möglich dass die LEDs den Pegel verbeulen, so dass das LCD nicht mehr richtig angesteuert wird. Kann man aber erst anhand deines Schaltplans abschätzen -> zeigen. Nimm halt mal einfach die LEDs weg. Ralf
Abc123 schrieb: > Falls es das nicht sein kann, gibt es sonst noch mögliche/häufige > Fehlerquellen? Falsche Einstellung der Kontrastspannung?
Die LEDs sind direkt am Pin über einen 220Ohm Widerstand gegen Masse geschalten. Das Problem ist, das ganze ist schon aufm Board gelötet. Das hatte ich natürlich nicht vorher bedacht. Aber eigentlich müsste es ja reichen, wenn ich die LEDs von der Masse trenne, oder? Das kann ich ja leicht mit einem Jumper dann zu- und wegschalten, je nachdem ob das LCD oder die LEDs benötigt werden.
654gfd schrieb: > Abc123 schrieb: >> Falls es das nicht sein kann, gibt es sonst noch mögliche/häufige >> Fehlerquellen? > > Falsche Einstellung der Kontrastspannung? Nein, da hab ich am Poti schon hin und hergedreht, es ist schon so eingestellt, dass man die Kästchen sieht. Aber man sieht eben keinen Text.
>Falls es das nicht sein kann, gibt es sonst noch mögliche/häufige >Fehlerquellen? Ja, falsch angeschlossen obwohl man denkt es ist richtig. Also Foto machen und zeigen, Programm zeigen.
holger schrieb: >>Falls es das nicht sein kann, gibt es sonst noch mögliche/häufige >>Fehlerquellen? > > Ja, falsch angeschlossen obwohl man denkt es ist richtig. > Also Foto machen und zeigen, Programm zeigen. Ich überprüfe es nochmal und mache sonst ein Foto. Programm sieht man im Tutorial, wie gesagt, habe das nur rauskopiert und den Takt im Header-File angepasst. Kein Name schrieb: > Nur teilweise initialisiert? Bei der Abfrage des Busy-Flags kommt > D7 > nicht gegen die LED an? Ich habe die LEDs jetzt mal "weggeschalten", das dürfte also nicht das Problem sein. Was meinst du mit nur teilweise initialisiert?
>Was meinst du mit nur teilweise initialisiert?
Busy-Abfrage klappt nicht und du schickst schon den nächsten Befehl,
während das Display noch die Umschaltung auf 2 Zeilen verarbeitet.
Abc123 schrieb: > Ich hab allerdings an den angeschlossenen Pins noch LEDs hängen, Mit Vorwiderstand?
Ich glaube, ich habe den Fehler entdeckt. War wohl doch ein Verdrahtungsfehler. der PD5 ist nicht mit dem Enable verbunden, hab da versehentlich das Streifenraster aufgebohrt, wird schnell mit ner Brücke behoben und nochmal getestet.
Mike schrieb: > Abc123 schrieb: >> Ich hab allerdings an den angeschlossenen Pins noch LEDs hängen, > > Mit Vorwiderstand? Ja natürlich mit. 220 Ohm, wie etwas weiter oben beschrieben
Abc123 schrieb: > Ich habe einfach die drei Quellcodes rauskopiert. Ja, eben. Ich kann dir nur empfehlen, zu allererst mal die Doku zu dem LCD bzw. zum Controller in dem LCD zu lesen und zu verstehen. Es ist für ein simples zweizeiliges Alpha-LCD ja wirklich nicht schwer. Als nächstes solltest du dir deine verwendeten Portpins richtig aufsetzen und dann die mal eben blind kopierte Quelle lesen und verstehen lernen. Es erfüllt unsereinen immer mit Ärger, wenn Leute glauben, mit blindem Kopieren unter Auslassung des Verstehens ihren Weg durch's Leben gehen zu können. Wenn sie dann auf die Nase fallen, wird zu allererst nach Beistand geschrieen und nicht im Traume daran gedacht, daß es schlichtweg nur die eigene Unwissenheit ist, welche man durch Nachlesen hätte beseitigen können. W.S.
W.S. schrieb: > Es erfüllt unsereinen immer mit Ärger, wenn Leute glauben, mit blindem > Kopieren unter Auslassung des Verstehens ihren Weg durch's Leben gehen > zu können. Wenn sie dann auf die Nase fallen, wird zu allererst nach > Beistand geschrieen und nicht im Traume daran gedacht, daß es > schlichtweg nur die eigene Unwissenheit ist, welche man durch Nachlesen > hätte beseitigen können. Das ist aber ne böse Unterstellung. Ich mach das Tutorial um etwas zu lernen. Und ich mache das gerne so, dass ich mir die Beispiel anschaue und dazu gehört eben, sich das Teil erstmal auf den Chip zu ziehen und auszuführen und zu schauen was passiert. Das Verstehen folgt anschließend. Dazu möchte ich persönlich aber erstmal das Ergebnis sehen. Kann man sich drüber streiten, manche lernen so und manche lernen anders. Aber nun funktioniert das, lag also zum Glück an einem leicht behebbaren Problem (der fehlenden Verbindung Enable - PD5). Und jetzt kann ich auch anfangen, den Quellcode zu verstehen ;)
@W.S.: Was ich noch hinzufügen möchte: Ich habe natürlich schon vorher nach Lösungen selbstständig gesucht und nicht gleich im Forum gefragt. Leider ist mir eben beim ersten kontrollieren der Verbindungen die Unterbrechung zwischen PD5 und Enable nicht aufgefallen.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.