Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Re: Problem mit lcdext Kategorie: Programmierung (von Ralf - 22.07.2003 8:13)
Als Antwort auf Problem mit lcdext von Rolf - 22.07.2003 1:45

> Hallo Andrè,
> ich habe mir eine kleine Funktion geschrieben... "Benutzerhandling" :-)
> function usrmsg(string msg1,string msg2,int dobeep)
> {
>  lcdext.clear();
>  lcdext.print(msg1);
>  lcdext.line(2);
>  lcdext.print(msg2);
>  if dobeep
>  {
>    plm.beep (8);
>    sleep 100;
>    plm.beep (-1);
>    wait ports.getHostkey();
>    plm.beep (12);
>    sleep 100;
>    plm.beep (-1);
>  }
> }
>
> ca. bei jedem zweitem Aufruf der Funktion zb. mit
> string title;
> title="BsafEE V1.0 safe";
> usrmsg(title,"Safecopy FAIL",1);
> usrmsg(title,"Zelle",0);
>
> schmeist lcdext jedesmal meine erste Zeile durcheinander bzw. verschibt den Text.
> Ich hab ein 2x16 Display und dies in lcdext auch aktiviert.
> (die unteren beiden const aktiv)
>
> Mir scheint, das bei clear zwar das Display gelöscht aber der interne Zeilenbuffer nicht auf
> Null gesetzt wird. So verhält es sich jedenfalls. Das "jedes zweite mal" kann dann evtl. mit der
> Stringänge zusammenhängen, ggf. passiert das bei kürzeren Strings als "BsafEE V1.0 safe"
> dann nur alle 3 mal.. oder alle 4 mal.. weis nicht...
>
> Kannste Da mal zwischendurch nen Blick drauf werfen?
> GruĂ? Rolf
>
>

Hallo Rolf,

ich glaube mit lcdext.clear() löscht man zwar das Display, aber der Cursor wird dabei nicht umbedingt auf die Position (0,0)
gesetzt !!
Wenn du schon das Display löschst, dann setzte doch auch gleich den Cursor mit lcdext.goto (0,0) auf die erste Position.
Danach sollte es funktionieren ! Ich mache das zwischenzeitlich, weil ich auch immer wieder Probleme hatte !

GruĂ? Ralf


    Antwort schreiben


Antworten:

Re: Problem mit lcdext (von Rolf - 22.07.2003 14:14)