guten morgen bastler, ich versuche gerade, einen 2313 aus seinem tiefschlaf von einem pcf8583 wecken zu lassen. dass soll über die alarmfunktion des pcf als interrupt realisiert werden. nun habe ich schon eine weile rumprobiert und finde aber viele widersprüchliche angaben über die zu setzenden bits, deshalb hier kurz ein abriss der entsprechenden code-segmente: zuerst, alarm aktivieren: I2cwbyte &HA0 'write addres of PCF8583 I2cwbyte &H00 'select control / state register I2cwbyte &H04 'select enable alarm control register I2cwbyte &HA0 'write addres of PCF8583 I2cwbyte &H08 'select alarm control register I2cwbyte &H80 'select alarm interrupt enable Das war das, was ich in meinem verständniss tun müsste um den interrupt zu enablen.... damit alles einfach bleibt (ich brauche die uhrzeit nicht wirklich) setze ich in jedem durchlauf die uhrzeit auf 0.0.:00 zurück I2cstart 'generate start I2cwbyte &HA0 'write mode I2cwbyte 2 'select seconds Register I2cwbyte 0 'write seconds I2cwbyte 0 'write minuts I2cwbyte 0 'write hours I2cwbyte 0 'write days I2cwbyte 0 'write months I2cstop und dann schreib ich den alarm auf 0 uhr... und 10 sekunden fest 'alarmzeit wird auf +10s gesetzt I2cstart 'generate start I2cwbyte &HA0 'write mode I2cwbyte 10 'select alarm seconds Register I2cwbyte &H10 'write seconds I2cwbyte 0 'write minuts I2cwbyte 0 'write hours I2cwbyte 0 'write days I2cwbyte 0 'write months I2cstop damit ich in 10 sekunden (oder irgendwann) wieder geweckt werden. in der int0 service routine setze ich dann nur wieder die neue uhrzeit und den alarm ============================================================ allein, es will nicht. habe ich noch ein doofes bit vergessen???? mein i2c bus geht, ich kann das 1Hz signal (am IRQ) an- und abschalten..... hat jemand vielleicht eine idee???? gruss jack
Hi, Tobias und ich haben mit dem gleichen Chip gekaempft. Im Anhang ein funktionierender Code. Bei mir zaehlt er im 2 sec takt ... Ich meine es liegt daran das ich kein Kondensator am quarz habe... Sonst funktioniert alles. Das Programm ist fuer Bascom. Ich gebe keine Garantie fuer irgendwelche Fehler. Mfg Dirk
Hallo Ihr, vielen Dank schaue mir den code mal am wochenende an und teste das alles und lasse euch mal wissen wie es ausschaut... vielen dank noch mal jack
In dem Code fehlt noch ein Overlay! Hier in der dritten Zeile... :-) Declare Sub Gettime() Dim Tm(5) As Byte At &H60 OVERLAY!!! Dim I As Byte , Temp As Byte
Hallo Leute, ich verwende den PCF8583 zum auslesen eines Zeitstempels für meine Daten nun wollte ich den Interruptausgang INT noch nutzen,dass z.B.alle 5 Sekunden ein Interrupt ausgelöst wird. Habe die Register schon auf einige Arten beschrieben jedoch am INT tut sich nichts. Kann mir jemand sagen mit welchen Werte ich in die Register schreiben muss also in das control/status und alarm control Register. Ich habe einige Werte Probiert aber ohne Erfolg hier mal die die ich denke die richtig sind. Control Status = 0x04(00000100) und Alarm Control = 0x83(10000011). Ich hoffe einer hat sich schon Mal damit beschäftigt und kann mir weiterhelfen. Gruß TOM
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.