1 EPIT定时器介绍
EPIT的全称是Enhanced Periodic Interrupt Timer,增强性周期中断计时器,主要实现周期性中断定时的。EPIT是一个32位的定时器,在软件使能以后,在处理器不用介入的情况下提供精准的定时。
EPIT定时器有如下特点:
1.12位的分频值
2.时钟源可选的 32 位向下计数器
3.当计数值等于比较值的时候,产生定时器中断
4.支持在低功耗或者调试模式下使用
5.计数值在运行的时候也可以被修改
首先EPIT定时器的输入时钟源有3种,ipg_clk,ipg_clk_32k ,ipg_clk_highfreq可以选择,选择好输入在时钟以后,在经过一个12位的分频器进行分频,分频后的时钟进入到EPIT内部,在EPIT内部有三个寄存器为计数寄存器,装载寄存器,比较寄存器。这三个寄存器是32位的,EPIT计数器给他设置一个初值,开始运行后,他会从这个给定的初值开始递减,直到减为0。计数寄存器里面保存的就是某个时刻的这个数值。
EPIT定时器有两种工作模式:set-and-forget和free-running:
工作在set-and-forget模式,表示计数寄存器从加载寄存器里面获取初始值,然后开始递减,减到0以后会总重新从加载寄存器获取初始值。我们不能直接向计数寄存器直接写初始值。
工作在free-running模式,当计数寄存器减到0的时候自动从0xffffffff开始重新递减,不会从加载寄存器获取初始值。
EPIT定时器可以设置引脚输出,如果设置了,就会通过CPU的引脚输出信号。
接下来我们来看下EPIT的