Napotkałem dziwny problem.
Mianowicie podczas tworzenia struktury - bez wartości- oraz przypisaniu jej miejsca w pamieć ee - wszystko jest ok - miejsce jest wypełnione zerami.
Kiedy tworze pojedynczą zmienną np o wartości 3 i rezerwuje jej miejsce w pamieć - to odczytując EEprom mam 0x03 - czyli tez ok.
Czyli tworzenie "wsadu" do eepromu przebiega dobrze.
Kłopot pojawia się jak chcę zmienić wartość pamięci podczas pracy programu .
używając struktur wykonuję oczywiście: (przykład z tego forum)
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
po chwili odczytuję strukture z eeprom:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
I teraz zmienna ram_zmienne.t_min_ee ma wartość 21 !!
Przy zapisie z poziomu programu w starszym bicie mam ciągle napisaną cyfrę o 1 większa niż być powinna.
Tak samo się dzieje gdy używam zapisu pojedynczej zmiennej:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Przy liczbach 2 bajtowych problem się nasila, zapisując liczbę dec 26 w pamieć powinno być 24H a pojawia się 1034 H - czyli 4148 dec.
Całe oprogramowanie sciągłem ze strony
http://mirekk36.blogspot.com/Nie wiem jak sobie z tym poradzić.