我实在找不到编辑按钮在哪了,直接发吧 旋转编码器V1.1版 测试平台:STC89C516单片机 12MHz晶振 其他平台可能要在RotaryEncoder.c文件中修改延时函数 接口定义在port.h文件中 版本特性: 1.旋转编码器程序加入旋转编码器按键的单击双击以及长按 2.精简旋转编码器代码 ![]() 链接:https://pan.baidu.com/s/1DDse2uiioNi6ByMBjVnB2Q 提取码:peng |
这个旋转编码器程序程序,写的太复杂了.应该几行C代码就可以实现. 当A相在刚导通的瞬间,同时检测B相是否也接通,若没有接通,说明A相先接通是正转 若B相已经接通,说明B相已经先接通了,是反转 |
好东西!给无私奉献点个赞! |
楼主,你好,我需要增加2个LED灯,正转=LED1;反正=LED2;来测试编码器方向,如何增加,求大家指点下 |
太复杂了,看了头通,可以优化吧 |
![]() 拆开后是这个样子了,看来要打磨一下 |
![]() 用103做了一个,用按钮模拟是对的,我没有编码器,用坏鼠标里的滚轮接上,竟然乱跑,一会加一会减,难道是滚轮坏了 |
楼主e6b2cwz6c编码器用过吗?这种三相的脉冲输出应该怎么做 |
我赞同楼上的意见,根据状态 判断出 旋转方向,是正转还是反转 |
楼主用的中断方式 占用1个中断 代码中的11 00这两个状态很关键 配合01 10就能很准确的判断方向 |
这不是正交信号吗,怎么你编码器的丝印都是串行输出的 |
谢谢分享,我试了下在仿真里数值似乎没有变化啊 |