LCD Teilweise Beschreiben!

Gast #1541893
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
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
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
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
Gast #1543155
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.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 16 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.