haokey 发表于 2021-7-3 09:46
假如顺时针扭了一点但没到位之前逆时针扭回去了呢?
dzbj 发表于 2021-7-3 17:04
我觉得"ScanCount++"解决了你说的问题 就是说这之后得到的是一个确定值 要么转了要么没转 即便按你说的哆 ...
lkc8210 发表于 2021-7-3 23:41
然而,并不能
之前的回覆草率了
lkc8210 发表于 2021-7-3 23:41
然而,并不能
之前的回覆草率了
haokey 发表于 2021-7-7 12:20
探讨一下,假如我改成这样会怎样:
if(!PinA&&PinB)
{PinA_O= 1;}
yxlitol 发表于 2021-8-25 19:52
小白请教:请问,IF最后面大括号外面的PinA_O = PinA是什么意思?
if(PinA && !PinA_O && PinB) {
...
yxlitol 发表于 2021-8-25 19:57
PinA_O是怎么定义为下降沿的啊?真心请教
cdhigh 发表于 2022-1-28 06:16
按中键时如果有移位,可能会误触发一次加减
bhjyqjs 发表于 2022-2-7 10:49
楼主代码及其精简,不错!
实际上,只检测A引脚的下降沿,由B引脚状态决定加减更高效。
经实验,无漏脉冲 ...
lkc8210 发表于 2022-1-28 14:03
如果编码器太松就有可能
cn_zhx 发表于 2022-2-8 10:18
其实,这里AB数据线产生的是格雷码,如果我们采集时采用判断AB两线的变化,即,A或B来下降沿时,作出4次判 ...
hewayking 发表于 2022-2-16 14:19
个人做法硬件加104电容 一个接外部中断一个接普通IO 中断后读普通IO高低 正转高或低 反转低或高 ...
hewayking 发表于 2022-2-16 14:19
个人做法硬件加104电容 一个接外部中断一个接普通IO 中断后读普通IO高低 正转高或低 反转低或高 ...
hi等你 发表于 2023-4-17 10:59
不用这么复杂,只要判断两个脚是11,然后延时毫秒多少。忘了,再判断是不是10,就说明
它旋转了,如果判 ...
hi等你 发表于 2023-4-17 10:59
不用这么复杂,只要判断两个脚是11,然后延时毫秒多少。忘了,再判断是不是10,就说明
它旋转了,如果判 ...
lkc8210 发表于 2023-6-27 11:30
看到"延时毫秒"和"中断和定时器都不需要"
就知道你还没弄懂
微笑的小小 发表于 2022-11-8 17:51
这个代码我在STC15W408AS上调试通过。 为什么在STC8H1K08上不行,就是没有操作EC11旋转编码器,电脑串口 ...
hi等你 发表于 2023-6-28 16:05
我就是不用定时器和中断,这个资源用在更重要的地方,只需要判断10和11就行,反转判断01和11.
已 ...
herui2128 发表于 2023-9-22 15:41
谢谢楼主分享,我用的STC15W408AS。用楼主的例程,采用两个外部中断来检测脉冲。能正常检测到正转和反转。 ...
haokey 发表于 2021-7-7 12:20
探讨一下,假如我改成这样会怎样:
if(!PinA&&PinB)
{PinA_O= 1;}
刘佑红 发表于 2023-9-25 15:48
以下是我之前采用拿来主义得到的,只对判断后执行部分稍作修改,应用还不错。
/************************ ...
diyage 发表于 2023-11-25 19:55
我跟你用的一样,但是发现转快了丢码,慢很好
hewayking 发表于 2024-7-2 17:06
个人做法是a下降沿中断 中断后 判断b高低 确定正反转
bhjyqjs 发表于 2022-2-7 10:49
楼主代码及其精简,不错!
实际上,只检测A引脚的下降沿,由B引脚状态决定加减更高效。
经实验,无漏脉冲 ...
欢迎光临 (http://www.51hei.com/bbs/) | Powered by Discuz! X3.1 |