DS3231 Alarm Register aktivieren

Gast #3751882
Lesenswert?

Hallo,

ich möchte, dass der Ausgang INT/SQW einmal pro Sekunde oder einmal pro 
Minute schaltet. Wenn ich INTCN auf 0 setze, sehe ich meine LED im 
Sekundentakt blinken. RS1 und RS2 auf 0.

Ich möchte jedoch die andere Konfigurationen mit das Alarmregister 
ausprobieren. Dazu habe ich immer das 7.Bit auf 1 gesetzt. Wenn ich 
jetzt INTCN und A1IE auf 1 setze, sollte doch der Ausgang auch im 
Sekundentakt arbeiten. Ich sehe jedoch weder meine LED leuchten noch 
mittels Logikanalyzer einen kurzen Puls. Wenn ich A2IE auf 1 setze müßte 
sie analog dazu im Minutentakt auslösen. Geht funktioniert auch nicht.

Übersehe ich irgendwas?

Registeradresserinhalte:
07: 10000101
08: 10000000
09: 10000000
0A: 10000000
0B: 10000000
0C: 10000000
0D: 10000000
0E: 00000101
0F: 10001011

Tschau
Ardu
Gast #3751910
Lesenswert?

Hallo,

das ist ein ein fertiges kleines Modul vom Chinesen über ebay. Hatte 
schon den Pin vermessen. Es ist ein 2,7k Pullup vorhanden. Habe jetzt 
noch einen 10k Pullup zusätzlich verbunden. Ändert leider nichts.
Gast #3751913
Lesenswert?

Hallo,

wenn ich in 0x0E Bit 2 INTCN auf Null setze, taktet er im festen 1Hz 
Takt, was man noch mit RS1/RS2 ändern könnte. Die LED blinkt ebenfalls.

Registeradresse:  Byte
07: 10000101
08: 10000000
09: 10000000
0A: 10000000
0B: 10000000
0C: 10000000
0D: 10000000
0E: 00000001
0F: 10001011

Setze ich INTCN auf 1, passiert nichts mehr.
Gast #3751924
Lesenswert?

setze ich INTCN auf 1 und A1IE/A2IE auf 0 (Alarm Interrupt Enable) dann 
ist der Ausgang dauerhaft auf High. Damit wäre kein Alarm aktiv.
Sobald ich A1IE oder A2IE auf 1 setze geht der Ausgang auf dauerhaft auf 
Low. Genau das verstehe ich nicht.
Gast #3751946
Lesenswert?

Hallo,

okay, hab eine Alarmzeit vorgegeben und beide Alarmflags vorher auf 0 
gesetzt. Bis die Zeit ran war, lag High Signal an, dann war die Zeit 
erreicht und das Signal ging dauerhaft auf Low. Das heißt, man muß 
ständig den Alarm löschen bevor er neu triggert. Ich dachte der löst nur 
einen kurzen Low Impuls aus wartet erneut bis irgendwas "matched".

Klingt das logisch?
Gast #3751977
Lesenswert?

Hallo,

i.O. klingt alles einleuchtend. Der Programmieraufwand steigt jedoch. 
:-)
Wie oft kann man die Register denn beschreiben? Wenn ich jede Sekunde 
löschen müßte, wäre das viel Stress für das Register?

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