PCF8583 Problem

Gast #478557
Lesenswert?

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?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren