volatile uint8_t takt;
ISR(TIMER0_OVF_vect){
takt++;
}
int main(void) {
TCCR0=(1<<CS00); //kein Prescaler
TIMSK|=(1<<TOIE0); // Overflow Interrupt en
DDRD=(1<<PD3);// PortD3 wird Ausgang
if(takt>=10){ //Takt bis 10 zählen
PORTD^=(1<<PD3); //PortD3 toggelt 50% PWM
}
Code:
Dieses Port-togglen kannst du natürlich weiter verknüpfen.
Du machst am Ende deines Code ein return0, damit beginnst du aber wieder am Anfang bei main. Damit wird immer alles neu initialisiert. Ich mache nach den Einstellungen im main ein for(;;){ und hier kommt mein sich wiederholender Code hinein} ohne return0 am Ende. Der Compiler sollte da auch ein Warning ausgeben.