Hallo, ich versuche verzweifelt ein LCD an einem AT90S8535 zu betreiben, irgendwie will es nicht klappen. Ich schreibe die Programme in fastAVR ich hab es schonmal vor einiger Zeit hinbekommen, ein LCD anzusteuern ich habe 4 verschiedene LCDs hier rumliegen aber ich bekomme es einfach nicht hin. Kann vielleicht jemand ein stück Sourcecode posten? Oder vielleicht habe ich es auch nur falsch angeschlossen? Naja eigentlich ist es so wie im Tutorial beschrieben angeschlossen naja :-(
Hi, ich kenne nun fastAVR nicht. Du solltest aber dein Source per Angang hier reinstellen. Es ist so viel einfacher zuhelfen. Am besten vielleicht nochmal die Type vom LCD oder LCD Kontroller angeben. Mfg Dirk
Ok kein problem ist halt schon spät :-) also es handelt sich um HD44780 kompatible LCD Display's Im Anhang ist der Source zu finden Mfg Björn
siehe code :-) also Pin1 masse pin2 5V pin3 -3V pin4 portd2 pin5 masse pin6 portd3 und halt pin 11-14 an portd4-7
Hallo, ist das korrekt, daß das LCD am Kontrast-Pin pin3 eine negative Spannung benötigt, wie oben angegeben? Gruß
erscheinen denn die schwarzen balken bei anlegen der spannung ans lc-display? verschwinden diese nach einschalten des uC?
ja das ist korrekt mit der negativen spannung das lcd geht jetzt auch ich hab den quarz gewächselt schien wohl kaputt zu sein... naja proggen ließ der avr sich trotzdem
Hm ist ja interssant, brauchst Du gar kein LCD_init oder so schicken? Ich mach ja auch schon einen Weile mit FastAvr, aber LCD brauchte ich noch nicht... AxelR.
Oh noch ein fastAVR Programmierer ;-) sehr gut :-) nein ein LCD init muss man nicht senden, nur dann, wenn du das LCD mit irgendwelchen befehlen in den sleep modus gesetzt hast und es reinitialisieren willst...
FastAVR fügt automatisch eine LCD-Init-Routine in den compilierten ASM-Code ein sobald $LCD definiert wird und führt ihn am Prog.-Anfang aus. Gruß Andi
Spielkram! Versuch mal mit peek/poke aus dem Speicher hintereinander was in den EEprom zu speichern und das noch über die UART zu printen. Geht erstmal garnicht und dann nur auf Umwegen. Andersrum mit einer Schleife die Daten aus dem EEprom holen und in den Ram packen - das selbe. LCD, jahaa das könnse, dafür hamse Geld ;-)) Naja, ich will die Diskussion nicht schon wieder anfangen, der Ansatz ist ja auch nett und geht ja eigentlich auch ganz gut. Ernsthaft arbeiten kann man damit jedoch nicht, zum spielen ok. Gruß Axel
@AxelR: Zum Teil stimme ich Dir zwar mit dem Spielkram zu aber das musste jetzt nicht sein. Ich selbst benutze AVR-Studio und habe mir gestern nur aus reiner Neugier FastAVR runtergeladen, den oben angehängten BAS-Code compiliert und mir den ASM-Code von dem Kompilat angeschaut. Ganz so ein Spielkram ist das nun auch wieder nicht und wenn man für einen ASM-Code mal was für etwas komplexere Berechnungen braucht macht man es kurzer Hand mit FastAVR, compiliert es, holt es sich aus dem ASM-Kompilat ins AVR-Studio und passt es an. Ach ja: Es gibt in FastAVR sehr wohl Methoden für UART, EEPROM und sogar Interrupts. Siehe Keywords in der Online-Hilfe. Gruß Andi
Hi Andi, uups, bin ich gestern Nacht wohl etwas übers Ziel hinaus geschossen, Sorry! Im Ernst: ich arbeite damit (so richtig) seit 2Jahren. Bei einem Projekt sind es mittlerweile über 1200Zeilen geworden und FastAVR hat 10-11KByte Binärcode drausgemacht. Funktioniert auch alles(Jetzt)! Da ist alles dabei: Bootloader/Uart/Harware-I2C/EEPROM/ADC/PWM/GPS-Empfang... (bis auf's LCD) Ich habe das Zeuchs auf Arbeit. Ich mach mal ein paar Auszüge und hänge die mit an, damit Du weisst/Ihr wisst, was ich meine. Sind auch sicher nur kleinigkeiten, die sonst nie einer braucht, wo man aber auch nicht drauf kommt, das das eben so und nicht so interpretiert wird. Hat dann schon mal den einen oder anderen Tag gekostet... Abschließend: So schlecht kann FastAVR ja nicht sein, würde ich sonst nicht mit arbeiten. Vielleicht mach ich mal ne gut strukturierte BugListe, die ich ins Wiki stelle. Spart anderen Leuten ne Menge Arbeit, statt hier rum zumeckern. Sorry nochmals Schönen Gruß AxelR.
.... also negative Spannung am Kontrast-Pin ist doch ein wenig eigenartig... Ich glaube man muss einfach einen 10k-Trimmer zwischen 5V und Masse legen und den Schleifer dann an den Kontrast-Pin. Also bei mir funzen LCD´s ohne negative Spannungen... Greetz
Ich glaube nicht, ;-) nein bei neueren LCDs wird die negative Spannung "onboard" erzeugt. Bei älteren oder besonders Temperaturbeständigen muss man sie extern zuführen.
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.