Reset_AVR(); sembra scattare arbitrariamente ma comunque non fa il reset

Metti le graffe ai tuoi if o cambia la #define in maniera opportuna, vedi: