[STM32F3] 我用TIM做编码器模式的时候总溢出,是不是配置没对?

[复制链接]
 楼主| Pulitzer 发表于 2025-5-10 08:04 | 显示全部楼层 |阅读模式
接的是AB相信号,但TIMx_Counter老跳满值,难道是滤波没开?
Clyde011 发表于 2025-5-10 08:05 | 显示全部楼层
有时候跳变太快定时器反应不过来。
公羊子丹 发表于 2025-5-10 08:06 | 显示全部楼层
是不是编码器的分辨率太高?
周半梅 发表于 2025-5-10 08:07 | 显示全部楼层
你TIM设的最大值是多少?
帛灿灿 发表于 2025-5-10 08:07 | 显示全部楼层
滤波设置没开的话,容易误触发。
童雨竹 发表于 2025-5-10 08:08 | 显示全部楼层
看看反转配置对没?
万图 发表于 2025-5-10 08:09 | 显示全部楼层
AB相是不是相位反了?
Wordsworth 发表于 2025-5-10 08:10 | 显示全部楼层
建议加硬件滤波器试试。
Bblythe 发表于 2025-5-10 08:10 | 显示全部楼层
F3的定时器模式还挺多,搞混了容易出错。
 楼主| Pulitzer 发表于 2025-5-10 08:11 | 显示全部楼层
用逻辑分析仪抓一下AB相看看。
Uriah 发表于 2025-5-10 08:12 | 显示全部楼层
我建议你先跑慢速信号试试。
qintian0303 发表于 2025-5-10 10:46 | 显示全部楼层
溢出了就重新规划一下呢,太快了吧,放慢点一点一点来
故意相遇 发表于 2025-6-14 11:49 | 显示全部楼层
在使用STM32F3的TIM做编码器模式时出现总溢出问题,可能是配置不当或未处理溢出情况导致的
春日负喧 发表于 2025-6-14 12:00 | 显示全部楼层
时钟与GPIO配置,需开启对应定时器和GPIO的时钟,并将连接编码器A相和B相的GPIO引脚配置为合适的输入模式(如浮空输入或上拉输入)
她已醉 发表于 2025-6-14 13:00 | 显示全部楼层
使用TIM3时,要开启TIM3和GPIOA的时钟,并把PA6、PA7配置为输入模式
将爱藏于深海 发表于 2025-6-14 14:00 | 显示全部楼层
时基单元配置,预分频器一般选择不分频,自动重装载值可设为最大65535,计数模式选择向上计数。这样能保证计数器在较大范围内计数,减少溢出频率
白马过平川 发表于 2025-6-14 14:30 | 显示全部楼层
输入捕获单元配置,主要配置滤波器和极性参数。滤波器用于消除噪声干扰,极性参数根据编码器信号特点选择上升沿、下降沿或双边沿触发
西洲 发表于 2025-6-14 15:00 | 显示全部楼层
编码器接口模式配置,调用库函数配置编码器模式,如TIM_EncoderInterfaceConfig,可选择仅使用TI1通道、仅使用TI2通道或同时使用TI1和TI2通道进行计数。同时使用两个通道时计数精度更高
温室雏菊 发表于 2025-6-14 16:00 | 显示全部楼层
硬件溢出处理,STM32定时器存在溢出中断,可在中断里做溢出计数。向上溢出时溢出计数减1,向下溢出时溢出计数加1
风凉 发表于 2025-6-14 17:00 | 显示全部楼层
32位的编码器计数值可通过公式full_count = cnt + overflow_count * 65536计算得出
您需要登录后才可以回帖 登录 | 注册

本版积分规则

144

主题

5711

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部

144

主题

5711

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部