( cd334 | 2015. 05. 11., h – 13:40 )

Az az ötletem támadt, hogy ki kéne deríteni mi okozza a resetet. Erre tökétesen alkalmas a MCUCSR regiszter.

A HW inicializálás legelejére illesztd be ezt a kódot:

uint8_t mcucsr_status = 0x00;
mcucsr_status = MCUCSR;
MCUCSR = 0x00;

Ezttán a program futása közben, ahol jónak látod kiirathatod a regiszter tartalmát egy porton, vagy UART-on keresztül.
Ennek a regisztenek a leírását megtalálod a datasheet-ben és rögtön látod mi okozta a resetet.