Forum: Compiler & IDEs int32_t eeprom_write_block


von D a v i d K. (oekel) Benutzerseite


Lesenswert?

Ich habe leider weder AVR noch JTAG zur Hand und muss in meinem 
funktionierenden Code ein EEPROM uint32_t gegen int32_t tauschen.

Bin mir bei source und target ziemlich unsicher und würde mir gerne die 
folgenden Zeilen von Jemanden bestätigen lassen, der öfters mit 
"eeprom_write_block" unterwegs ist ;)


*.h
1
//eep
2
    //extern uint32_t EEMEM eeCalibrationAddend_b;
3
    extern int32_t EEMEM eeCalibrationAddend_b;

*.c
1
/* saved in EEPROM */
2
//int16_t calibrationAddend_b;
3
int32_t calibrationAddend_b;
4
5
...
6
7
8
void get_Cali() {
9
    ...
10
    //calibrationAddend_b = eeprom_read_dword(&eeCalibrationAddend_b);
11
    eeprom_write_block(&calibrationAddend_b, &eeCalibrationAddend_b, sizeof(eeCalibrationAddend_b));
12
}
13
14
15
void save_Cali() {
16
    ...
17
    //eeprom_update_dword(&eeCalibrationAddend_b, calibrationAddend_b);
18
    eeprom_update_block(&calibrationAddend_b, &eeCalibrationAddend_b, sizeof(eeCalibrationAddend_b));
19
}

Passt das so oder habe ich noch grobe Schnitzer drin?

von foobar (Gast)


Lesenswert?

In get_Cali sollte wohl eher ein eeprom_read_block stehen.

von D a v i d K. (oekel) Benutzerseite


Lesenswert?

foobar schrieb:
> In get_Cali sollte wohl eher ein eeprom_read_block stehen.
Danke
Ansonsten passt es? (kann es leider nicht mehr bearbeiten)

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
Noch kein Account? Hier anmelden.