概述
1.nrf52832有5个定时器,timer0-timer4,可以配置为16位,8位,24位,32位定时器,模式选择就是指配置定时器还是计数器或者低功耗计数器,位宽则是配置成多少位的
2.时钟框图如下
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/4ffbcf3417af5993854abf3c5e780106.png#pic_center)
3.根据时钟频率自动选择时钟源,无需手动指定选择哪个时钟源。ftimer<1M时选择1M时钟,否则选择16M时钟
4.时钟频率计算,ftimer=16M/(2^分频),无论时钟源是1M还是16M都是按照16M计算。设置分频,位宽等参数时,必须先停止timer工作
5.定时模式下要设置比较/捕获的值,也就是定时时间。
7.定时器可以产生比较匹配事件cc[0]-cc[5],cc[4]-cc[5]只有timer3,timer4才有
8.关闭定时器nrf_drv_timer_disable(),通过触发shutdown关闭。为什么不用stop任务关闭?,硬件bug,stop不会降低电流
9.计数器模式,初始化改变mode和位宽,频率和预分频无效,提供一个空回调函数,因为不会产生事件,也不用配置CC通道和定时时间
10.可以手动触发counter任务来计数,也可以ppi触发
11.计数值保存在counter中,没有这个寄存器,无法读取。可以触发tasks_capture[n]把数据复制到cc[n],然后读取cc[n]即可