Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define PIN_SPK 9
- bool on = false;
- ISR(TIMER2_COMPA_vect) {
- //Esto se ejecuta a 8kHz
- digitalWrite(PIN_SPK, on);
- on = !on;
- }
- void setup(void) {
- cli();
- //set timer2 interrupt at 8kHz
- TCCR2A = 0;// set entire TCCR2A register to 0
- TCCR2B = 0;// same for TCCR2B
- // set timer count for 8khz increments
- OCR2A = 249;// = (1/8000) / ((1/(16*10^6))*8) - 1
- // turn on CTC mode
- TCCR2B |= (1 << WGM12);
- // Set CS20 bit for 1 prescaler
- TCCR2B |= 1; //no prescale
- // enable timer compare interrupt
- TIMSK2 |= (1 << OCIE2A);
- sei();
- }
Advertisement
Add Comment
Please, Sign In to add comment