Ребят, прошу вашей помощи. Сам не могу допереть. 
 Работаю в AtmelStudio 6.1 
 Код под atmega16 
 Код
#define F_CPU 16000000 
 #include <avr/io.h> 
 #include <avr/interrupt.h> 
 #include <util/delay.h> 
 ISR(TIMER0_OVF_vect){ 
    PORTB &= ~(1 << PINB4); 
    _delay_ms(50); 
 } 
 int main(void) 
 { 
    TIMSK = (1 << TOIE0); 
  TCCR0 = (1 << CS00); 
    asm("sei"); 
     
     while(1) 
     { 
         PORTB = (1 << PINB4); 
     } 
 }
 Дело в том, что если симулировать в самой студии, то при переполнении счётчика по идее должно сработать прерывание, но этого не происходит, флаг TOV0 устанавливается. Если файл программы попробовать симулировать в Proteus 7.7 то прерывание срабатывает, но из него не выходит, то есть зацикливается на нём. 
 Прошу помощи и сильно не пинать 