Hallo, Ich habe ein Problem mit dem internen EEPROM eines ATMega328p. Meine Schreibroutine sieht folgendermaßen aus:
1 | void Write_b_eep(uint16 badd, uint8 bdata) |
2 | { |
3 | while (EECR & (1 << EEPE)); |
4 | EEAR = badd; |
5 | EEDR = bdata; |
6 | EECR |= (1 << EEMPE); |
7 | EECR |= (1 << EEPE); |
8 | } |
Führe ich diese Funktion 15x in einer for-Schleife aus, passt alles - führe ich sie 20x aus, so hängt sich der uC auf... Was kann da sein - hab leider nichts gefunden. Danke für eure Hilfe! :) mfg Andy