完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
用51单片机读取编码器程序,AB相400脉冲/圈,用外部中断0接A相,P2^0接B相,A相下降沿触发中断,读取B相的电平,高电平脉冲+1,低电平脉冲-1;实际测试时读到的脉冲个数不对,而且编码器正转、反转,脉冲数值只向一个方向增加,并不是想象中的正转增加,反转减少;这是为什么呢?单片机的速度不够吗?
请高手指点,谢谢!!! |
|
相关推荐
9个回答
|
|
这种编码器应该以一相来计脉冲个数就可以了,每圈多少转应该是一相的脉冲个数,也就是400转/圈的话,应该是A、B相都是400个脉冲一圈。
你现在的做法应该是用来判断转向的方法。 |
|
|
|
人中狼 发表于 2017-8-17 10:03 对 楼上正解 |
|
|
|
不知道楼主用过非51的线路吗 我原来用过数字电路的
|
|
|
|
|
|
原厂触摸芯片可以过10v动态操作,0-230MHz不会有误动作卡死现象,单片机,51内核,16K内存,LED,LCD驱动
|
|
|
|
楼主你的问题解决了吗
|
|
|
|
楼主创意很不错啊!照你这么说确实应该这样呀!被绕进去了
|
|
|
|
第一个问题,如果你感觉是单片机速度的问题,可以慢慢的转一圈编码器,看看看脉冲会不会技术正确。第二,你的低脉冲怎么判断的,既然脉冲数能够增加,说明你的高电平脉冲判断应该没问题,感觉是你的判断方式可能有问题,自己检查一下代码。可以的话,把那段代码贴出来也行。
|
|
|
|
编码器AB相直接接单片机IO口吗
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
求助一下关于51系列单片机的Timer0的计时问题,TH0、TL0+1的时间是怎么算的?
770 浏览 0 评论
【RA-Eco-RA4E2-64PIN-V1.0开发板试用】开箱+Keil环境搭建+点灯+点亮OLED
544 浏览 0 评论
【敏矽微ME32G070开发板免费体验】使用coremark测试敏矽微ME32G070 跑分
677 浏览 0 评论
【敏矽微ME32G070开发板免费体验】开箱+点灯+点亮OLED
904 浏览 2 评论
649 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11990 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-21 18:02 , Processed in 0.662676 second(s), Total 86, Slave 69 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号