! ("" ), interrupts, . , , . .:

Code:
int main(void){	
	init();
	
	static unsigned char i;
	while(1)
	{
		if(TIFR1&(1<<TOV1))//Timer1 Overflow
		{
			reg.power=ADC_read();
			if(reg.pause){//paused
				if(i%32==0){PORTD^=1<<HEART;}//blink slowly
				reg.servo=(angle_max-angle_min)/2+angle_min;//set servo to midposition
			}
			else{//unpaused
				if(i%16==0){PORTD^=1<<HEART;}//blink quickly	
			}
			
			OCR1A=reg.servo;
			OCR2A=reg.power;
			i++;
			TIFR1|=1<<TOV1;//reset the interrupt flag
		}
	}
}
interrupts. . , - - e ADC, , , . scheduler- . - interrupts 10-20ms .