Witam,
Mam problem, który spędza mi ostatnio sen powiek.
Mam zadeklarowaną tablicę w pamięci EEPROM
Podczas kompilacji
Przy próbie odczytu z tablicy
Otrzymuję komunikat o błędzie:
Po zrzutowaniu odczytanej wartości na float i podzieleniu przez 10 otrzymuję -0,1
W czym tkwi mój błąd?
wkaźnik jest typu int16_t ...tablica też...
Dodam, że po zapisie do komórki tablicy
kolejny odczyt jest już prawidłowy.
Z góry dzięki za wszystkie odpowiedzi.
Mam problem, który spędza mi ostatnio sen powiek.
Mam zadeklarowaną tablicę w pamięci EEPROM
static EEMEM int16_t t_value[4][2]={
{389,386},
{386,386},
{386,386},
{386,386}};
Podczas kompilacji
Przy próbie odczytu z tablicy
int16_t value;
value=eeprom_read_word((int16_t*)&t_value[flag][0]);
Otrzymuję komunikat o błędzie:
warning: pointer targets in passing argument 1 of '__eerd_word_m8' differ in signedness
Po zrzutowaniu odczytanej wartości na float i podzieleniu przez 10 otrzymuję -0,1
W czym tkwi mój błąd?
wkaźnik jest typu int16_t ...tablica też...
Dodam, że po zapisie do komórki tablicy
eeprom_write_word((int16_t*)&t_value[flag][number], value);
kolejny odczyt jest już prawidłowy.
Z góry dzięki za wszystkie odpowiedzi.
