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

Re: Ausgabe ueber HWCOM Kategorie: Programmierung (von Torsten M. - 31.03.2004 22:54)
Als Antwort auf Ausgabe ueber HWCOM von ChristianS. - 31.03.2004 21:53
Ich nutze:
C-Control II Station, OSOPT_V2
Hallo Christian,
ich denke du hast das klassische Integer-Problem. Die 21 ist eine Integerzahl und 3600
ebenfalls => Ergebnis Integer (-32768..32767).
MfG
    Torsten M.

Alternativ:

 thread main
 {
 long zeit;
  stports.init();
  lcdext.init();
  hwcom.init();
  hwcom.setspeed(8);
 
  sleep 5000;
  hwcom.clr();
  zeit=0;
  loop
  {
   zeit = system.hour();
   zeit = zeit * 3600; // + system.minute()*60+system.second();
   hwcom.num(zeit);
   hwcom.ret();
   sleep 1000;
    }
  }


> Hallo,
> ich hab mal wieder eine Frage: Ich versuche mich an einer Zeitschaltuhr und bin einem Beispiel
> von Andre H. gefolgt. Da meine CC2-Station im Keller steht, überprüfe ich die Funktionalität
> meiner Programme, in dem ich einfach etwas über die serielle Schnittstelle ausgabe. Das funktioniert
> in der Regel recht gut. Aber heute bringt mich einfach das einfach zur Verzweiflung.
>
> Hier mein Versuch:
> thread main
> {
> long zeit;
>  stports.init();
>  lcdext.init();
>  hwcom.init();
>  hwcom.setspeed(8);
>
>  sleep 5000;
>  hwcom.clr();
>  zeit=0;
>  loop
>  {
>   zeit=system.hour()*3600; // + system.minute()*60 + system.second();
>   hwcom.num(zeit);
>   hwcom.ret();
>   sleep 1000;
>    }
>  }
>
> eignetlich sollte das Programm bei einer Systemstunde von 21 den Wert 75600
> ´rausschmeissen. Tatsächlich bekomme ich aber den Wert 10064 angezeigt. Rechne ich aber
> zeit=system.hour()*360, und in der Ausgaberoutine hwcom.num(zeit*10), stimmt das Ergebnis. Die
> Minuten und Sekunden hab´ich erst mal weggelassen...
>
> Ich habe auch schon versucht das Ergebnis "zahl" in einen String zu wandeln und hwcom.print()
> auszugeben. Funktioniert auch nicht. Irgendwie bin ich mal wieder zu blöd. Eventuell hat
> einer von Euch eine Idee, woran es liegt. Ich vermute hwcom.num konvertiert mein Ergebnis
> nach Integer. Aber welche Ausgabefunktion ist dann richtig?
>
> Vielen Dank schon mal..
> ChristianS.


    Antwort schreiben


Antworten: