光電编码器的驱动程序设计.docVIP

  • 5
  • 0
  • 约4.07千字
  • 约 7页
  • 2017-01-20 发布于重庆
  • 举报
光電编码器的驱动程序设计

本文以三星公司S3C2410(ARM9芯片)为CPU的嵌入式系统开发板为平台,详细阐述了嵌入式操作系统WinCE下光电编码器驱动程序的设计方法,以供同行参考。   1 光电编码器的工作原理   光电编码器(Optical Encoder)俗称“单键飞梭”,其外观好像一个电位器,因其外部有一个可以左右旋转同时又可按下的旋钮,很多设备(如显示器、示波器等)用它作为人机交互接口。下面以美国Greyhill公司生产的光电编码器为例,介绍其工作原理及使用方法。光电编码器的内部电路如图1所示,其内部有1个发光二极管和 2个光敏三极管。当左右旋转旋钮时,中间的遮光板会随旋钮一起转动,光敏三极管就会被遮光板有次序地遮挡,A、B相就会输出图2所示的波形;当按下旋钮时,2、3两脚接通,其用法同一般按键。 ? ? ? ? ? 图1 光电编码器的内部电路 图2 光电编码器的输出波形   当顺时针旋转时,光电编码器的A相相位会比B相超前半个周期;反之,A相会比B相滞后半个周期。通过检测A、B两相的相位就可以判断旋钮是顺时针还是逆时针旋转,通过记录A或B相变化的次数,就可以得出旋钮旋转的次数,通过检测2、3脚是否接通就可以判断旋钮是否按下。其具体的鉴相规则如下:   ① A为上升沿,B=0时,旋钮右旋;   ② B为上升沿,A=1时,旋钮右旋;   ③ A为下降沿,B=1时,旋钮右

文档评论(0)

1亿VIP精品文档

相关文档