16 #define EEPROM_FS_DATA_PAGE 0 17 #define AKKU_BASIS_PAGE_1 1 // Basisdaten zu den Akkus, jeweils vier Akkus auf einer Page. 18 #define AKKU_BASIS_PAGE_2 2 19 #define AKKU_DATA_PAGE_START 5 // Daten zu den 8 Akkus werden jeweils auf einer Page gespeichert. 21 #define WRITE_CYCLES_BYTE 2 // Startadresse für write_cycles 22 #define PAGE_OFFSET_BYTE 1 // Startadresse für page_offset 23 #define BYTE_OFFSET_BYTE 0 // Startadresse für byte_offset 25 #define AKKU_BASIS_DATA_BYTE_OFFSET 8 // Jeder Datenblock wird um 8 Byte versetzt 27 #define MAX_CYCLES 100000 // Ein Datenbitspeicher im EEPROM verträgt 100.000 Schreibzyklen 36 uint32_t betriebszeit_s;
38 uint8_t timestamp_datensatz_yy;
39 uint8_t timestamp_datensatz_mo;
40 uint8_t timestamp_datensatz_dd;
41 uint8_t timestamp_datensatz_hh;
42 uint8_t timestamp_datensatz_mi;
43 uint8_t timestamp_datensatz_ss;
51 uint8_t inbetriebnahme_yy;
52 uint8_t inbetriebnahme_mo;
53 uint8_t inbetriebnahme_dd;
54 uint8_t inbetriebnahme_hh;
55 uint8_t inbetriebnahme_mi;
56 uint8_t inbetriebnahme_ss;
61 uint32_t write_cycles;
69 void eeprom_read_data (
void );
70 void eeprom_write_akku_data (
void );
71 void eeprom_write_akku_basis_data (
void );
72 void eeprom_read_fs_data (
void );
73 void eeprom_write_fs_data (
void );
75 void eeprom_test(
void);