Nabend, bin absoluter Anfänger uaf dem Bereich der Mikrocontroller und habe heute in LCD (DATAVISION DV-20208) angeschlossen. Schaltung ist genau wie im Tutorial hier auf der Seite, ich benutze Bascom (die anderen Threats zu dem Thema beziehen sich leider auf C). -------------------------------- $regfile = "m8def.dat" $crystal = 4000000 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portd.0 , Db5 = Portd.1 , Db6 = Portd.2 , Db7 = Portd.3 , E = Portd.5 , Rs = Portd.4 Config Lcdbus = 4 Cls Locate 1 , 1 Lcd "Zeile 1" -------------------------------- Gibt alles Fehlerfrei aus. Wenn ich jedoch Locate 2 , 1 Lcd "Zeile 2" mache sind alle Kästchen schwarz (alle paar Minuten werde ndann für 2sek wirre Zeichen ausgegeben. Ich hab das ganze mal in nen Loop gepackt - dann gings, jedoch war es ganz blaß weil der Inhalt natürlich dauernt aktualisiert wird. Packe ich ein wait in die Schleife wird wieder alles schwarz. Kann mir jmd helfen? Im Datenblatt find ich nix passendes (ist seehr mager... nur die Pinbelegung ist abgedruckt... Soll aber HDD 44780 kompatibel sein.
> mache sind alle Kästchen schwarz (alle paar Minuten werde ndann für 2sek > wirre Zeichen ausgegeben. Das klingt nach einem Problem, das entweder beim Displaycontroller zu liegen scheint, oder aber am Atmega liegt. Ich würde folgende Vorgehensweise vorschlagen: Größte Fehlerwahrscheinlichkeit: Du nutzt die Serielle Schnittstelle???? Wenn ja dann weg von Pd.0 und Pd.1. Lege die Datenpins und die Register/Enable -Leitung an andere Pins, z. B. an die Pins von Portc (0-5). Am Atmega: Teste mit einem anderem Programm, ob die Ports, die dem Display zugeordnet sind, funktionieren. Dazu einfach ein langsam toggelndes Signal anlegen und mit einem Multimeter messen. Funktionieren alle, dann anderes Display anschließen.
hallo, wenn ich deinen quelltext sehe, fällt mir der eintrag "Config Lcdbus = 4 " negativ auf. ich selbst habe diesen eintrag jedenfalls noch nie benötigt. ansonsten wäre es vielleicht ein ansatz mal den cpu-takt runterzufahren... also die fuse auf 1megahertz und im programm den crystal entsprechend ändern. wenns dann besser wird, lohnt sich blick auf die länge oder die verlegeart der lcd-kabel gruss klaus
Klaus De lisson wrote: > wenn ich deinen quelltext sehe, fällt mir der eintrag "Config Lcdbus = 4 > " negativ auf. Den Eintrag braucht er (ist sonst indirekt auch gesetzt), da er das Display nur mit 4 Datenleitungen statt 8 anspricht. Laut Hilfe muss der Eintrag vor der Initialisierung der Datenleitungen stehen (also ggF. ändern). Ich glaube aber eher, dass die Serielle Schnittstelle der Verursacher der Probleme ist.
@ Niels Keller jetzt verstehe ich deine aussage zur seriellen schnittstelle. er hat ungünstigerweise die portpins der seriellen benutzt. da könnte natürlich eine ursache sein. gruss
Nabend und danke für eure Antworten! In dem Tutorial hier wurden aber genau die gleichen Pins verwendet... Ich werde trotzdem nachher mal probieren ob eine Veränderung hilft. Die Verbindung sollte eigtl in Ordnung sein... Kurze Kabel. An der Controllerplatine verlötet und das andere Ende mitm Steckboard. Jmd hatte den Takt angesprochen... dazu hätte ich auch mal eine Frage, muss ja nicht nen neuen Threat aufmachen. Ich habe einen 4mhz Quarz zusammen mit zwei 22pF Kondensatoren (wie in einigen Beispielschaltungen). Nun muss ich bekanntlich die Fusebits setzen und bin mir leider unsicher wie ich die Fuses setzen muss... In allen Tutorials werden andere Programme verwendet und bei mir stehen viel mehr Optionen zur Verfügung als da. Leider ufnktioniert mit meinem USB Programmer nur das mitgelieferte Tool für die Fuses.. Könnti hr mir sagen welche Einstelung richtig ist? im Anhang mal ein Bild der Optionen.
also aus deiner liste ist wohl die unterste option für die fuses geeignet. allerdings ist es im moment für dich erstmal garnicht sinnvoll da dran rumzufummeln, wenn der rest noch nicht läuft. mir fällt allerdings dazu noch ein, dass der m8 ab werk ja mit 1mhz internal rc ausgeliefert wird. wenn du da also noch nix gefused hast wäre die einstellung in deinem programm (crystal 4000000) ja schonmal falsch. gruss
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.