Hallo,
meine uralte Funkamateur DCF77 - Digitaluhr hat den Geist aufgegeben,
deshalb hab ich begonnen die Hardware zu modernisieren.
Dafür habe ich mir einen Arduino Uno zugelegt und zum sichern der
Weckzeiten einen I²C EEPROM drangehängt.
Ich programmiere den Arduino (ATmega328P) aber mit Atmel Studio in
richtigem C und muss mir deshalb die EEPROM Routinen selbst erstellen,
schon wegen dem Lernfaktor.
Leider bekomme ich mit meinen Leseroutinen nur 0xff gelesen, auch ein
Logikanalyzer zeigt mir das an, wogegen beim Schreiben scheinbar das
Richtige raus geht.
Als Puffer wird folgende Struktur, auf uint8_t gecastet, übergeben:
1 | typedef struct
|
2 | {
|
3 | uint8_t hour, minute;
|
4 | uint8_t armed, active;
|
5 | } alarm_time_t;
|
Was mache ich falsch?