Was ist mit i und j in SIG_OVERFLOW0? Die sind nicht initialisiert! Eigentlich sollte der Compiler das warnen...
So wie du die verwendest sollten die static sein:
Das nimmt die aber die möglichkeit, sie von "aussen" zu verändern, etwa resetten wenn die IR-Daten korrupt sind. Was du willst ist IMHO nicht lokal static, sondern static.Code:SIGNAL(...) { static uint8_t i=0, j=0; i++; ...
Lesezeichen