Hi!
Ein LCD-clearscreen sollte immer das Display "leeren" (sonst ist da etwas kaputt).
Das beim Flashen oder Anstecken teilweise "wirre Zeichen" entstehen ist natürlich und kannst du dir sicher auch selbst erklären.
Gruss,
Batti
hatte mal power OFF geschaltet, LCD abgezogen, wieder angesteckt und nur noch teilweise wirre Zeichen
trotz LCD clearscreen Power OFF/ON usw. mehrfach probiert
nach neuflashen der mega SW wieder OK
wie geht das ? ohne Strom LCD abziehen und anstecken sollte dem mega oder LCD doch nicht wehtun ?
bin verwirrt....
gruss
jar
Hi!
Ein LCD-clearscreen sollte immer das Display "leeren" (sonst ist da etwas kaputt).
Das beim Flashen oder Anstecken teilweise "wirre Zeichen" entstehen ist natürlich und kannst du dir sicher auch selbst erklären.
Gruss,
Batti
logo, aber so war es ja nicht !Zitat von batti112
clrscr(); löschte nicht alle Zeichen oder das Display wiurde an verschiedenen Stellen neu mit wirren Zeichen beschrieben !
die Zeichen enstanden ja nicht durch das abziehen oder anstecken unter Spannung, sondern an und ab erfolgte stromlos, danach neustart der mega SW per power on und da wird clrscr(); ausgeführt, das LCD Ram initialisiert, die geladenen Sonderzeichen neu geschrieben usw.
trotzdem gab es Müll auf dem LCD, nach Neuflashen des mega32 war es wieder OK
Oh sry, das hatte ich falsch verstanden!
Programmtechnisch macht das sicher keinen Sinn... sonst würdest du aber auch nicht fragen
Ich könnte mir nur vorstellen das etwas mit deiner Versorgungs oder Signalspannung nicht passt...
Gruss,
Batti
ich tippe eher auf mangelhaftem power/on Reset , R/C ist mir nie angenehmZitat von batti112
werde wohl doch mal eine TL7705 nachrüsten....
so nun weiss ich was es ist, finde aber noch keine Lösung
hatte den mega32 erst mit internem 4MHz CLK betrieben, seit ich den auf 8 MHz intern habe , ist das LCD nach power on verwirrt
die 8MHz intern laufen definitiv 20% schneller, habe ich mit dem delay gesehen am Oszi und korrigiert, aber nur im Hauptcode !
die LCD Routinen vom Peter Fleury fasse ich noch nicht an, aber XTAL defines in der LCD c und h funzen selbst mit 16MHz nicht richtiger
nur ein ordentlicher Reset vom ST200 prommer , egal ob von Pony oder Bascom setzt das LCD richtig zurück, ich bin sicher das die internen Wartezeiten 64clk vom Mega nicht reichen !
ich werde wohl doch einen Quarz und einen Resetcontroller verbauen....
vielleicht will das LCD auch einen extra langen RESET ?
Versuche es mal mit Brown-Out-Dedection auf 4V. Dann startet der Kontroller nicht vor dem LCD.
hatte ich auch schon probiert ohne Erfolg, aber noch nicht in Kombination mit falscher LCD XTAL des Quarzes vortäuschen !Zitat von Hubert.G
ich vermute den Fehler mitlerweile schon in der von LCD.C genutzten delay !, da steckt für mich noch nicht sichtbar XTAL drin, deswegen half XTAL auf 16MHz bei LCD.H und LCD.C bei echten 8MHz ? auch nix
evt. ist es ein Delay vom GCC, das richtet sich in der Tat nach den eingetragenen CPU clk, der ist ja 8 MHz, aber mit 20% zu schnell
vielleicht muss ich überall XTAL +20% eintragen, ausser beim LCD, wo es ja nicht half
delay25 gibt bei 19,5 -> 25ms
eben noch mal nachgedacht, er läuft ja langsamer als XTAL sagt !
deswegen kann es eigendlich ein zu kurzes delay nicht sein ....
nicht initialisiertes char[]
Lesezeichen