2CPLD功能实现
系统采用3片XC95108分别实现6个通道旋转编码器的编码计数以及与PC计算机的接口。这里主要介绍一个通道的编码计数实现。CPLD功能实现根据支持软件的不同可选择采用原理图方式、VHDL编程以及两者混合使用三种模式,本系统设计采用VHDL语言编程方式。
为了确保旋转编码器的编码精度,采用对输出信号A、B的各沿进行编码计数方式,这意味着要提取输出信号A、B的各个跳变,图7是一种跳变检测电路的原理图,相对应的VHDL编程如下。

根据A,B变化前后的状态,可以得到旋转方向、变即计数器计数方向Dire。从而可以有下列计数程序。

这样就实现了一个通道的编码计数。
评论