7、TIM输入捕获

        在这里,为了测量外部信号的频率,我们先得有个信号源,产生一个频率和占空比可调的波形,但是考虑到大家可能没有信号发生器,所以我这里就借用了一下上一小节的代码,先用PWM模块,在PA0端口输出一个频率和占空比可调的波形,然后我们本节的代码,测量波形的输入口是PA6,所以我们直接用一根线,把PAO和PA6连在一起,这样就能测量自己PWM模块产生波形的频率了(如果你还有信号发生器的话,那就不需要PA0自己输出波形了,直接用信号发生器产生可调的测试信号,接在PA6端口,这样就行了),如果想同时测量频率和占空比,STM32的输入捕获还设计了一个PWMI模式,即PWM输入模式,另外它们的CH1到CH4,4个通道的引脚,也是共用的,所以对于同一个定时器,输入捕获和输出比较,只能使用其中一个,不能同时使用

#输出比较和特出捕获区别:


oc(Output Compare) 输出比较:输出比较可以通过比较CNT与CCR寄存器值的关系,来对输出电平进行置1、置0或翻转的操作,用于输出一定频率和占空比的PWM波形
IC (Input Capture)输入捕获:输入捕获模式下,当通道输入引脚出现指定电平跳变瞬间,当前CNT的值将被锁存到CCR中,可用于测量PWM波形的频率、占空比、脉冲间隔、电平持续时间等参数
把当前CNT的值读出来,写入到CCR中去
左边是边沿信号输入引脚CH1。一旦有边沿,比如说上升沿那这一块输入滤波和边沿检测电路就会检测到这个上升沿。让输入捕获电路产生动作,所以这一块的作用和外部中断差不多,都是检测电平跳变,然后执行动作。只不过外部中断执行的动作是向CPU申请中断,而这里电路执行的动作就是,控制后续电路让当前CNT的值,锁存到CCR奇存器中。对比一下输出比较,就是,输出比较,引脚是输出端口输入捕获,引脚是输入端口输出比较,是根据CNT和CCR的大小关系来执行输出动作输入捕获是接收到输入信号,执行CNT锁存到CCR的动作,这就是输入捕获的执行流程和与输出比较的区别

PWMI模式

这个PWMI模式就是PWM的输入模式,是专门为测量PWM频率和占空比设计的,把这两个功能结合起来,测量频率占空比就是硬件全自动执行,(后面)软件不需要进行任何千预,也不需要进中断
需要测量的时候,直接读取CCR寄存器就行了
使用非常方便,而且极大地减轻了软件的压力

笔记附录

7291df7580a9524678e4875ac0534ab9.png

be4aabb00185d29503ca1c82a7c18fc0.png

0d2e447192110203f820567606640985.png

78ac141ef98b826241576f1e5a5372a9.png

374cd7b0a13d35806fface7de544e812.png

e7f69836ca0ada7c9c8274a10bdee8c5.png

f3037d28ecb2db46088e84f695fb15ef.png

bf04c9bedb60d86069146593543fd6f6.png

784a43ea21be06f08eb85db78b8d6cf4.png

40abef3d209f20ca7b6267daa5646f7c.png

cc921d9643e75c3cd5a2e436c718c3b7.png

55b213421251ef89f8a4da9679f9e165.png

c83affcc84ad3e1847143fbe6e3d21fe.png

4f9c33921c45613bdfb8edf31eacad1a.png

2447c75a5200cec0c6ddf85f0a047518.png

2239c305f11c6afc118e11939a78259f.png

d34b657bb060e736f1cc72b009a2bb7c.png

62ebd73d2121eacd390119beef6631df.png

4dfe9ae01ea030a8550ba4a565398ea7.png

82aa2568280bc595f142da3a29e02619.png

a3647aca290180e8c72451808200254a.png

f6a77c4f4c186bbeaa72d25fb8c1793a.png

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值