Hallo Ich sitzte seit einer ganzen Woche an der RTC und komme einfach nicht weiter. Ich möchte sie nur als Timer verwenden. Zum Testen wäre es super wenn ich mal nach 10 Sekunden einen Interrupt auslösen kann, der mir am AVR Controller ein LED löscht. Obwohl ich folgenden Code verwende: #define I2C_Write 0 #define I2C_Read 1 static unsigned char Control_Status_Register_addr = 0x00; static unsigned char Alarm_Control_Register_addr = 0x08; static unsigned char Alarm_Timer_Location_addr = 0x0F; static unsigned char Timer_Location_addr = 0x07; static unsigned char RTC_sla_addr = 0x50; //Alarm Interrupt Enable, Timer Alarm Enable, Timer function seconds i2c_start(RTC_sla_addr+I2C_Write); i2c_write(Alarm_Control_Register_addr); i2c_write(0x4A); i2c_stop(); //Alarm enabel in Control/status register wird gesetzt i2c_start(RTC_sla_addr+I2C_Write); i2c_write(Control_Status_Register_addr); i2c_write(0x04); i2c_stop(); //Timer auf 10 Sekunden stellen i2c_start(RTC_sla_addr+I2C_Write); i2c_write(Timer_Location_addr); i2c_write(0x84); i2c_stop(); Eigentlich sollte es so richtig sein oder hat jemand einen Fehler entdeckt. Aber anstelle das nach 10 Sekunden der Interrupt Pin der PCF8583 auf Low gezogen wird, toggelt dieser im Sekundentakt vor sich hin, obwohl ich ein Timer konfiguriert habe. Er tut einfach so wie ihn das gar nicht stören würde. Was mache ich falsch an dem scheiss Ding?
IMHO solltest Du vor Beschreiben der Register im Controlregister mit bit 7 den Laden anhalten... Gruß, Holm
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.