Kann sich von euch jemand vorstellen warum man in einem Programm EEPROM schreib rechte abfragen sollte das eig nur Daten vom RAM ins Flash schreiben soll ?
hier mal ein auszug
Es handelt sich hierbei um einen Boot6loader für den ATmega168Code:floop1: sbic IO_REG(EECR), EEPE // eeprom zugriffe? rjmp floop1 ;flash page immer erst löschen flash-adresse im x-register ldi temp1, (1<<SELFPRGEN) | (1<<PGERS) rcall flash_wait // warte bis fertig ;counter init ldi temp2, (SPM_PAGESIZE/2) // wir schreiben immer 2byte = 1word ;inhalt vom ram ins flash kopieren flash_fill: ld r0, Y+ // zwei byte aus dem ram holen ld r1, Y+ ldi temp1, (1<<SELFPRGEN) // steuerbit rcall flash_wait // warte dec temp2 // zähler dekrementieren breq floop2 // 0=fertig kopiert adiw ZL, 2 // auf nächste adresse zeigen rjmp flash_fill // und weiter ;flash-adresse zurückholen
MFG ALBI







Zitieren

Lesezeichen