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

Re: Ausgabe auf Display Kategorie: Programmierung (von AndrĂ© H. - 12.08.2003 19:18)
Als Antwort auf Ausgabe auf Display von Guido - 12.08.2003 17:33

Hallo Guido,

> kann mir jemand sagen warum folgender Code nicht funzt??
> er zeigt mir nur schwarze Streifen an anstelle der Bezeicher.

> const bezei[] = "Oelkessel " "Oelvorlauf" "Oelrueklau" "Abgasölkes" "Holzkessel"
>              "Holzvorlau" "Holzrueckl" " Abgasholz " "VorlHeizkr" "RueckHeizk"
>               "Speicherob" "Speichermi" "Speicherun" "Aussentemp";

Du hast vergessen die einzelnen Arrayelemente mit einem Komma zu trennen.
Es mĂĽsste dann so aussehen:(Hab' die Namen ein wenig angepasst :-) )

const bezei[] = "Oelkessel ", "Oelkes VL ", "Oelkes RL ", "AbgasxEFlkes", "Holzkessel",
              "Holz VL   ", "Holz RL   ", " AbgasHolz ", "Hk VL     ", "Hk RL     ",
               "Sp. oben  " "Sp. mitte " "Sp. unten " "Aussentemp";


> kann man eine for schleife verlangsamen????

Mit sleep kannst Du Pausen setzen. Das verlangsamt auch die schleife.

> er sollte in der obersten Zeile Zeit und Datum anzeigen darunter die versch Temp.
>
> durch das sleep wird aber auch die zeit um 2 sec verzögert angezeigt

Also, Du willst, daĂ? die Zeit sekundengenau angezeit wird, und die Anzeige
der Temperatur alle zwei sek. wechselt.
Das ginge in etwa so:
(Ich hab' auch Deine Ifs angepasst. Es hätte sonst nicht korrekt gefunzt.)

function prnTemp(byte i)
{
 rblcd.print(bezei[i]);
 rblcd.zahl4n1(tempaus.value[i]);
 rblcd.put(0x20); // Space
 rblcd.put(0xDF); // Grad
 rblcd.put('C');
}

//-----------
 thread main
//------------
{
 byte i,j, second;
 rblcd.init();
 second=system.second();
 loop
 {
  for i=0...15
  {
   rblcd.line(2);
   if i==7 i=i+1;
   else if i==15 i=0;
   prnTemp(i);
   if i==2 i=i+2;
   else if i==10 i=i+2;
   else i=i+1;
   rblcd.line(3);
   prnTemp(i);
   for j = 0 ... 1
   {// Schleife wird in 2sek. zweimal durchlaufen
    rblcd.line(1);
    rblcd.time(1);
    rblcd.goto(1,9);
    rblcd.date(1);
    wait system.second() != second;
    second=system.second();
   }
  }
 }
}



MfG André H.


Antworten bitte nur ins Forum!
Fragen per EMail auf Forum-Postings werden nicht beantwortet!

Das macht meine Heizung gerade


    Antwort schreiben


Antworten:

Re: Ausgabe auf Display (von Guido - 12.08.2003 19:27)