Sollte es nicht
#define F_CPU 3686400
lauten? Und counter sollte vielleicht so definiert sein:
volatile unsigned char counter;
Oder alternativ lokal und statisch in der ISR:
ISR(TIMER0_OVF_vect){
static unsigned char counter=0;
counter++;
...
Edit: Ich bin zu langsam...
Lesezeichen