欢迎来到天天文库
浏览记录
ID:56568178
大小:324.00 KB
页数:57页
时间:2020-06-28
《单片机原理及应用键盘与显示器接口.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、键盘与显示器接口键盘可分为编码式键盘和非编码式键盘。编码键盘能够由硬件自动提供与被按键对应的ASCII码或其它编码。但是它要求采用较多的硬件,价格昂贵。非编码键盘则仅提供行和列的矩阵,其硬件逻辑与按键编码不存在严格的对应关系,而要由所用的程序来确定。非编码键盘的硬件接口简单,但是要占用较多的CPU时间。任何键盘接口均要解决三个主要问题:1、反弹跳2、串键保护3、按键识别1、反弹跳当按键开关的触点闭合或断开到其稳定,会产生一个短暂的抖动和弹跳,如下图所示,这是机械式开关的一个共同性问题。消除由于键抖动和弹跳产生的干扰可采用硬件
2、方法,也可采用软件延迟的方法。采用RS触发器实现硬件反弹跳当键数较多时经常用软件延时的方法来反弹跳,如流程图所示。当检出有键按下后,先执行一个反颤延时20ms的子程序,待前沿弹跳消失后再转入键闭合CLOSE子程序。然后再判断此次按键是否松开,如果没有,则进行等待。若已松开,则又执行一次延时20ms的子程序以消除后沿弹跳的影响,再去检测下次按键的闭合。2、串键保护由于操作不慎,可能会造成同时有几个键被按下,这种情况称为串键。有三种处理串键的技术:两键同时按下、n键同时按下和n键锁定。“两键同时按下”技术是在两个键同时按下时产生
3、保护作用。最简单的办法是当只有一个键按下时才读取键盘的输出,最后仍被按下的键是有效的正确按键。当用软件扫描键盘时常采用这种方法。另一种方法是当第一个按键未松开时,按第二个键不产生选通信号。这种方法常藉助硬件来实现。“n键同时按下”技术或者不理会所有被按下的键,直至只剩下一键按下时为止,或者将所有按键的信息都存入内部缓冲器中,然后逐个处理,这种方法成本较高。“n键锁定”技术只处理一个键,任何其它按下又松开的键不产生任何码。通常第一个被按下或最后一个松开的键产生码。这种方法最简单也最常用。3、按键识别决定是否有键被按下,如有则应
4、识别键盘矩阵中被按键对应的编码。编码键盘通过硬件直接提供按键与被按键对应的ASCII码或其它编码。非编码键盘则需要通过编程方式提供按键编码。其优点是结构简单、成本低廉非编码键盘接口技术非编码键盘接口技术主要是如何确定被按键的行、列位置,即键码(值)。按键识别是接口技术的关键问题。常用按键识别方法有行扫描法(Row-Scanning)和线反转法(Line-Reverse)。典型非编码键盘结构非编码键盘大都采用按行、列排列的矩阵开关结构,这种结构可以减少硬件和连线。矩阵键盘接口行扫描法识别按键行扫描法是采用步进扫描方式,CPU通
5、过输出口把一个“步进的0”逐行加至键盘的行线上,然后通过输入口检查列线的状态。由行线列线电平状态的组合来确定是否有键按下,并确定被按键所处的行、列位置。R1K13K14K15K16R2K9K10K11K12R3K5K6K7K8R4K1K2K3K4C1C2C3C4键位与行列线关系表上表列出了识别按键位置与各行之间的关系。其中,R1、R2、R3、R4表示行,C1、C2、C3、C4表示列。当扫描第一行时,R1=0,若读入的列值C1=0,则表明按键K13被压下,如果C3=0,则表明按键K15被压下。第一行扫描完毕后再扫描第二行,逐行
6、扫描至最后一行为止,即可识别出所有的按键。线反转法识别按键线反转法是藉助程控并行接口实现的,比行扫描法的速度快。如图所示为一个4×4键盘与并行接口的连接。并行接口有一个方向寄存器和一个数据寄存器,方向寄存器规定了接口总线的方向,寄存器的某位置“1”,规定该位口线为输出。寄存器的某位置“0”,规定该位口线为输入。线反转法的具体操作分两步第一步:先把控制字0FH置入并行接口的方向寄存器,使4条行线(PB0~PB3)作输出,4条列线(PB4-PB7)作输入。然后把控制字F0H写入数据寄存器,PB0~PB3将输出“0”到键盘行线。这
7、时若无键按下,则4条列线均为“1”;若有某键按下,则该键所在行线的“0”电平通过闭合键使相应的列线变为“0”,并经与非门发出键盘中断请求信号给单片机。图4.6(a)是第2行第1列有键按下的情况。这时PB7~PB4线的输入为1011,其中0对应于被按键所在的列。第二步:使接口总线的方向反转,把控制字F0H写入方向寄存器,使PB0~PB3作输入,PB4~PB7作输出。这时PB7~PB4线的输出为1011,PB3~PB0的输入为1011,其中“0”对应于被按键的行。单片机现在读取数据寄存器的完整内容为10111011,其中两个0分
8、别对应于被按键所在的行列位置。根据此位置码到ROM中去查表,就可识别是何键被按下。单片机通过8155实现的键盘、显示器接口如图所示为单片机8051与矩阵键盘及LED显示器的一种接口电路,通过编程设定8155的PA口、PB口作为输出口,PC口作为输入口。PA口完成键盘的行扫描输出,同时又对L
此文档下载收益归作者所有