野火STM32电机系列(四)Cubemx配置TIM捕获编码器

接上一节内容,目前已经配置好了按键和LED灯控制、串口和显示屏配置、ADC和DMA的配置

生成后的代码将移植到之前的项目中,移植方法和之前一样

1 CubemxTIM配置输入捕获

由于我们使用驱动接口1连接PMSM

采用定时器3的CH1-CH3通道

CH1和CH2位AB相CH3为Z相,对应芯片管脚PC6,PC7,PC8

 

 在选择好通道后,配置TIM3

这里选择编码器模式,该模式可以直接读取脉冲数(不用特意设置捕获了,非常方便)

channel3作为脉冲中断触发,找到每一圈的零点位置

野火电机编码器是1000线的(转一圈1000个脉冲),这里4分频后变4000脉冲

 

配置TIM的中断

生成代码

2 函数配置

这里有几个函数需要配置

1.开启编码器模式函数

 

2.设定时定计数器的值

 3.打开TIM3通道3中断

4.中断回调函数

当编码器Z相出脉冲时进去中断,即可知道编码器到达零点

 通过下面的函数就知道编码器的脉冲数,即可算出电机的位置

可以通过之前配置的串口打印当前的计数值

 

 

 

  • 1
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值