




已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于MCS51单片机的44矩阵键盘设计目录1 引言22 44矩阵键盘控制LED工作原理及软硬件设计、仿真调试22.1 44矩阵式键盘识别显示系统概述22.2 44矩阵式键盘原理32.3 44矩阵式键盘控制LED显示方法32.4 电路设计及电路图32.5 44矩阵式键盘软件编程52.6 44矩阵式键盘软件仿真调试分析83 结论94参考文献91 引言随着现代科技日新月异的发展,作为新兴产业,单片机的应用越来越广。单片机以其体积小、重量轻、功能强大、功耗低等特点而备受青睐。键盘作为一种最为普遍的输入工具在单片机项目应用上显得尤为重要。用MCS51系列的单片机并行口P1接44矩阵键盘,以P1.0-P1.3 作输入线,以P1.4-P1.7作输出线;在数码管上显示每个按键的0-F序号。 2 44矩阵键盘控制LED工作原理及软硬件设计、仿真调试2.1 44矩阵式键盘识别显示系统概述 矩阵式键盘模式以4个端口连接控制4*4个按键,实时在LED数码管上显示按键信息。显示按键信息,省下了很多的I/O端口为他用,相反,独立式按键虽编程简单,但占用I/O口资源较多,不适合在按键较多的场合应用。矩阵式键盘简介:矩阵式键盘又称行列键盘,它是用4条I/O线作为行线,4条I/O线作为列线组成的键盘。在行线和列线的每个交叉点上设置一个按键。这样键盘上按键的个数就为4*4个。这种行列式键盘结构能有效地提高单片机系统中I/O口的利用率。最常见的键盘布局如图1所示。一般由16个按键组成,在单片机中正好可以用一个P口实现16个按键功能,这也是在单片机系统中最常用的形式,本设计就采用这个键盘模式。 2.2 44矩阵式键盘原理在占用相同的IO端口的情况下,行列式键盘的接法会比独立式接法允许的按键数量多。行列式键盘的工作方式是先用列线发送扫描字,然后读取行线的状态,查看是否有按键按下。键盘部分提供一种扫描的工作方式,可以和具有64个按键的矩阵键盘相连接,能对键盘不断扫描、自动消抖、自动识别按下的键,并给出编码,能对双键或n个键同时按下的情况实行保护。在显示部分,它可以为发光二极管、荧光管及其他显示器提供按扫描方式工作的显示接口,而且为显示器提供多路复用信号,可以显示多达16位的字符或数字。键盘中有无按键按下是由列线送入全扫描字、行线读入行线状态来判断的,其方法是将列线的所有IO线均置成低电平,然后将行线电平状态读入累加器A中,如果有键按下,总会有一根行线被拉至低电平,从而使行输入不全为1。键盘中哪一个键按下可由列线逐列置低电平后,检查行输入状态来判断,其方法是依次给列线送低电平,然后检查所有行线状态,如果全为1,则所按下的键不在此列,如果不全为1,则所按下的键必在此列,而且是在与0电平线相交的交点上的那个键。2.3 44矩阵式键盘控制LED显示方法 (1)在“单片机系统”区域中,把单片机的P1.0P1.7端口通过8联拨动拨码开关JP3连接到“4*4行列式键盘”区域中的M1M4,N1N4端口上。即将P1口作为整个系统的输入接口电路 。 (2)在“单片机系统”区域中,把单片机的P0.0P0.6端口通过上拉电阻连接到“静态数码显示模块”区域中的任何一个ag端口上。 (3)此实验采用的是共阴极LED显示块,只有当ag端口输入高电平时才有效,即显示块中的对应的发光二极管才发光,低电平时不显示,通过ag端口的不同输入使显示器显示不同的字符。2.4 电路设计及电路图把89C51单片机的P1.0P1.7端口通过8联拨动拨码开关连接到“4*4行列式键盘”,其中P1.0-P1.3作为列线,P1.4-P1.7作为行线,把单片机的P0.0P0.6端口连接到共阴极“静态数码显示模块”区域中对应的ag端口上;系统首先通过CPU对全部键盘进行扫描,即把第一根行线置为“0”状态,其余行线置于“1”状态,读入输入缓冲器的状态,若其状态全为“1”表明该行无键按下,再将第二根行线置为“0”状态,同样读入输入缓冲器的状态,如其状态也全为“1”,则置第一根行线置为“0”状态,以此类推。如读入输入缓冲器的状态不全为“1”,确定哪一根列线为“0”状态,当某个键的行线和列线都为“0”状态时,表明该键按下。最后通过显示程序将该键的序号显示出来。(如下图2)图2 44矩阵式键盘电路图2.5 44矩阵式键盘软件编程 KEY EQU 30H ORG 0000H ;入口地址SJMP START START:MOV P0,#00H JIXU:MOV P1,#0FFH ;判第0行是否有键按下CLR P1.4 ;将P1.4清零MOV A,P1 ANL A,#0FH ;屏蔽高4位XRL A,#0FH JZ NOKEY0 ;A为0,转向NOKEY0LCALL DELAY10MS ;延时,去抖动 MOV A,P1 ;再确认一次ANL A,#0FH XRL A,#0FH JZ NOKEY0 ;A为0,转向NOKEY0MOV A,P1 ;判哪一个键按下ANL A,#0FH CJNE A,#0EH,NEXT1 MOV KEY,#0 LJMP OK ;转向显示程序NEXT1:CJNE A,#0DH,NEXT2 MOV KEY,#1 LJMP OK NEXT2:CJNE A,#0BH,NEXT3 MOV KEY,#2 LJMP OK NEXT3:CJNE A,#07H,NOKEY0 MOV KEY,#3 LJMP OK NOKEY0:MOV P1,#0FFH ;判第1行是否有键按下CLR P1.5 ;将P1.5清零MOV A,P1 ANL A,#0FH ;屏蔽高4位XRL A,#0FH JZ NOKEY1 ;A为0,转向NOKEY1LCALL DELAY10MS ;延时,去抖动MOV A,P1 ;再确认一次ANL A,#0FH XRL A,#0FH JZ NOKEY1 ;A为0,转向NOKEY1MOV A,P1 ;判哪一个键按下ANL A,#0FH CJNE A,#0EH,NEXT5 MOV KEY,#4 LJMP OK NEXT5:CJNE A,#0DH,NEXT6 MOV KEY,#5 LJMP OK NEXT6:CJNE A,#0BH,NEXT7 MOV KEY,#6 LJMP OK NEXT7:CJNE A,#07,NOKEY1 MOV KEY,#7 LJMP OK NOKEY1:MOV P1,#0FFH ;判第2行是否有键按下CLR P1.6 ;将P1.6清零MOV A,P1 ANL A,#0FH ;屏蔽高4位XRL A,#0FH JZ NOKEY2 ;A为0,转向NOKEY2LCALL DELAY10MS ;延时,去抖动MOV A,P1 ;再确认一次ANL A,#0FH XRL A,#0FH JZ NOKEY2 ;A为0,转向NOKEY2MOV A,P1 ;判哪一个键按下ANL A,#0FH CJNE A,#0EH,NEXT9 MOV KEY,#8 SJMP OK NEXT9:CJNE A,#0DH,NEXT10 MOV KEY,#9 SJMP OK NEXT10:CJNE A,#0BH,NEXT11 MOV KEY,#10 SJMP OK NEXT11:CJNE A,#07,NOKEY2 MOV KEY,#11 SJMP OK NOKEY2:MOV P1,#0FFH ;判第2行是否有键按下CLR P1.7 ;将P1.6清零MOV A,#P1 ANL A,#0FH ;屏蔽高4位XRL A,#0FH JZ NEXT16 ;A为0,转向NEXT16LCALL DELAY10MS ;延时,去抖动MOV A,P1 ;再确认一次ANL A,#0FH XRL A,#0FH JZ NEXT16 ;A为0,转向NEXT16MOV A,P1 ;判哪一个键按下ANL A,#0FH CJNE A,#0EH,NEXT13 MOV KEY,#12 SJMP OK NEXT13:CJNE A,#0DH,NEXT14 MOV KEY,#13 SJMP OK NEXT14:CJNE A,#0BH,NEXT15 MOV KEY,#14 SJMP OK NEXT15:CJNE A,#07H,NEXT16 MOV KEY,#15 SJMP OK NEXT16:LJMP JIXU OK:MOV A,KEY ;查表显示MOV DPTR,#TABLE MOVC A,A+DPTR MOV P0,A LJMP JIXU DELAY10MS:MOV R6,#10 ;延时D1:MOV R7,#248 DJNZ R7,$ DJNZ R6,D1 RET TABLE: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H DB 7FH,6FH,77H,7CH,39H,5EH,79H,71H END开始扫描是否有键按下通过P0口查询显示该序号N系统程序图Y识别是哪一个键按下2.6 44矩阵式键盘软件仿真调试分析在proteus中设计好实验电路后,然后在proteus编程环境中进行程序设计和编译,生成HEX文件并加载HEX文件,点启动,运行仿真。由于开始时P0口的值被赋为00H,P1口的值为FFH,当无键按下时,将P1.4口置0,再将P1口的值送A,屏蔽高4位,与0F相异或后,A的值变为0,即第0行没有键按下,转入NOKEY0子程序中,重新赋值P1口的值为FFH,将P1.5口置0后送A,屏蔽高4位,与0F相异或后,A的值又变为0,即第1行没有键按下,转入NOKEY1子程序中,同理,可以得知第2行和第3行也没有键按下。因而,P0口没有被重新赋值,保持为00H不变,又显示器是共阴极的,此时P0.0-P1.6口均为“0”,即“a-g”段均不显示,从而显示器不显示,并转向程序的开始继续循环扫描键盘,直到有键按下为止。3 结论回顾起此次课程设
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 酒店餐饮服务的智能化技术应用考核试卷
- 软件测试和代码质量的关系试题及答案
- 软件测试工程师的职责考察试题及答案
- 公路工程审计与合规问题分析试题及答案
- 数据安全防护的策略与技术研究试题及答案
- 行政组织治理理念试题及答案
- 公司户外水池管理制度
- 办公环境设施管理制度
- 学院绿化养护管理制度
- 公司卫生人员管理制度
- 安徽宣城郎溪开创控股集团有限公司下属子公司招聘笔试题库2025
- 2025届江苏省高三高考科研卷语文试题及参考答案
- 统编版语文六年级下册古诗词诵读考点巩固 期末复习专用课件
- 中小学期末考试总动员主题班会
- 核聚变:人类终极能源的钥匙646mb
- 智能教育技术驱动的个性化学习路径优化研究
- 国家公职人员应知应会法律知识300题(单选)含答案
- 2025江西中考:化学高频考点
- 基层治理现代化视角下“枫桥经验”的实践路径与创新研究
- 公共组织绩效评估-形考任务一(占10%)-国开(ZJ)-参考资料
- 国家开放大学电大《水利水电工程建筑物》期末题库及答案
评论
0/150
提交评论