LCD Teilweise Beschreiben!

Gast #1541893
Lesenswert?

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
Gast #1541925
Lesenswert?

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.
Gast #1542604
Lesenswert?

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
#1542767
Lesenswert?

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

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren