zaprogramować eeprom

Witam!

Czy WinAvr może jakoś wygenerować plik hex dla eeproma? Czy w kodzie źródłowym mozna jakoś kompilatorowi powiedziec aby umieścił w eepromie takie a takie bajty pod kolejnymi adresami?

Chodzi mi o umieszczenie w eepromie Atmegi8 dużej ilości stałych. Obecnie ręcznie edytuje plik HEX i ręcznie go wysyłam do pamięci rom (isprog), ale widze ze kompilator winavr'a automatycznie generuje plik eeprom.hex, tylko ze on zawsze jest pusty....;(

Reply to
sikurasaka
Loading thread data ...

Użytkownik sikurasaka napisał:

Musisz zadeklarować te bajty w sekcji __attribute__((section(".eeprom")))

Podrawiam Grzegorz

Reply to
Grzegorz Kurczyk

Użytkownik Grzegorz Kurczyk napisał:

No może zbyt lakonicznie to opisałem. Najlepszy będzie przykład. Osobiscie robię to tak:

// najpierw prosta definicja coby nie klepać tego __attribute.... #define eepromseg __attribute__((section(".eeprom"))) // i przykładowa definicja tablicy bajtów char tablica[10] eepromseg = {2, 4, 7, 4, 3, 7, 146, 255, 0, 128};

Pozdrawiam Grzegorz

Reply to
Grzegorz Kurczyk

Taka definicja już jest w avr-libc w avr/eeprom.h Sekcja nazywa się EEMEM.

Reply to
antek

Ha! Idealnie ...dzieki Teraz to można programować....;)

Reply to
sikurasaka

Użytkownik antek napisał:

Oj... to tyle czasu żyłem w niewiedzy ;-)

Pozdrawiam Grzegorz

Reply to
Grzegorz Kurczyk

Użytkownik antek napisał:

I sprawa się wyjasniła. W WinAVR-20050214 takiej definicji nie ma.

Pozdrawiam Grzegorz

Reply to
Grzegorz Kurczyk

Tak dodali to bodajże w przedostatniej z kolei :)

Reply to
antek

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.