#include <avr/io.h>
#include <avr/interrupt.h>
int main(void){
// put your setup code here, to run once:
DDRE |= (1 << PE4);
/*
//timer normal
TCCR0A = 0;
TCCR0B = (1 << CS00);// sem prescale
TIMSK0 = (1 << TOIE0);
*/
//configurando o timer do buzzer
TCCR0A |= (1 << COM0A1) | (1 << COM0A0) | (1 << WGM01);
TCCR0B |= (1 << CS00) | (1 << CS01); // prescale 64
OCR0A = 100;
TIMSK0 = (1 << OCIE0A);
sei();
while(1){
}
return 0;
}
ISR(TIMER0_COMPA_vect) {
// Inverte o estado do pino 2 (buzzer) para gerar o sinal do buzzer
PORTE ^= (1 << PE4); // Inverte o estado do pino 2
}
/*
ISR(TIMER0_OVF_vect) {
// Inverte o estado do pino 2 (buzzer) para gerar o sinal do buzzer
PORTE ^= (1 << PE4); // Inverte o estado do pino 2
}*/