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

Re: Probleme PCF8583.c2 Kategorie: Programmierung (von André H. - 12.03.2003 21:25)
Als Antwort auf Probleme PCF8583.c2 von Milf - 12.03.2003 16:47

Hallo Milf,

Da hat sich ein klitzekleiner Fehler in meinem Modul eingeschlichen.
Allerdings war mir dieser bis jetzt nicht aufgefallen, da normal
die Chance ca. 1:60 steht, daÃ? genau dieser Fehler auftritt.

Korrekt muÃ? die Funktion so lauten:
/**Datum/Uhrzeit des PCF8583 mit CC2-Zeit setzen*******************/
function syncpcf()
{system.TIME time; byte second;
 second=system.second();
 do
 {
  yield;
  system.gettime(time);
 }
 while second == time.second;
 setTime(time);
 setDate(system.year(), system.month(), system.day(), system.dow());
}


Ich werde das Modul entsprechend korregieren.
.
Die Schleife hat den Sinn, das zum Sekundenwechsel der PCF8583
gestellt wird. Es kann sonst sein, daÃ? der Uhrenbaustein z.B. 0,99 sek.
nach geht.

MfG André H.


> Hallo,
> habe an meiner CC II-Station Probleme beim Schreiben der Uhrzeit in den I²C-PCF8583.
> Die erste Initialisierung klappt aber beim nächsten Synchronisieren, nach einer Stunde,
> stimmt das Datum aber es steht Müll in den Adressen 0x01 bis 0x04 sowie in den
> Variablen time.hour,minute,second.
> Erst nachdem ich ein weiteres einlesen "system.gettime(time)" eingefügt hatte
> funktionierte es.
> Kann mir jemand die while-Schleife erläutern ? Was steht
> beim Vergleich in der Variablen time.second, sie ist doch garnicht zugewiesen oder?
>
> MfG Milf.
>
>
> Die modifizierte Quelle:
> /**Datum/Uhrzeit des PCF8583 mit CC2-Zeit setzen*******************/
> function syncpcf()
> {system.TIME time; byte second;string st; int zwtest;
>   second=system.second();
>  while second == time.second  //?was steht in time.second ?
>  {
>   yield;
>   system.gettime(time);
>  }
>  system.gettime(time);//**zusätzlich eingefügt 12.02.03
>  setTime(time);
>  setDate(system.year(), system.month(), system.day(), system.dow());
> }
>


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

Das macht meine Heizung gerade


    Antwort schreiben


Antworten: