定时器A的逻辑图
由下图可以知道定时器有大致两部分:
时钟模块:
捕获比较
定时器模式说明
00:计数器停止
01:计数器从0到taccr0;taccro是手动设定的值
10:计数器从0到0xFFFF(2^16=65536)然后到0再从0到65535,一直循环;
11:计数器从0到taccr0再到0;然后,从0到taccr0再到0;循环0到taccr0再到0;(taccro是手动设定的值)
用到的寄存器介绍
用到的寄存器说明
主要是:时钟源选择;输入时钟分频(比如之前时钟源分频得到的时钟信号,在这里可以再分频,得到需要的震荡频率);时钟模式控制,上面说过的;中断使能和中断标志;
这个就是用来计数的,一个机器周期累加一,从0到65536;
捕获|比较寄存器;比较重要,而且有点麻烦;
CMx捕获方式(不捕获;上升沿捕获;下降沿捕获;上升&下降都捕获)
CCISx输入选择
对应引脚的第二功能
SCS:同步(1)或异步(0)捕获,一般用同步;
CAP:0比较模式;1捕获模式
out:用于PWM
TAIV用来区分A1的多源中断