[STM32F7] stm32的编码器模式的正反转到底怎么判断的?

[复制链接]
19954|38
 楼主| chd121487941 发表于 2015-8-4 09:12 | 显示全部楼层
s_f_tan 发表于 2015-8-4 08:33
用dir来判断的话,在0位置编码器抖动话,很容易出错的,硬件不一定响应过来的 ...

是的  请问你是怎么判断的呢?
s_f_tan 发表于 2015-8-4 13:44 | 显示全部楼层
软件查询定时器的值,在一定时间的差值大于某个数,即可认定为上溢或下溢。再来处理高16位的计数。
上面有个链接,https://bbs.21ic.com/icview-1031056-1-1.html。自己看下。
s_f_tan 发表于 2015-8-4 13:46 | 显示全部楼层
chd121487941 发表于 2015-8-3 10:24
我还没想好解决办法,我之前都是用DIR来判断 后来发现有小概率误判现象,在获取CNT值后DIR发生变化,造成 ...

编码器物理上面有个脉冲极限的,在查询的时间内最大也只可能计到某个数,只要你的判断值大于这个,就不会误判断了。
huzi2099 发表于 2015-8-4 16:17 | 显示全部楼层
chd121487941 发表于 2015-8-3 15:34
用DIR在极端情况下会出现误判,比如一直处于正反转。

什么叫一直正反???
huzi2099 发表于 2015-8-4 16:19 | 显示全部楼层
chd121487941 发表于 2015-8-3 15:37
今天请教以为高人他告诉我答案。和我上面说的比较大小方法差不多,都是牺牲数据范围来读取,不过写法上明显 ...

你这个是位置不是方向
huzi2099 发表于 2015-8-4 16:20 | 显示全部楼层
s_f_tan 发表于 2015-8-4 08:33
用dir来判断的话,在0位置编码器抖动话,很容易出错的,硬件不一定响应过来的 ...

抖动自然无解了,得用软件处理
 楼主| chd121487941 发表于 2015-8-5 16:25 | 显示全部楼层
huzi2099 发表于 2015-8-4 16:19
你这个是位置不是方向

这个是方向啊,位置是通过差值判断的吧?,返回值直接就带上正负极了
 楼主| chd121487941 发表于 2015-8-5 16:26 | 显示全部楼层
huzi2099 发表于 2015-8-4 16:17
什么叫一直正反???

就是用手来正转和反转编码器啊
huzi2099 发表于 2015-8-5 23:30 | 显示全部楼层
chd121487941 发表于 2015-8-5 16:25
这个是方向啊,位置是通过差值判断的吧?,返回值直接就带上正负极了

:L,我们说的是一个东西吧,stm32的定时器编码器模式.
CNT就是位置计数,这个是由硬件完成的,不需要软件参与,正传+计数,反转-计数,是不?
huzi2099 发表于 2015-8-5 23:35 | 显示全部楼层
本帖最后由 huzi2099 于 2015-8-5 23:38 编辑

CNT初始化时给一初值,这个值就是你码盘整圈计数值然后就不用管了.
比如你1000线码盘上下都计数则一圈4000个计数,加溢出回0,减溢出修正为4000,你的65532是啥东东?
大概这个编码器模式你用法有些问题.
 楼主| chd121487941 发表于 2015-8-8 13:26 | 显示全部楼层
问题得到解决 我结贴咯
FireRiver9 发表于 2015-8-8 16:21 | 显示全部楼层
好像是通过DIR位来判断方向
尤彼卡 发表于 2015-8-8 17:08 | 显示全部楼层
retuen (int)((int16_t)(TIM8->CNT)); 哦,能不能详细解释一下
lwsn 发表于 2015-8-8 22:06 | 显示全部楼层
retuen (int)((int16_t)(TIM8->CNT));   一行代码直接读取  不用判断DIR就可以得到极性
zhangxuzhaodan 发表于 2016-9-6 15:44 | 显示全部楼层
chd121487941 发表于 2015-8-8 13:26
问题得到解决 我结贴咯

大哥,我想问问你编码器的问题,谢谢了。能加我QQ吗?624323244,谢谢了
zhangxuzhaodan 发表于 2016-9-6 15:45 | 显示全部楼层
lwsn 发表于 2015-8-8 22:06
retuen (int)((int16_t)(TIM8->CNT));   一行代码直接读取  不用判断DIR就可以得到极性 ...

怎么判断啊,大神
quray1985 发表于 2017-10-17 11:53 | 显示全部楼层
大神,是怎么判断正负方向的啊?
cbuestc 发表于 2020-1-28 21:26 | 显示全部楼层
楼主具体咋解决的,问完就跑了了
cbuestc 发表于 2020-1-28 21:42 | 显示全部楼层
我也遇到了这个问题
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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