Für dieses Forum muß Javascript im Browser aktiviert werden!
Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C2 Quellcode formatieren: <code>Quellcode</code> ASM Quellcode formatieren: <asm>Quellcode</asm> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! > Hallo Jörg, danke für Deine Antwort. Es funktioniert! Mir ist noch was aufgefallen: Wird im init Befehl > Watchdog Timeout auf 0 gesetzt gibt es ein Problem. Ich habe im Beitrag Nr.10737 genau dieses > Problem auch gefunden. Die Lösung habe ich unten im Code eingefügt: > else i2c.stop(); > Ich überlege noch wie ich zwischen reset und Stromausfall unterscheiden könnte.Ich denke ich schreibe > die Uhrzeit ständig in eine Variable des Uhrenbausteins. Ist die Zeitdifferenz deutlich größer als Time > out so wars ein Stromausfall. Oder gibts eine bessere Lösung? > Viele Grüsse > Hans-Jürgen > > Hier die abgeänderte Init: > > <code> > > /*************************************/ > > /* PCF8583 initialisieren */ > > /*************************************/ > > function init(byte A0,byte setCC2clock, byte autosync, byte watchdogtimeout, byte enableHostKey) returns byte > > // watchdogtimeout = 0 bis 99 (sec.) > > {byte reg; > > if watchdogtimeout>99 timeout=99; else timeout=watchdogtimeout; > > device=((A0!=0) and 0b10) or 160; > > > > if i2c.cstart(device) > > { > > i2c.write(0x00); > > i2c.start(device or 1); > > reg=i2c.readlast() and 0x05; > > i2c.stop(); > > > > i2c.start(device); > > i2c.write(0x00); > > i2c.write(0x04 and (watchdogtimeout!=0)); > > i2c.cstop(); > > if watchdogtimeout > > { > > i2c.start(device); > > i2c.write(0x08); > > i2c.write(0x4A); > > i2c.stop(); > > } > ************** else i2c.stop(); // capture lösen wenn watchdogtimeout nicht gesetzt ! ********* > > if setCC2clock synccc2(); > > if autosync run sync; > > enHostKey=enableHostKey!=0; > > if timeout run watchdog; > > if reg==0x05 return 0x80; //= Reset durch Watchdog verursacht > > else return 0xFF; > > } > > i2c.stop(); > > return 0; > > } > > </code> > > > > Viele Grüsse, > > Jörg