电子工程师的网站
首 页 |  新闻资讯 | 最新产品 | 解决方案 | 技术参数
设计应用
电路图 | 技术资料 | 芯片资料 | 技术论坛
  现在位置: 首页 > 设计应用 > 单片机 > 详细信息
单片机:用光电编码器实现单键飞梭功能
来源:   时间: 2007-4-29 9:21:29    
用光电编码器实现单键飞梭功能
作 者: 飞利浦医疗电子 杜荣茂

“单键飞梭”作为一种用户输入方法,其输入方式灵活可靠,特别适合应用在嵌入式仪器设备和手持式设备上。本文利用CPLD鉴相控制模拟开关, 模拟手动按键得到统一的PS/2码,从而简化软件设计,提高了用户输入效率。
1 光电Trim knob的工作原理

光电Trim knob又称为光电编码器(optical encoder),其中以Bourns公司和Greyhill公司的产品用得最广泛。本文就以Bourns公司的ENC产品为例,介绍其工作原理。

如图1所示,Trimknob有两个发光二极管及两个光敏三极管,中间是可自由转动的遮光板。当旋转Trimknob时,两个光敏三极管会被遮光板有次序地遮挡而产生图2所示的波形。

如果是顺时针从位置#1旋转到位置#2,通道A会比通道B相位超前半个周期;反之如果是逆时针从位置#3旋转到位置#1, 通道B会比通道A相位超前半个周期。通过检测通道A和通道B的相位就能判断是顺时针还是逆时针转动。通过记录检测通道A和通道B波形变化的次数就能得到转动位置变化数目。

2 Holtek HT82K628A简介

  HT82K628A是台湾Holtek公司为IBM PC/AT及兼容机设计生产的专用键盘扫描控制芯片,支持101/102/104/109个键, PS/2接口。引脚定义如图3所示。行线R0~R15为键盘矩阵的扫描输出,列线C0~C7为键盘矩阵的扫描输入。

表1列举了几个行列线对应的键值,关于此芯片的更详细的应用,请见参考文献[1]。

3 设计原理

通过一个鉴相电路,输入为通道A、B,输出为CW、 CCW。CW、CCW控制模拟开关SW1、SW2。SW1的数据端分别连接在C6和R7上,从表1可以看出C6、R7对应F8键。顺时针转动一个位置,CW 输出一个脉冲,模拟开关SW1接通。从键盘扫描控制芯片HT82K628A角度看,效果和按下“F8”一样,如图4。

4 实 现

4.1 鉴相器的实现

  由于本系统其它逻辑部分电路用到Xilinx公司的CPLD XCR3032XL,所以我们把鉴相器电路也做在此CPLD中。其中定义CW、CCW为输出引脚,Ch_A、Ch_B为输入引脚。状态机变化逻辑如下:
State_diagram Qstate
State St0: CW = 0;
CCW = 0;
if (!Ch_A&Ch_B) then St1
else if (Ch_A&!Ch_B) then St4
else St0;
State St1: CW=1;
CCW=0;
if (Ch_A&Ch_B) then St2
else St1;
State St2: CW=1;
CCW=0;
if (Ch_A&!Ch_B) then St3
else St2;
State St3: CW=1;
CCW=0;
if (!Ch_A&!Ch_B) then St0
else St3;
State St4: CW=0;
CCW=1;
if (Ch_A&Ch_B) then St5
else St4;
State St5: CW=0;
CCW=1;
if (!Ch_A&Ch_B) then St6
else St5;
State St6: CW=0;
CCW=1;
if (!Ch_A&!Ch_B) then St0
else St6;

4.2 模拟开关的实现

  一般手动按下一个键的开关时间是20ms,所以设计中在CW、CCW输出端加了一个单稳电路作为时延,单稳电路的输出作为模拟开关MC74HC4066的控制。电路设计如图5所示。

当鉴相器产生一个CW脉冲,U1就会触发产生一个20ms宽的脉冲,将U2的引脚1和2接通。从表1可以查出行列线C6、R7 对应着键F8, 于是从HT82K628A的PS/2输出口可以得到F8的PS/2码。

5 结 论
  该电路已经运用到实际应用中,收到很好的效果。读者可以根据这种思路, 采用输入解码控制模拟开关,合并到键盘矩阵扫描,得到统一的PS/2码,从而简化软件设计, 设计出更多更方便的用户输入方法。

相关信息
发表评论
打印本页 关闭本页
MC74HC4066AN的技术参数
  产品型号:MC74HC4066AN封装/温度(℃):14PDIP/-55~125描述:四模拟多路复用器/分配器价格/1片(套):¥2.50
>>详细内容
MC74HC4066ADTR2G的技术参数
  产品型号:MC74HC4066ADTR2G封装/温度(℃):14TSSOP/-55~125描述:四路双向模拟开关价格/1片(套):¥1.80
>>详细内容
MC74HC4066ADR2G的技术参数
  产品型号:MC74HC4066ADR2G封装/温度(℃):14SOIC/-55~125描述:四路双向模拟开关价格/1片(套):¥1.80
>>详细内容
MC74HC4066AD的技术参数
  产品型号:MC74HC4066AD封装/温度(℃):14SOIC/-55~125描述:四模拟多路复用器/分配器价格/1片(套):¥1.80
>>详细内容
已有(
)位对此新闻感兴趣的网发发表了看法 >>更多评论
内 容:
     
 
热点新闻
一周排行
关于我们 | 服务项目 | 付款方式 | 广告服务 | 联系我们 | 友情链接 | 投诉 建议 合作 | 网站地图 | 加入收藏
Copyright © 2007-2008 WEEQOO.COM Corp.All Rights Reserved. 版权所有 经营许可证编号:浙B2-20050339 法律声明
维库电子旗下网站:维库电子市场网 | ChinaICMart | 维库电子开发网 | 维库电子人才网
总部:杭州市下城区朝晖路182号国都发展大厦1号楼80A
电话:0571-85889139-8007 QQ:303939539 | MSN:zh1226@hotmail.com |  邮箱:laz8258@163.com dzsc51@163.com