Witam, mam problem z zapisem do EEPROM po wyłączeniu zasilania. Dokładnie to zapisuje mi tylko pierwszą linijkę poniższego kodu:
SIGNAL(SIG_INTERRUPT1)
{
eeprom_write_byte(&eeprom_val[0],0);
eeprom_write_byte(&eeprom_val[1],0);
eeprom_write_byte(&eeprom_val[2],0);
eeprom_write_byte(&eeprom_val[3],0);
eeprom_write_byte(&eeprom_val[4],0);
}
Po pojawieniu się zbocza opadającego na INT1, wywołuje to przerwanie. Nóżka INT1 jest na stałe do zasilania, jak odłączę ją w trakcie normalnej pracy uC i do zresetuje jest dobrze (wszystkie te wartości w eeprom są wyzerowane).
Po wyłączeniu zasilania te pojemności kondensatorów 5000uF napięcie na ATmega jest ponad 4V przez prawie 2 sekundy, a wykonuje tylko pierwszą linie przerwania.
Da się to jakoś zrobić tym sposobem. Inny sposób nie wchodzi w grę, ponieważ mam już wykorzystane wszystkie nóżki i zrobioną płytkę.

SIGNAL(SIG_INTERRUPT1)
{
eeprom_write_byte(&eeprom_val[0],0);
eeprom_write_byte(&eeprom_val[1],0);
eeprom_write_byte(&eeprom_val[2],0);
eeprom_write_byte(&eeprom_val[3],0);
eeprom_write_byte(&eeprom_val[4],0);
}
Po pojawieniu się zbocza opadającego na INT1, wywołuje to przerwanie. Nóżka INT1 jest na stałe do zasilania, jak odłączę ją w trakcie normalnej pracy uC i do zresetuje jest dobrze (wszystkie te wartości w eeprom są wyzerowane).
Po wyłączeniu zasilania te pojemności kondensatorów 5000uF napięcie na ATmega jest ponad 4V przez prawie 2 sekundy, a wykonuje tylko pierwszą linie przerwania.
Da się to jakoś zrobić tym sposobem. Inny sposób nie wchodzi w grę, ponieważ mam już wykorzystane wszystkie nóżki i zrobioną płytkę.

