idea accensione per motorino 2 tempi

z3us:
per la questione ritardo in gradi, pensavo di sfruttare una cosa che usavo sui pic, cioè miscelare l'assembler al C e più nello specifico il "nop".

I timer servono proprio per generare temporizzazioni :slight_smile:
Carichi su un timer il numero di cicli, 62.5 ns ciascuno se non usi il prescaler, per ottenere il tempo desiderato e attivi il relativo interrupt, alla fine del conteggio si attiva la ISR e fai quello che serve, nel frattempo che si esaurisce il conteggio il micro può fare altre cose.
In realtà sul timer devi caricare un valore pari al conteggio massimo, 256 se otto bit o 655536 se 16 bit, meno il numero di cicli richiesti, questo perché i timer del 328p contano solo avanti e l'interrupt si attiva al passaggio per lo zero.