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 zusammen, > > ich benutze den pcf-uhren baustein von Andre mit dem modul pcf8583 V 1.51. > > Über return byte der init funktion möchte ich mir die Antwort anzeigen lassen. Ist der Baustein ab zeigt > > meine Variable 0 ist er dran den Wert 255. > > Hängt sich mein Programm auf wird ein Reset vom Baustein ausgelößt jedoch in der Variablen > > wieder die Zahl 255 statt 128 angezeigt. > > Hat jemand einen Tip für mich ? > > Vielen Dank für Eure Mühe > > Hans-Jürgen > > Hallo Hans-Jürgen, > > ich hatte das gleiche Problem wie Du. Hier ist m.E. noch ein kleiner Fehler in der Init Routine. > Ich verwende die V1.52 des Moduls pcf8583.c2 aus dem SP 2.13 mit geringfügigen Änderungen. > Funktioniert bei mir ohne Probleme. > > 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(); > } > 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