Hallo, ich bin Anfaenger, was µC und LCD Displays angeht. Ich habe einen ATmega8 mit Bascom programmiert, und ein LCD 16*1a ansteuern koennen. Da ich mich mit den Fusebits noch nicht so auskannte, hab ich mich erstmal aus dem den mega8 ausgsperrt. Mit dem extra bestellten STK500 konnte ich dann die Fusebits auch setzen (per High Voltage). Aber wenn ich den jetzt einfach nur an VCC und GND anschliesse, (Flash ist geloescht) wird das Ding einfach nur noch warm. Beim STK500 war auch ein ATmega16 dabei, also hab ich es erstmal mit dem versucht. Das klappt auch einigermassen. Ich programmiere den µC per BASCOM und der einfachen LPT Schnittstelle. Das mein Code soweit korrekt laeuft seh ich an der angeschlossenen PruefLED. Nun hab ich das LCD Display an PortC angeschlossen (vorher PortD) und die PINs entsprechend im Code angegeben: vorher: 'Config Lcdpin = Pin , Db4 = Portd.0 , Db5 = Portd.1 , Db6 = Portd.2 , Db7 = Portd.3 , E = Portd.5 , Rs = Portd.4 jetzt: Config Lcdpin = Pin , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 , Db7 = Portc.0 , E = Portc.4 , Rs = Portc.5 ich hab die Ports jetzt schon x mal ueberprueft und finde keinen Fehler mehr im Anschluss. Im µC laeuft eine Schleife, die a) die LED kurz blinken laesst und b) einen kurzen Text in die erste Zeile schreiben soll. Das Display zeigt von Anfang an nur eine Zeile schwarze Rechtecke. So wie es das auch macht, wenn nur der VCC und GND angeschlossen sind. auf den DB7 und DB6 kann ich nur 0 bzw. knapp ueber 0 Volt messen, auf DB5 und DB4 wackelt es um die 5 V. An PIN 2 udn PIN 4 messe ich auch ca 5 V. Das Wackeln passt genau zu meiner Schleife, die die LED blinken laesst und den Text einfach immer wieder aufs Display schreiben soll. PIN 1 3 und 5 habe ich der Einfachheit halber alle mit GND verbunden. Wenn ich mich recht erinnere, war das am ATmega8 auch so und es lief. Ohne GND am PIN3 hat das Display gar nichts angezeigt. Hat jemand einen Tip fuer mich, wie ich den Fehler weiter einkreisen kann? Willi
Bei einem neuen Mega16 und Problemen mit PortC nachschauen ob JTAG in den Fuses deaktiviert ist, das ist bei neuen immer aktiviert ! Dann schreibtst Du nix vom RW-Pin des LCD, das sollte bei Verwendung von Bascom immer auf Gnd liegen, da es nicht verwendet wird.
Hallo, JTAG war natuerlich an, weil Studio gemeckert hatte ob ich das wirklich ausmachen will. Nichts boeses ahnend hab ich das natuerlich erstmal angelassen. Nun hab ich das Fusebit abgeschaltet, aber das hat noch nicht geholfen. RW auf GND werd ich dann morgen aeh heute mal probieren. Jetzt lass ich besser erstmal die Finger vom Loetkolben. Muss mir noch dieses Video ansehen von dem Franzmann, der seine Roehren selber bastelt. Genial :-) Willi
Du mußt Bascom noch verklickern, dass du im 4-Bit Modus arbeiten willst. Config Lcdbus = 4
das versteh wer will. Heute morgen hab ich einen kurzen Versuch mit LCDBus = 4 gemacht. Den hab ich dann aber abgebrochen. Irgendwie ging das Display ueberhaupt gar nicht mehr. Die Schaltung hatte die ganze Nacht strom. Aber auch eine kurzfristige Stromunterbrechung wollte das Display nicht wiederbeleben. Also erstmal Strom aus und ab zum Broetchen verdienen. Jetzt hab ich das Display noch mal getestet und siehe da, immerhin sind die schwarzen Rechtecke wieder da. Wie kommt sowas? Die Batterien sind die gleichen. Nachdem ich DB7 wieder angeschlossen habe kommt jetzt der AHA Effekt. Das Display geht. Aber warum? Config LCDBus hab ich wieder aus dem Programm entfernt. Das Programm ist das gleiche wie gestern Abend. Die Anschluesse sind auch 100% identisch. Gestern gings nicht, heute geht es. Es ist ja schoen, dass es jetzt geht, aber ich wuerde gerne verstehen warum das so ist. Kann sich da jemand einen Reim drauf machen? Willi
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.