[AVR-GCC] Dynamiczna struktura i kopia w eepromie - jak rozwiazac....

Sep 06, 2008 7 Replies

Witam, chce dynamicznie tworzyć listę jednokierunkowa struktur... To akurat nie problem, jednak chciałbym zapisać kopię w pamięci eeprom. Może mi ktoś podpowiedzieć jak to zrobić w sposób prosty ... nic mi nie przychodzi do głowy :( Czy w eepromie też allocowac pamięć?



Pawel K przemówił ludzkim głosem:

A co zrobisz jak ci się skończy pamięć?

Tak, ręcznie :-). Po prostu musisz sobie z góry poprzydzielać adresy pod różne elementy i już.

Zbych pisze:

nie skonczy sie, ale chce zrobic liste wlasnie zeby zaoszczedzic pamiec ... bo do tej pory rezerwuje z zapasem ...

obawiam sie ze nie... poczekam na inne sugestie ...

Skoro to bedzie dynamiczna lista to EEPROM srednio sie nadaje. Moze pomysl o jakiejs szeregowej pamieci FRAM? SO08 z pewnoscia upchniesz, a zaleta taka, ze od razu mozesz tam umieszczac swoja liste i nie zajmowac pamieci SRAM w ogole. Masz wszystkie zalety EEPROM bez wad.

T.M.F. pisze:

no tak tylko nie nadmienilem ze do bedzie ATMEGA ... i dane beda wykorzystywane w krytycznej czasowo petli wiec zewnetrzny ram odpada :(

T.M.F. pisze:

mały OT co sie stało z

formatting link
śledziłem go od dłuższego czasu i ostatnio coś zgasło ...

Zalezy jak krytyczne jest ta petla. W ATMega masz I2C i SPI, ktore moga byc calkiem sprawne. Jesli czas w petli jest krytyczny to zawsze mozesz kopiowac wczesniej potrzebne dane do SRAM. Jakbys napisal cos wiecej to moze znalazloby sie jakies lepsze rozwiazanie. Wez pod uwage, ze zapis EEPROM jest strasznie wolny, trzeba pilnowac wtedy zasilania, a odczyt tez nie jest demonicznie szybki. A co do stronki to dziala, tylko kiepsko, musze przemigrowac na jakis sensowny serwer. No i potrzebuje secondary DNS :(

Pawel K pisze:

Osobiście zapisywałbym każdy element listy na kolejna wolna komórkę pamięci EEPROM. Dodatkowo, zapisywałbym również wskaźnik do kolejnego elementu, ale nie z pamięci RAM, tylko z pamięci EEPROM. Zrób dokładnie to samo co robisz w RAM - zapisuj adres kolejnego elementu.

Powodzenia.

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required