Hallo, habe mal eine Frage, und zwar ist es möglich mit Bascom z.b. nur einen Wert zu aktualisieren auf einem LCD? So dass die schrift bleib und der wert sich ändert, weil die Schrift immer blinkt und das nicht schön aussieht.
EIn Beispiel auf dem LCD soll stehen: "Zeit: 12:00 Uhr" dann soll nur die 12 weiterlaufen ist doch bei gekauften Sachen genau so.
Hallo! Natürlich ist dies möglich. Brauchst nur den Text der immer angezeigt werden soll vor der Mainloop definieren. Den Wert der sich ändern soll, über ein Flag oder über Variablen- vergleich ( alter Wert <> neuer Wert )anzeigen lassen. MfG KG
Schon aber wenn ich z.b. in der Main Loop eine Abfrage von Ports mache das sich der Text ändern soll gibt es das gleiche problem!
Christian schrieb: > Hallo, habe mal eine Frage, und zwar ist es möglich mit Bascom z.b. nur > einen Wert zu aktualisieren auf einem LCD? So dass die schrift bleib und > der wert sich ändert, weil die Schrift immer blinkt und das nicht schön > aussieht. Hallo!!! Vielleicht hast du in deinem loop auch ein befehl um das display zu löschen? z.b. clear display, weil das kann es auch sein, dass das display die ganze zeit gelöscht wird und alles von neuem geschrieben wird.
Do kannst mit einem gotoXY befehl direkt zu der stelle gehn, die sich ändern soll (ka wie der Bascom Befehl dazu heisst) und dann dort schreiben ich denke das ist der Part der dir fehlt.
Du meinst Locate Zeile,Spalte ja das hab ich jetzt geschafft und es geht danke. $regfile = "m644def.dat" $crystal = 1600000 Config Lcdpin = Pin , Db4 = Porta.4 , Db5 = Porta.5 , Db6 = Porta.6 , Db7 = Porta.7 , E = Portb.0 , Rs = Portb.2 Config Lcd = 16 * 2 Cursor Off Dim W As Word Locate 1 , 1 Lcd "Zeit:" Do W = W + 1 Locate 1 , 7 Lcd W Loop End
Also ich habe mal versucht dein problem mit einem mega16 und einem pollin LCD (ich glaube es hat 1,95€ gekostet) nachzustellen. 1) Läuft die Main-loop ohne verzögerung, blinkt das LCD nicht. 2) Wird in der Main-loop das lcd mit dem BAscombefehl CLS gelöscht und dann der text erneut drauf geschrieben, kann man ein "blinken" der anzeige feststellen. 3) Ist der Cursor nicht ausgeschaltet, und die main-loop läft weiter hin ohne verzögerung, kann man wenn man genau hinsieh den cursor sehen. Der Locate befehl ist bei einer solchen sache eher uneffizient. wieso machst du es nciht wie vorgwschalten mit einer ereignis verfolgung? du kannst den statischen text, in einer constanten (besser da die schon vom compiler "berechnet" wird und nicht erst vom avr) und in deinem fall die zeit in einer variable. Das ganze pachste in eine if-else-end if anweisung und bist fertig. Hat den vorteil du benötigst nicht soviel rechen kapazität des µC denn du musst ja nicht bei jedem durch lauf die anzeige aktualisieren sondern nur jede sekunde oder so. Gruß Tobi
Hi, danke fürs Testen es geht soweit jetzt. Doch wenn ich Reset drücke stehen auf einmal immer 2 oder 3 nullen auf dem LCD ist dies normal? Wenn ich die Stromzufuhr unterbreche geht es.
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.