新手上路
- 积分
- 40
- 金钱
- 40
- 注册时间
- 2015-4-3
- 在线时间
- 0 小时
|
5金钱
测频原理
测频原理如图1所示。定时器对内部时钟CK_INT进行1 s的上行计数,通过预装载分频器TIM4_PSC将系统主频FREQ_SYSTEM(72 MHz)7200分频变成10 kHz,当前预分频计数器PSC_CNT对CE上升沿进行上行计数,当前预分频计数器PSC_CNT计的数值与预装载分频器TIM4_PSC相等时,通过或门产生对当前预分频计数器的清零信号SR(signal reset),并产生一个上升沿提供给定时器4的主计数器TIM4_CNT的CE(clock reset),定时器4自动重装寄存器TIM4_ARR设置为9999,将10 kHz频率计到(9999+1)次恰好产生1 s的更新中断。主计数器TIM4_CNT对CE上升沿进行上行计数,当计数到自动重装寄存器TIM4_ARR,就产生了更新中断。当更新产生时,会在定时器4的状态寄存器TIM4_SR的更新标志位UIF置1,并通过设置TIM4_CR2将主控模式设置为输出溢出触发脉冲。
被测信号通过定时器2的外部触发引脚,经过4分频后,通过设置定时器2的从模式控制寄存器TIM2_SMCR的ETPS为10可将外部信号实现4分频。设置TIM2_SMCR的ECE使能外部时钟使能位,外部时钟输入为ETRF,设置SMS为100,选中的触发输入TRGI的上升沿(这里是来自1 s的TIM4的触发输出),TRGO重新初始化计数器,并且产生一个更新寄存器的信号。分频寄存器TIM2_PSC设置为0分频,TIM2_ARR设置16位计数器最大值为0xffff,当外部信号计数到0xffff时,会产生更新中断标志位UIF置1。
定时器2对TIM2_SMCR将触发输入TRGI设置为TIM4_TRGO,从控制器模式设置为复位模式/TRGI的上升沿初始化定时器。通过设置定时器2的比较捕捉寄存器1的CC1S为11,将IC1映射在TRC上,当TIM4溢出事件时,会触发定时器2将TIM2_CNT的值锁存到TIM2_CCR1中,并清除所有定时器的计数器。
时序图如图2所示,图中小黑点为计数开始有效时刻,可以看到,当CK_INT为上升沿,且TIM2_ETRF即TIM2_CNT的CE为高时,若定时器4产生溢出TIM4_OV,此时会同步清零信号TIM2_TRGI(SR),锁存信号TIM2_TRC(LE)产生一个有效脉冲,把TIM2_CNT锁存到TIM2_CCR1,然后清除TIM2_CNT。
|
|