kubala83wroc Napisano Listopad 20, 2013 Udostępnij Napisano Listopad 20, 2013 Witam,chcę zapisywać i odczytywać do EEPROMu dane konfiguracji. Mam taki kod: #include <avr/io.h> #include <avr/eeprom.h> #include <string.h> typedef struct { char* x_coord = 0; char* y_coord = 0; char* s_coord = 0; bool is_set = false; } touch_coord; class A { private: public: A(); uint8_t config_read(); touch_coord* coord_cfg; touch_coord* config_get(); touch_coord cfg_touch_eeprom EEMEM; touch_coord cfg_touch_ram; void config_save(); }; A::A(){} uint8_t A::config_read() { memset((void*) &cfg_touch_ram, 0, sizeof(touch_coord)); // pobierz ustawienia eeprom_read_block((void*) &cfg_touch_ram, &cfg_touch_eeprom, sizeof(touch_coord)); return 1; } touch_coord* A::config_get() { return &cfg_touch_ram; } void A::config_save() { eeprom_write_block((void*) &cfg_touch_ram, &cfg_touch_eeprom, sizeof(touch_coord)); } int main(void) { A test; test.config_read(); while(1) { //TODO:: Please write your application code } } Po kompilacji otrzymuje błąd: section attribute not allowed for 'cfg_touch_eeprom' Gdy dodam static przed definicję cfg_touch_eeprom: static touch_coord cfg_touch_eeprom EEMEM; otrzymuje takie błędy: ld returned 1 exit statusundefined reference to `A::cfg_touch_eeprom' Co robię źle i jak to naprawić żeby działało?Pozdrawiam
Pomocna odpowiedź
Bądź aktywny - zaloguj się lub utwórz konto!
Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony
Utwórz konto w ~20 sekund!
Zarejestruj nowe konto, to proste!
Zarejestruj się »Zaloguj się
Posiadasz własne konto? Użyj go!
Zaloguj się »