编辑: huangshuowei01 | 2019-07-18 |
1 如何使用HT66F40 STM Compare Match Output功能文件编码:AN0245S 简介 HT66Fx0 系列 MCU 提供了一个新的功能单元 TM, 即Timer Modules, 整合了 Timer 和PWM 的功能,提供包括普通 Timer 定时、外部计数、可编程 Duty/Period PWM 输出或单脉冲输 出、输入捕捉等丰富的功能.
TM 依据功能可分为简易型 TM (CTM)、标准型 TM (STM) 和 增强型 TM (ETM). 本文即以 HT66F40 为母体, 通过具体范例说明 STM 中Compare Match Output Mode 的使用. 工作原理 STM 的核心是一个向上计数的
16 位计数器和两个比较器,具体结构如下图示: C C R P C C R A T n C C L R C o m p a r a t o r P M a t c h C o m p a r a t o r A M a t c h T n C K
2 ~ T n C K
0 T n O N T n P A U b
7 ~ b
9 o r b
8 ~ b
1 5
3 o r
8 - b i t C o m p a r a t o r P
1 0 o r
1 6 - b i t C o m p a r a t o r A C o u n t e r C l e a r
1 0 o r
1 6 - b i t C o u n t - u p C o u n t e r T n P F I n t e r r u p t T n A F I n t e r r u p t T P n P i n I n p u t / O u t p u t b
0 ~ b
9 o r b
0 ~ b
1 5 E d g e D e t e c t o r T n I O
1 , T n I O
0 T n M
1 , T n M
0 T n I O
1 , T n I O
0 T n P O L T n O C P o l a r i t y C o n t r o l O u t p u t C o n t r o l T P n _
0 T P n _
1 T C K n
1 1
1 0
0 0
0 0
1 0
1 0
0 1
1 1
0 0
1 0
1 1
1 0 f S Y S /
4 f S Y S f H /
1 6 f H /
6 4 f T B C R e s e r v e d
0 1 标准型 TM 方框图 注意:本范例中的 n=2. 计数器的时钟源可以通过设定 T2CK0~T2CK2 选择为 fSYS/
4、fSYS、fH/
16、fH/
64、fTBC 或者 为TCK2 输入.两个内部比较器:CCRP 即TM2RP 和CCRA 即TM2A,用于设定比较基准 值,CCRP 有8位宽,只对计数器的高
8 位进行比较,而CCRA 的位数和计数器一样,可 以跟计数器比较所有的位.当设定好相关的寄存器 TM 开始运行后计数器向上计数,系统 会将预先写入 CCRA 的值与计数器中的值进行比较.计数器在计数溢出或者与设定 CCRA 的值相等时,可以自动清除为零并产生一个中断信号,同时系统会根据程序设定产生相应 的输出信号. 计数器中 TM2DH/TM2DL 的值无法改变, 但是可以读出, 只能通过设定 T2ON 如何使用 HT66F40 STM Compare Match Output 功能
2 位由 0→1 才能将计数器清除为零.T2POL 可以对 TP2 输出逻辑进行控制,当被设定为 1, 可以强制对 TP2 输出逻辑反相. HT66F40 输出引脚介绍: 引脚 功能描述 TMPC0 PRM2 TP2_0 CCRA/CCRP 匹配输出引脚 T2CP0
1 : 使能 TP2 功能
0 : I/O 功能或者其它功能 TP20PS
0 : 设定 TP2_0 on PC3
1 : 设定 TP2_0 on PD1 TP2_1 CCRA/CCRP 匹配输出引脚 T2CP1
1 : 使能 TP2 功能
0 : I/O 功能或者其它功能 TP21PS
0 : 设定 TP2_1 on PC4
1 : 设定 TP2_1 on PD4 在STM 比较匹配输出模式中,可通过设定 T2CCLR 来选择由 CCRP 匹配清除为零还是由 CCRA 匹配清除为零计数器.当T2CCLR 设定为 1,T2ON 位由 0→1 时主定时器开始计数, 当主计数器与 CCRA 发生匹配时,T2AF 中断标志位设定为 1.若相应的中断使能,程序将 进入相应的中断服务程序.当T2CCLR 设为 0,T2ON 位由 0→1 时主定时器开始计数,当 主计数器与 CCRP 发生匹配时,T2PF 中断标志位设定为 1.若相应的中断使能,程序将进 入相应的中断服务程序.注意,由于 CCRP 和CCRA 匹配中断的入口位置一样,需要在进 入中断服务程序后, 通过判断 T2AF 和T2PF 来区分是 CCRA 还是 CCRP 匹配中断. T2AF、 T2PF 都不会自动清除为零,需要在中断程序中,软件清除为零.否则不能响应下次中断. 比较匹配输出模式时序图: 如何使用 HT66F40 STM Compare Match Output 功能