今天学习定时器的输入捕获部分,因为没有信号发生器,因此本文选用定时器自己输出信号再输入捕获测量频率和占空比。
代码如下:
首先是PWM中的代码增加了一个PSC的代码来设置PSC值,这样在改变占空比时比较方便
之后新建一个C文件,对GPIO、TIM以及TIM的IC、触发源模式以及开启时钟,使用测周法测量频率,相当于每来一个上升沿就将CNT的值存入CCR中,进行计算频率
触发源选用主从触发模式,对CNT进行清0,使得在一个周期内的数是从0开始计
以及频率与占空比的返回函数
以下是实验结果,输入是一个1000Hz以及占空比为50%的信号。
接下来是理论部分:
与昨天的输出比较不同,输入捕获,主要是当引脚出现上升沿或者下降沿时,将CNT的值输入到CCR中,可以用来测量信号的频率、占空比等