mcs-51与键盘、显示器的接口

mcs-51与键盘、显示器的接口

ID:36302373

大小:486.81 KB

页数:30页

时间:2019-05-08

mcs-51与键盘、显示器的接口_第1页
mcs-51与键盘、显示器的接口_第2页
mcs-51与键盘、显示器的接口_第3页
mcs-51与键盘、显示器的接口_第4页
mcs-51与键盘、显示器的接口_第5页
资源描述:

《mcs-51与键盘、显示器的接口》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第七章MCS-51与键盘、显示器的接口7.1MCS-51单片机与键盘接口7.1.1键盘的工作原理键盘实际上是一组按键开关的集合,平时按键开关总是处于断开状态,当按下键时它才闭合。它的结构和产生的波形如图所示。P1.1VCCGND断开闭合断开P1.1(a)(b)键盘的处理主要涉及三个方面:1.按键的识别2.抖动的消除消除按键盘抖动通常有两种方法:硬件消抖和软件消抖。硬件消抖是通过在按键输出电路上加一定的硬件线路来消除抖动,一般采用R—S触发器或单稳态电路。如图。断开闭合+5V+5V输出软件消抖是利用延时来跳过抖动过程3.键位的编码通常有两种方法编码。(1)用连接键盘的I/O线的二进制组合进行编

2、码。如(a)图(2)顺序排列编码。如(b)图,处理方法如下:编码值=行首编码值X+列号Y。P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.788848281484442412824222118141211P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7FEDCBA9876543210(a)(b)7.1.2独立式键盘与单片机的接口键盘的结构形式一般有两种:独立式键盘与矩阵式键盘。独立式键盘就是各按键相互独立,每个按键各接一根I/O口线,每根I/O口线上的按键都不会影响其它的I/O口线。GNDVCCGNDVCC或(b)8051(a)INT08051P1.0P1.1P

3、1.2P1.3P1.4P1.5P1.6P1.7P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7图(a)为中断方式工作的独立式键盘的结构形式,(b)为查询方式工作的独立式键盘的结构形式下面是针对图7.4(b)图查询方式的汇编语言形式的键盘程序。总共有8个键位,KEY0~KEY7为8个键的功能程序。START:MOVA,#0FFH;MOVP1,A;置P1口为输入状态MOVA,P1;键状态输入CPLAJZSTART;没有键按下,则转开始JBACC.0,K0;检测0号键是否按下,按下转JBACC.1,K1;检测1号键是否按下,按下转JBACC.2,K2;检测2号键是否按下,按下转JB

4、ACC.3,K3;检测3号键是否按下,按下转JBACC.4,K4;检测4号键是否按下,按下转JBACC.5,K5;检测5号键是否按下,按下转JBACC.6,K6;检测6号键是否按下,按下转JBACC.7,K7;检测7号键是否按下,按下转JMPSTART;无键按下返回,再顺次检测K0:AJMPKEY0K1:AJMPKEY1……K7:AJIMPKEY7KEY0:……;0号键功能程序JMPSTART;0号键功能程序执行完返回KEY1:……;0号键功能程序JMPSTART;1号键功能程序执行完返回……KEY7:……;7号键功能程序JMPSTART;7号键功能程序执行完返回7.1.3矩阵键盘与单片机的

5、接口矩阵式键盘又叫行列式键盘。用I/O口线组成行、列结构,键位设置在行列的交点上。例如4×4的行、列结构可组成16个键的键盘,比一个键位用一根I/O口线的独立式键盘少了一半的I/O口线。矩阵键盘的连接方法有多种,可直接连接于单片机的I/O口线;可利用扩展的并行I/O口连接;也可利用可编程的键盘、显示接口芯片(如8279)进行连接等等。其中,利用扩展的并行I/O口连接方便灵活,在单片机应用系统中比较常用。下图就是通过8255A芯片扩展的并行I/O口连接48的矩阵键盘。PA7PA6PA5PA4PA3PA2PA1PA0PC0PC1PC2PC3012345678910111213141531617

6、1819202122232425262728293031CS74LS373WRRDA1A0P2.7WRRDALEP0.0~P0.7D0~D7RESET1K20F+5V+5V82555.1K48051一.矩阵键盘的工作过程对矩阵键盘的工作过程可分两步:第一步是CPU首先检测键盘上是否有键按下;第二步是再识别是哪一个键按下。1.检测键盘上是否有键按下处理方法是:将列线送入全扫描字,读入行线的状态来判别。其具体过程如下:PA口输出00H,即所有列线置成低电平,然后将行线电平状态读入累加器A中。如果有键按下,总会有一根行线电平被拉至低电平,从而使行输入状态不全为"1"。2.识别键盘中哪一个键

7、按下处理方法是:将列线逐列置低电平,检查行输入状态,称为逐列扫描。其具体过程如下:从PA0开始,依次输出“0”,置对应的列线为低电平,然后从PC口读入行线状态,如果全为“1”,则按下的键不在此列;如果不全为“1”,则按下的键必在此列,而且是该列与“0”电平行线相交的交点上的那个键。为求取编码,在逐列扫描时,可用计数器记录下当前扫描列的列号,检测到第几行有键按下,就用该行的首键码加列号得到当前按键的编码。二.矩

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。