您当前的位置:五五电子网电子知识单片机-工控设备嵌入式系统-技术利用CPLD鉴相控制模拟开关简化输入方法设计 正文
利用CPLD鉴相控制模拟开关简化输入方法设计

利用CPLD鉴相控制模拟开关简化输入方法设计

点击数:7528 次   录入时间:03-04 11:57:07   整理:http://www.55dianzi.com   嵌入式系统-技术

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

    1光电Trimknob的工作原理

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

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

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

    2HoLTEkHT82K628A简介

    HT82K628A是台湾Holtek公司为IBMPC/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公司的CPLDXCR3032XL,所以我们把鉴相器电路也做在此CPLD中。其中定义CW、CCW为输出引脚,Ch_A、Ch_B为输入引脚。状态机变化逻辑如下:

    State_diagramQstate

    StateSt0:CW=0;

    CCW=0;

    if(!Ch_A&Ch_B)thenSt1

    elseif(Ch_A&!Ch_B)thenSt4

    elseSt0;

    StateSt1:CW=1;

    CCW=0;

    if(Ch_A&Ch_B)thenSt2

    elseSt1;

    StateSt2:CW=1;

    CCW=0;

    if(Ch_A&!Ch_B)thenSt3

    elseSt2;

    StateSt3:CW=1;

    CCW=0;

    if(!Ch_A&!Ch_B)thenSt0

    elseSt3;

    StateSt4:CW=0;

    CCW=1;

    if(Ch_A&Ch_B)thenSt5

    elseSt4;

    StateSt5:CW=0;

    CCW=1;

    if(!Ch_A&Ch_B)thenSt6

    elseSt5;

    StateSt6:CW=0;

    CCW=1;

    if(!Ch_A&!Ch_B)thenSt0

    elseSt6;

    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码,从而简化软件设计,设计出更多更方便的用户输入方法




本文关键字:开关  嵌入式系统-技术单片机-工控设备 - 嵌入式系统-技术