6.6 输入捕获模式测频率&PWMI模式测频率占空比

  1. 输入捕获模式测频率

1.1电路连接示意图

待测PWM信号为stm32自己生成,输出脚为PA0,直接用一根线把PA0引到PA6。

1.2 设计思路

  • 在原有模板的基础上,改动PWM.h、PWM.c并添加IC.h、IC.c

  • 输出捕获初始化

第⼀步,RCC开启时钟,把GPIO的TIM的时钟打开 第⼆步,GPIO初始化,把GPIO配置成输⼊模式,⼀般选择上拉输⼊或者浮空输⼊模式 第三步,配置时基单元,让CNT计数器在内部时钟的驱动下⾃增运⾏ 第四步,配置输⼊捕获单元,包括滤波器、极性、直连通道还是交叉通道、分频器这些参数 第五步,选择从模式的触发源,触发源选择TI1FP1,调⽤⼀个库函数即可 第六步,选择触发之后执⾏的操作,执⾏Reset操作,调⽤⼀个库函数即可 第七步,调⽤TIM_Cmd函数,开启定时器

1.3 输入捕获常用库函数

  • 结构体配置输⼊捕获单元的函数

输出比较和输入捕获每个通道占⽤⼀个函数,输⼊捕获4个通道是共⽤⼀个函数的,在结构体中有额外的 参数来选择通道。

void TIM_ICInit(TIM_TypeDef* TIMx, TIM_ICInitTypeDef* TIM_ICInitStruct);
  • 输⼊捕获的初始化函数

与上⼀个函数类似都是⽤于初始化输⼊捕获单元的,上⼀个函数只是单⼀的配置⼀个通道, ⽽这个函数可以快速配置两个通道,把外设电路配置成PWMI的电路

void TIM_PWMIConfig(TIM_TypeDef* TIMx, TIM_ICInitTypeDef* TIM_ICInitStruct);
  • 给输⼊捕获结构体赋⼀个初始值函数

void TIM_ICStructInit(TIM_ICInitTypeDef* TIM_ICInitStruct);
  • 选择输⼊触发源TRGI函数

void TIM_SelectInputTrigger(TIM_TypeDef* TIMx, uint16_t TIM_InputTrigg
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值