ESP8266 Timer0和Timer1有两个计时器,其WiFi功能使用一个定时器。我们只能使用一定计时器。为避免崩溃问题,在Arduino框架中建议使用Ticker而不是Timer。 Ticker执行与计时器相同的功能。
本实例将演示如何使用定时器及中断实现LED闪烁。
定时器的速度计算公式如下:
定时器速度(Hz) = 定时器时钟速度(Mhz) / 预分频器
预分频器/分频器是将上述频率除以形成定时器的“滴答(tick)”(增加其计数器)。 然后将 ISR 配置为在特定数量的滴答数后触发。
使用了预分频器,因为定时器最多只能在其计数器中存储 8/16 位,这意味着对于 8 位计数器,它们将每 256/16000000 秒(16us)溢出,对于 16 位计数器,它们将每 65536 / 16000000 秒(4us)溢出 ,这通常远远超过需要。 预分频器允许对其进行缩放以允许更长的间隔。
在前面的文章中,对如何搭建ESP8266开发环境做了详细的介绍,请参考: