Arduino core structure and timer usage
Here is a summary of all this. On an ATmega328P (Arduino Uno, Nano,
etc.), the Arduino core library uses the timers as follows:


Timer 0


timing and delay functions, using the TIMER0_OVF interrupt
“fast” PWM at 980 Hz on pins 5 and 6 (PD5 and PD6)

Timer 1


“phase-correct” PWM at 490 Hz on pins 9 and 10 (PB1 and PB2)

Timer 2


“phase-correct” PWM at 490 Hz on pins 3 and 11 (PD3 and PB3)



All three timers have their prescalers set to 64. TIMER0_OVF is the
only timer interrupt enabled by default.

Note that libraries can use the timers for their own purposes. Servo
for instance uses Timer&nbsp;1 for doing interrupt-based PWM.