问下增量式旋转编码器与51单片机的接线问题。

增量式旋转编码器就是那种A,B,Z相的,要求辩向跟计数,单片机AT89C51。能给个电路图吗,有C语言程序就更好了。就是要求把编码器的输出脉冲多少,送到单片机计数。

1、如果需要高速(速度比较快)计数,在单片机外面加一个判向电路。做硬件判向。
输出一般有两种,一种是输出一个方向信号和一个计数信号。

用单片机的一个计数器(如用T0),这样就能实现正反两方向的加减计数了。

另一种是输出两个正反计数的脉冲串。
用两个计数器做减法运算。两种都可以。

Z信号一般不用接计数器。看你用途和用法了。

2、编码器直接接单片机。
如你用5V单片机那编码器输出信号的幅值也应该是TTL电平的。

做软件判向,可能会影响计数速度。追问

如果直接接单片机能具体说说怎么接吗,如A相接单片机哪个引脚,B相呢,还有Z相是悬空还是怎么样呢?你有相关电路图和C程序吗,我做毕业设计用,被卡在这了,如能帮忙,万分感谢!我做的是把镜框的轮廓数据扫描出来,然后把数据发给上位PC机生成出来,这里轮廓数据扫描,我就采用旋转编码器,因为我们知道它是通过脉冲计数来算位移的!

追答

1、镜框的轮廓数据扫描;貌似和打印机扫描纸张差不多。
这种用法可能不会使用Z信号。
可以采用AB两信号输出的模块儿,配一个旋转轴带到一码盘,实际上也是编码器了。
2、如果你不用做正反转的加减计数,则使用A或B一个信号就行了,直接接单片机 的计数器计数就行。
如果要用到正反转的加减计数,则必须使用AB两相,相位差信号做判向电路。
AB两信号实质上是一样的脉冲串,只是在相位上相差90度。
如果用单片机用软件判向可能慢点。这种做法我也没有实践过。
如果你用外部判向可以给你个电路图。当然这样功能的集成电路也有。
不过用软件我也准备再过10天半月,有时间时做一下。
用单片机判向,我想应该先判断出AB信号的状态。就像我们用状态机做的程序一样。

追问

那你给我电路图吧,谢谢你了,选为满意答案

追答

qq:454877188

来自:求助得到的回答
温馨提示:答案为网友推荐,仅供参考