欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    4 4扫描式矩阵键盘设计.doc

    • 资源ID:4146173       资源大小:855KB        全文页数:16页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    4 4扫描式矩阵键盘设计.doc

    湖 南 科 技 大 学单 片 机 课 程 设 计 题 目 _ 4*4矩阵键盘_ 姓 名 _杨泽伟_学 院 _机电工程学院_专 业 _测控技术与仪器_学 号 _0703030204_指导教师 _戴巨川_成 绩 _二一二年五月二十九日制摘 要 随着21世纪的到来,电子信息行业将是人类社会的高科技行业之一,式设施现代化的基础,也是人类通往科技巅峰的直通路。电子行业的发展从长远来看很重要,但最主要的还是科技问题。 矩阵式键盘提高效率进行按键操作管理有效方法,它可以提高系统准确性,有利于资源的节约,降低对操作者本身素质的要求。是它能准时、实时、高效地显示按键信息,以提高工作效率和资源利用率。 矩阵式键盘乃是当今使用最为广泛的键盘模式,该系统以N个端口连接控制N*N个按键,显示在LED数码管上。单片机控制依据这是键盘显示系统,该系统可以对不同的按键进行实时显示,其核心是单片机和键盘矩阵电路部分,主要对按键与显示电路的关系、矩阵式技术及设备系统的硬件、软件等各个部分进行实现。 4*4矩阵式键盘采用AT89C51单片机为核心,主要由矩阵式键盘电路、译码电路、显示电路等组成,软件选用C语言编程。单片机将检测到的按键信号转换成数字量,显示于LED显示器上。该系统灵活性强,易于操作,可靠性高,将会有更广阔的开发前景。目 录第一章:系统功能要求-1.1 4*4 矩阵式键盘系统概述-1.2 本设计任务和主要内容-第二章:方案论证-第三章:系统硬件电路的设计- 3.1 单片机控制系统原理- 3.2 原理图绘制说明- 3.3 画出流程图- 3.4 原理图绘制-第四章:系统程序的设计- 4.1 程序的编写步骤- 4.2 编写的源程序-第五章:调试及性能分析-第六章:心得体会-参考文献-第一章:系统功能要求1.1 4*4 矩阵式键盘系统概述 AT89C51单片机对4*4矩阵键盘进行动态扫描,当有按键盘的键时,可将相应按键值(0F)实时显示在数码管上。 由p1.0p1.3(列)和p1.4p1.7(行)组成4*4矩阵键盘,p0口接LED静态显示电路。由于p0口内部无上拉电阻,因此必须外部接上上拉电阻,其值的选择可以根据LED数码管发光电流及其亮度来决定。通过编写4*4键盘的驱动程序,当有键盘按下时,能够在数码管显示器与按键的键值对应的数字。0321 最常见键盘布局如下图1.1所示。一般由16个按键组成,在单片机中正好可以用一个p口实现16个按键功能,这也是单片机系统中最常见的形式,本设计就采用这个键盘模式。45678B9AFCDE图1.11.2 本设计任务和主要内容 本论文主要研究单片机控制的键盘识别显示系统,分别对按键信息和显示电路以及软、硬件各个部分进行研究。 主要内容如下:1.2.1 根据矩阵式键盘的特点,进行键盘控制系统的整体研究与设计;1.2.2 熟练掌握protues软件的使用,并能够按要求对设计的电路进行仿真,实现相应的功能;1.2.3 LED实时显示按键的信息;1.2.4 采用软件编程的方法实现按键信息的提取和显示。第二章:方案论证2.1 用proteus 仿真软件进行仿真 2.1.1 按照设计任务在proteus 7professional 中绘制电路原理图。 2.1.2 根据设计任务的要求编写程序,画出程序流程图,并在proteus下进行仿真,实现相应功能。 2.1.3 以AT89C51为核心,设计系统硬件电路,并根据所设计的电路制作实物。第三章:系统硬件电路的设计3.1 原理图绘制说明 3.1.1 用AT89C51单片机对4*4矩阵键盘进行动态扫描,当按键盘的键时,可以将相应的按键值(0F)实时显示在数码管上。4*4矩阵键盘是用4条I/O线作为行线,4条I/O线作为列线,在行线和列线的交叉点上设置一个按键,每个按键有它的行值和列值。 3.1.2 在“单片机系统”区域中,把单片机的P1.0P1.7端口通过8联拨动拨码开关连接到“4×4行列式键盘”区域的相应端口上。 3.1.3 在“单片机系统”区域中,把单片机的P0.0P0.7端口连接到“静态数码显示模块”区域中的任何一个ag端口上;要求:P0.0对应着a,P0.1对应着b,P0.6对应着g。3.2 画出流程图 流程开始先对第一列进行扫描,如果没有按键,再对第二列、第三列、第四列分别进行扫描,如果没有返回到开始;如果第一列有按键,分别对第一行、第二行、第三行、第四行进行扫描,若有按键按下分别显示0、1、2、3;第二列、第三列、第四列类似第一列,分别对第一行、第二行、第三行、第四行进行扫描,有按键相应的显示出数值。判断有无按键按下的方法是:第一步,置列线P1.4P1.7为输入状态,从行线P1.0P1.3输出低电平,读入列线数据,若某一列线为低电平,则该列线上有键闭合。第二步,行线轮流输出低电平,从列线P1.4P1.7读入数据,若有某一列为低电平,则对应行线上有按键按下。综合一二两步的结果,可以确定按键的编号。但是键闭合一次只能进行一次键功能操作,因此必须等到按键释放后,再进行键功能操作,否则按键一次,有可能会连续多次进行同样的操作。流程图如下: 开 始扫描一行 扫描一列扫描下一行 扫描下一行 该行该列是否有按键按下 延时去抖 Y四列全部扫描完? N 扫描下一行再次扫描原列 扫描下一行 N 四行全部扫描完?是否与原值相符? N 返回表示无键按下 释放按键 Y N Y Y 根据行列号求键值 根据键值查询数码显示值表 返 回图3.13.3 原理图绘制 3.3.1 打开protrus仿真软件,进入主界面,然后新建一个图纸文件,软件默认为A4纸张,符合我们的要求,所以不需要修改。 3.3.2 开始绘图,点击按钮P,弹出选择添加的器件框图,在Keywords里直接输入所需器件的名称或者在Category的下面各个选项里一次查找所需的器件名称,然后点击ok将所需器件添加进去。 3.3.3 依次添加AT89C51芯片,共阳极的7段数码管,16个按键,8个电阻R0R7,一个晶片,3个电容,地及电源。 3.3.4 按照设计的要求正确的连接电路,连接时注意管脚的分配及AT89C51的工作原理。 3.3.5 对连接好的电路图进行仿真,如果有错误要先按下暂停,然后对电路进一步的调整与修改,再进行仿真,保存原理图文件。 用protrus仿真软件所画的仿真图如下:图3.2 仿真原理图第四章 :系统程序的设计4.1 程序的编写步骤 4.1.1 判断是否有键按下; 4.1.2 识别被按下的键; 4.1.3 查数码显示编码表;4.2 编写的源程序#include<reg51.h>#define uchar unsigned char /数据类型的宏定义#define uint unsigned int /数据类型的宏定义sbit P07=P21;Unsigned; chart code table=0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E,0xBF; /共阳数码管显示字型码数组 1011 1111 "-"void delay1ms(uint i)uchar j;while(i-) for(j=0;j<115;j+) /1ms基准延时程序 ; void display(unsigned char i) P07=1; /选通最有端的数码管显示 P0=tablei; /显示i参数传来的字型码 void main(void) unsigned char temp; display(16); /初始显示 "-" while(1) /P1=0xff; /先向P1口写1;端口读状态 P1=0xf0; temp=P1; if(temp!=0xf0) delay1ms(15); if(temp!=0xf0) P1=0xfe; temp=P1; switch(temp) case(0xee):display(0);break; case(0xde):display(4);break; case(0xbe):display(8);break; case(0x7e):display(12);break; P1=0xfd; temp=P1; switch(temp) case(0xed):display(1);break; case(0xdd):display(5);break; case(0xbd):display(9);break; case(0x7d):display(13);break; P1=0xfb; temp=P1; switch(temp) case(0xeb):display(2);break; case(0xdb):display(6);break; case(0xbb):display(10);break; case(0x7b):display(14);break; P1=0xf7; temp=P1; switch(temp) case(0xe7):display(3);break; case(0xd7):display(7);break; case(0xb7):display(11);break; case(0x77):display(15);break; 第五章 :调试及性能分析 5.1 仿真结果:将此程序在汇编器中生成的“.hex”文件,导入AT89C51芯片中,用鼠标右键点击AT89C51,然后点鼠标左键,弹出编辑元件的框图,在programfile里添加.hex文件,再点OK。 5.2 点击“开始”按键,进行仿真,点击右边4*4按键,则数码管显示0F,仿真结果符合实验要求,仿真结果如下图所示:图5.1 仿真结果显示图(图中显示4) 5.3 系统实现的功能5.3.1 基本功能:通过键盘输入,在数码管上显示相应的数值;5.3.2 功能优势:键盘输入,单片机控制,数码管显示,在数码管连接方面克服了共阳极数码管显示不清晰的困难。第六章 :心得体会 通过本次单片机课程设计,我不仅加深了对单片机理论知识的理解,学会了学以致用的重要性;而且还学会了如何去加强锻炼创新精神,同时也提高了自身的动手能力,让我深刻的意识到理论与实际结合的重要性。 在本次设计过程中,虽然设计的题目不是很难,但在实际操作过程当中也遇到了不少困难,通过遇到的困难也让我不断地去查找资料,不断地区询问同学,不断地去开动自己的脑子,从而也不断地超越自我,让自己的知识能够得到不断地完善;同时更重要的是,在这一设计过程当中,让我懂得了在学习的道路上会遇到很多的阻碍,但关键的是能做到坚持不懈,不轻易放弃;最终达到自己想要的目标。 单片机的学习对于我们专业来说非常的重要,通过本次设计也让我更加清晰了对专业的了解,理论知识再丰富,没有实际的操作经验也是不行的;本次设计也运用到了proteus仿真软件,由于之前没有学过该仿真软件,所以在操作的过程中遇到了很多困难,但庆幸的是通过不断的学习,对proteus软件也有了很大的了解,也学会了一些简单的操作,所以也让我意识到,如果你想学好,通过自己的努力就一定会学好。 当然在本次设计过程中,也遇到了很多的困难,比如很多关于单片机的基础知识学的不是很好,对最小系统也不是很了解;也由于时间有点紧,还要制作实物,很多需要动手的实际操作都是第一次接触,所以可能本次的设计并没有达到自己预期的目的,但通过本次设计也让我更加明白了结果并不是那么的重要,我们更应该注重的是过程。当然在设计过程中也少不了团队的合作,要是没有团队的帮助,我想我一个人也不可能在短时间内完成设计要求;所以在此也要感谢在设计中给予我帮助的指导老师和同学们。 参考文献【1】 李朝青等;单片机原理及串口外设接口技术;北京航空航天大学出版社,2008年1月;【2】 姜志海、刘连鑫;单片机微型计算机原理及应用;北京;机械工业出版社;【3】 洪志刚等;单片机应用系统设计;北京;机械工业出版社;【4】 王秋爽、曾绍龙等;单片机开发基础与经典设计实例;北京;机械工业出版社;【5】 赵星寒等;从0开始教你学单片机;北京;北京航空航天大学出版社;四、文字编印与排版要求4.1 页面要求4.1.1 页面设计(论文)需用A4纸(210 mm×x297 mm)印刷,页眉20 mm、页脚15 mm,上页边距为30 mm,左、右、下页边距为25 mm。4.1.2 页眉从目录页开始往后须有页眉,为“湖南科技大学本科生课程设计(论文)”。页眉五号宋体,居中。4.1.3 页码前置部分的目录用罗马数字编写页码,格式为“-i-”、“-ii-”、“-iii-”等。正文第一页往后各部分用阿拉伯数字连续编写页码。格式为“-1-”、“-2-”、“-3-”等,页码置于页脚,均用五号Times New Roman字体,居中放置。4.2 正文字体和字号及段落各章题序及标题:宋体加粗,小二号,段前段后各空0.5行;各节的题序及标题:宋体加粗,四号,段前段后各空0.5行;各条的题序及标题:宋体加粗,小四号,段前段后各空0.5行;款、项及标题:均采用宋体加粗,小四号,段前段后不空行,1.25倍行距,首行缩进2字符,与内容同行;内容:用宋体,小四号,段前段后不空行,1.25倍行距,首行缩进2字符。4.3 正文层次正文层次的编排建议用以下格式:章第三章 内容1、每章(或附录)另起页,章编号用大写数字。节X.1 内容2、节标题顶格,X为阿拉伯数字的章编号。条X.1.1 内容3、条标题顶格,X为阿拉伯数字的章编号。款、项(1) 内容4、款(项)标题空2格起排。内容内容5、各层次题序及标题不得置于页面的最后一行(孤行)。4.4 公式编排公式原则上居中书写。公式序号按章编排,如第一章第1个公式序号为“(1.1)”,如附录A中的第一个公式为“(A.1)”等。公式中第一次出现的物理量应给予注释。文中引用公式时,一般用“见式(1.1)”或“由公式(1.1)”。公式较长时最好在等号“=”处转行,如难实现,则可在、×、÷运算符号处转行转行时运算符号书写于转行式前。公式序号的右侧符号与右边线顶边排写,公式序号与对应的公式用点线连接。4.5 插表编排一律使用三线表。表格不加左、右边线。表序按章编排,如第一章第1个插表的序号为“表1.1”等。表序与表名之间空一格,表名中不允许使用标点符号,表名后不加标点。表序与表名置于表上,居中书写。表头设计应简单明了,起行空一格、转行顶格、句末不加标点。全表如用同一单位,将单位符号移至表头右上角,加圆括号。表中数据应正确无误,书写清楚。数字空缺的格内加“”字线(占2个数字),不允许用“”、“同上”之类的写法。4.6 插图编排插图应与文字紧密配合,文图相符,技术内容正确,编排美观。选图要力求精练。插图应符合国家标准及专业标准。每个图均应有图题(由图号和图名组成)。图号按章编排,如第一章第1图的图号为“图1.1”等。插图处的空白页不够排写该图整体时,可将其后文字部分提前排写,将图移至次页最前面。4.7 参考文献参考文献书写格式应符合GB7714-87文后参考文献著录规则。常用参考文献编写项目和顺序规定如下(所有标点符号均为半角):参考文献(4个字居中,宋体四号加粗),具体文献条目每条另起行,顶格,用五号宋体。

    注意事项

    本文(4 4扫描式矩阵键盘设计.doc)为本站会员(仙人指路1688)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开