【AM2634】 RTI
【AM2634】 RTI
1. 模块整体结构
每个RTI模块的硬件结构如下图所示,拥有2个Counter Block和4个Compare Block
2. 整体工作流程
Counter Block的作用是用于产生计数值,产生的计数值输入到Compare Block与设定的值进行比较,如果一致则产生中断或DMA请求。所以一个RTI模块有4个通道(4个定时器)。
3. Counter Block:
① UpCounter:按照输入的时钟频率(RTI_FCLK)递增。
② Compare Up Counter:比较寄存器,·这个寄存器只是用于分频
,比如说2频率,这个寄存器设置为2,当Up Counter递增到2的时候,Free Running Counter加1,然后Up Counter清0。
③ Free Running Counter:这个才是真正计数用来和我们设定的值进行比较产生中断的寄存器。
所以Counter Block整个逻辑是
:每隔一定时间(RTI_FCLK)Up Counter递增,当计数达到了分频系数值(Compare Up Counter)后,Free Running Counter递增,然后输出到Compare Block。
4. Compare Block
① Compare:存储比较值,当Compare与Free Running Counter匹配时产生一个中断请求。
② Update Compare:当Compare寄存器的值与Free Running Counter匹配时,Update Compare中的值会自动更新到Compare Block用于下次比较。通过这种机制,将Update Compare配置为0可以实现定时器的 One Shot模式,将Update 配置与Compare相同值可以实现定时器的Continue模式。
关于CLR这一部分,手册里面说是一个中断自清除的功能,实际没有用到,也不知道是干嘛用的。
5. 注意事项
下图这个寄存器配置完后会自动+1,因此我们计算完reload的值后要-1。