Intento usar el temporizador de 16 bits de ATMega en cada tic del reloj midi. Un ritmo tiene 24 tics de reloj midi. Así por ejemplo 60 latidos por minuto = 1 latido por segundo = 24 tics por segundo.
¿Cómo puedo configurar el temporizador para x veces por segundo (dependiendo del valor de bpm)?
Estoy inicializando el temporizador en mi arduino con:
void setup()
{
cli(); // disable global interrupts
TCCR1A = 0; // set entire TCCR1A register to 0
TCCR1B = 0; // same for TCCR1B
// set compare match register to desired timer count:
OCR1A = 6510;
// turn on CTC mode:
TCCR1B |= (1 << WGM12);
// Set CS10 and CS12 bits for 1024 prescaler:
TCCR1B |= (1 << CS10);
TCCR1B |= (1 << CS12);
// enable timer compare interrupt:
TIMSK1 |= (1 << OCIE1A);
// enable global interrupts:
sei();
}
No obtengo el cálculo de OCR1A. Debería depender de un valor de bpm.