注册名:

密码:

个人注册

企业注册

商务申请

商务管理平台

企业管理平台

个人管理平台

我的工控博客

中国工控网www.chinakong.com

首页 | 新闻中心 | 工控论坛 | 经验视点 | 工控商务 | 电气手册 | 工控博客 | 招聘求职 | 网上调查 | 企业中心 | 供求信息 | 资料中心 | 工控书店

所在位置:工控博客苑 -- 开女士工控博客 -- 通过LED和键盘完成的人机交互

中国工控网搜索:

开女士

     学历:大学本科
     职称:其他
     年龄:41岁
       新闻信息(0/0)
       工作图片(0)
       技术论文(1/1)
       交流论坛(0/0)
       留言信箱(2)
       浏览人次:2094

通过LED和键盘完成的人机交互

发表评论(1)   作者:开心    发布时间:2007年6月5日  

    人机交互
   
    人机界面:是指人与计算机系统进行信息交互的接口,包括信息的输入和输出。
   
    5.1 MCS-51单片机与键盘的接口技术
   
    键盘:单片机系统中完成控制参数输入及修改的基本输入设备,是人工干预系统的重要手段。
    键盘的分类:按编码方式可分为编码键盘与非编码键盘。按键组连接方式可分为独立连接式键盘与矩阵连接式键盘。
    键盘输入的主要对象:各种按键或开关。
   
    5.1.1 独立连接式键盘
   
    每键相互独立,各自与一条I/O线相连,CPU可直接读取该I/O线的高/低电平状态。其优点是硬件、软件结构简单,判键速度快,使用方便;缺点是占I/O口线多。
    适用场合:多用于设置控制键、功能键。适用于键数少的场合。
    独立连接式键盘连接图如下图所示。当没有键被按下时,所有的数据输入线都为高电平;当有任意一个键被按下时,与之相连的数据输入线将变为低电平;通过相应指令,可以判断是否有键按下。
   
    图5-1 独立连接式键盘
   
    5.1.2. 矩阵连接式键盘
   
    键按矩阵排列,各键处于矩阵行/列的结点处,CPU通过对连在行(列)的I/O线送已知电平的信号,然后读取列(行)线的状态信息。逐线扫描,得出键码。其特点是键多时占用I/O口线少,硬件资源利用合理,但判键速度慢。
    适用场合:多用于设置数字键,适用于键数多的场合。
    4行3列矩阵式键盘连接图如下图所示。其中包含4行、3列,构成一个4*3的数组将每行连接端点命名为X0、X1、X2及X3,每列连接端点命名为Y0、Y1、Y2。另外每行连接一个电阻到共同端点上。依扫描方式的不同,共同点可连接到VCC或GND,当我们要进行键盘扫描时,则将扫描信号送至Y0、Y1、Y2,再由X0~X3读取键盘状态,既可判断哪个键被按下。键盘扫描的方式有两种,即低电平扫描和高电平扫描。
   
    图5-2 4*3键盘
    1、低电平扫描,具体操作如下:
    如图5-2所示低电平扫描是将共同点连接VCC,无论哪个键被按下,X0~X3端点都保持为高电平(即1)。送入Y0~Y2的扫描信号中,只有一个为低电平(即0),其余两个为高电平。整个工作可分四个阶段。
    (1)、在第一阶段,主要判断是0、1、2、3号键有没有被按下。首先将110B信号送入列接口,也就是只有Y0为低电平,紧接着读取X0~X3的状态。
    * 若X3~X0为1110,表示0号键被按下;
    * 若X3~X0为1101,表示1号键被按下;
    * 若X3~X0为1011,表示2号键被按下;
    * 若X3~X0为0111,表示3号键被按下;
    若X3~X0为1111,表示0、1、2、3号键都没有被按下,进入下一阶段。
    (2)在第二阶段,主要判断是4、5、6、7号键有没有被按下。首先将101B信号送入列接口,也就是只有Y1为低电平,紧接着读取X0~X3的状态。
    * 若X3~X0为1110,表示4号键被按下;
    * 若X3~X0为1101,表示5号键被按下;
    * 若X3~X0为1011,表示6号键被按下;
    * 若X3~X0为0111,表示7号键被按下;
    若X3~X0为1111,表示4、5、6、7、号键都没有被按下,进入下一阶段。
    (3)在第三阶段,主要判断是8、9、“清除”、“确认”号键有没有被按下。首先将011B信号送入列接口,也就是只有Y2为低电平,紧接着读取X0~X3的状态。
    * 若X3~X0为1110,表示8号键被按下;
    * 若X3~X0为1101,表示9号键被按下;
    * 若X3~X0为1011,表示“清除”号键被按下;
    * 若X3~X0为0111,表示“确认”号键被按下;
    若X3~X0为1111,表示8、9、“清除”、“确认”号键都没有被按下,进入第一阶段,从头开始继续扫描。
    2、高电平扫描,具体操作如下:
    高电平扫描是将共同点接地(GND),无论哪个按键被按下,X0~X3端都保持为地电平(即0)。送入Y0~Y2的扫描信号中,只有一个为高电平,其余两个为低电平。整个工作可分四个阶段。
    (1)、在第一阶段,主要判断是0、1、2、3号键有没有被按下。首先将001B信号送入列接口,也就是只有Y0为高电平,紧接着读取X0~X3的状态。
    * 若X3~X0为0001,表示0号键被按下;
    * 若X3~X0为0010,表示1号键被按下;
    * 若X3~X0为0100,表示2号键被按下;
    * 若X3~X0为1000,表示3号键被按下;
    若X3~X0为0000,表示0、1、2、3号键都没有被按下,进入下一阶段。
    (2)在第二阶段,主要判断是4、5、6、7号键有没有被按下。首先将010B信号送入列接口,也就是只有Y1为低电平,紧接着读取X0~X3的状态。
    * 若X3~X0为0001,表示4号键被按下;
    * 若X3~X0为0010,表示5号键被按下;
    * 若X3~X0为0100,表示6号键被按下;
    * 若X3~X0为1000,表示7号键被按下;
    若X3~X0为0000,表示4、5、6、7、号键都没有被按下,进入下一阶段。
    (3)在第三阶段,主要判断是8、9、“清除”、“确认”号键有没有被按下。首先将100B信号送入列接口,也就是只有Y2为低电平,紧接着读取X0~X3的状态。
    * 若X3~X0为0001,表示8号键被按下;
    * 若X3~X0为0010,表示9号键被按下;
    * 若X3~X0为0100,表示“清除”号键被按下;
    * 若X3~X0为1000,表示“确认”号键被按下;
    若X3~X0为0000,表示8、9、“清除”、“确认”号
   
   
 

 评论仅代表评论人个人看法,不表明博客主人及中国工控网同意其观点或其描述 共1条评论  共1页  第1页  

 评论人署名:XYL5000 评论时间:2007/7/8 6:45:00

我要发表评论 

    好

共1条评论 共1页  第1页  

    发表评论

登陆网站发表评论

用户名:

密码:

注册 | 忘了密码
     相关技术论文:

关于我们     免责声明     服务项目     广告联系     友情链接     联系方式     意见反馈     设为首页     加入收藏

 ©2023-2025 中国工控网(www.chinakong.com) 版权所有 豫ICP备17046657号

管理员信箱:chinakong98@163.com  服务热线:13525974529

洛阳博德工控自动化技术有限公司

中国    洛阳