logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Zachowanie danych w EEPROM podczas programowania ATmega16 - jak to zrobić?

prokopcio 29 Paź 2007 19:49 1572 3
REKLAMA
  • #1 4427562
    prokopcio
    Poziom 29  
    Posty: 2027
    Pomógł: 39
    Ocena: 143
    Witam.

    Jak programuję atmegę16 to tracę dane eeprom, czy to jest normalne ?
  • REKLAMA
  • #2 4427855
    mrq80
    Poziom 15  
    Posty: 57
    Pomógł: 15
    Tak, to jest normalne.
    Musisz zmienić ustawienia w FUSE BITACH,
    konkretnie chodzi o bit EESAVE.
  • REKLAMA
  • #3 8748745
    tczi
    Poziom 11  
    Posty: 3
    Bardzo stary temat, ale problem podobny więc się tutaj dopiszę. Używam atmega32+AVRStudio. EESAVE mam oczywiście ustawiony, a mimo to przy każdym programowaniu uC eeprom jest kasowany. Proszę o pomoc, na forum podobnego problemu nie znalazłem, a nie wiem jak sobie z tym poradzić. Z góry dziękuję za pomoc. J
  • #4 8749529
    shg
    Poziom 35  
    Posty: 2289
    Pomógł: 339
    Ocena: 135
    Prawdopodobnie podczas kompilacji generowany jest plik z wsadem EEPROMu (chyba .eep). Trzeba zmodyfikować Makefile, tak żeby tego wsadu nie wgrywał.

    Możliwe że gdzieś jest na przykład taki fragment (to ze starszego WinAVR):
    AVRDUDE_WRITE_FLASH = -U flash:w:$(TARGET).hex
    #AVRDUDE_WRITE_EEPROM = -U eeprom:w:$(TARGET).eep


    #, czyli komentarz w drugiej linii załatwia sprawę.

    Można też usunąć część dotyczącą EEPROM z tej linii:
    program: $(TARGET).hex $(TARGET).eep
REKLAMA