Witam,
zacznę może od końca. Jeśli drugi raz uruchomisz kompilację projektu, w którym nic nie zmieniłeś, warningi znikają, to tak w uproszczeniu. Kol.
mokrowski kiedyś to dokładnie wyjaśnił, poszukaj na forum.
Po drugie, masz tu poplątanie z pomieszaniem, chyba nie do końca łapię, co chciałeś osiągnąć

. No w każdym razie, zapis:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
nie ma sensu, przy założeniu, że chcesz do tego id zapisać wskaźnik na stringa, przypisujesz do zmiennej uint64_t wskaźnik, stąd:
Warning 1 initialization makes integer from pointer without a cast [enabled by default] Jak wyglądają funkcje Mirka do zapisu do EEPROMA, w tej chwili nie pamiętam, więc nie będę o tym pisał, coby głupot nie napisać

. Pomysł ze strukturami ok, ale w tym wypadku najlepiej też w nich przechowywać stringi ( oczywiście, przy założeniu, że będą w nich jeszcze inne dane).
Poniżej wklejam szkic kodu, jak najprościej to zrobić, wzorując się na tym, co wcześniej zamieściłeś. Zakomentowałem wywołanie funkcji wdt_reset() i copy_ram_emm(), abym mógł go skompilować.
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Pozdrawiam, QuadMan.