打印
[C语言]

分享一个旋转编码器的编程使用方法

[复制链接]
2502|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
stayeagle|  楼主 | 2015-12-9 18:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
刚入音响这行,就被要求使用旋转编码器,之前都没接触过,所以就去网上找了大量资料,结果好像没找我满意的程序,基本都用上定时或中断的,但我单片机的资源又有限,所以不想用那么复杂,所以还是决定好好研究一下
首先,在编码器上面接上几个LED观察引脚电平的变化顺序,我的正转的时候是11-00-01-11,反转的时候是11-01-00-11,所以区别就是在于中间两个状态
那么我先用两个位定义VA和VB记录当前的状态
中间保证有大概100ms的延时
然后再判断这两个引脚的状态,如果变成00了,只要判断VA和VB的值就可以知道是正转还是反转了
如果是11就是正转,如果是01就是反转

然后中间延时的那部分,我不是用延时程序,而是靠执行其他程序来制造延时,比如显示、红外处理什么,提高程序的效率
经过试验呢,中间的延时是很有必要的,不然会有很多误码
大家也可以试试,这是我自己想出来的办法,别喷哈~~

相关帖子

沙发
lxa0| | 2018-1-15 15:34 | 只看该作者
楼主完成了吗?

使用特权

评论回复
评论
wsnsyy 2018-1-18 10:50 回复TA
三年了,应该完成了吧 
板凳
mailshichao| | 2018-1-16 16:01 | 只看该作者
这帖子还翻出来了

使用特权

评论回复
地板
lxa0| | 2018-1-23 23:43 | 只看该作者
楼主完成后请上代码看看?
谢谢

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

7

帖子

1

粉丝