行列式键盘--单片机课程设计报告要点

上传人:206****923 文档编号:90563581 上传时间:2019-06-13 格式:DOC 页数:20 大小:319.73KB
返回 下载 相关 举报
行列式键盘--单片机课程设计报告要点_第1页
第1页 / 共20页
行列式键盘--单片机课程设计报告要点_第2页
第2页 / 共20页
行列式键盘--单片机课程设计报告要点_第3页
第3页 / 共20页
行列式键盘--单片机课程设计报告要点_第4页
第4页 / 共20页
行列式键盘--单片机课程设计报告要点_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《行列式键盘--单片机课程设计报告要点》由会员分享,可在线阅读,更多相关《行列式键盘--单片机课程设计报告要点(20页珍藏版)》请在金锄头文库上搜索。

1、单片机课程设计报告课题名称 行列式键盘 学生姓名 xx 所在班级 xx 学生学号 xx 指导教师 xx 二一五年一月目录第一章 课程简介11.1 行列式键盘实现的功能11.2 技术指标1第二章 硬件设计22.1 最小系统简介22.1.1 主要管脚说明22.2 晶振32.3 行列式键盘的电路介绍42.4 共阳极数码管的介绍52.5 发光二极管的介绍6第三章 软件设计73.1 设计流程图73.2 程序流程图 8第四章 调试94.1 硬件调试94.1.1 电路电源调试94.1.2 电路下载调试94.2 软件调试9第五章 总结105.1 课程设计总结10第六章 附录12附录A 原理总图12附录B 程序

2、代码13附录C 实物图17第一章 课程简介1.1 行列式键盘实现的功能4*4行列式键盘以STC89C52单片机为核心,主要由4*4行列式键盘电路、4位8段数码管显示电路、LED灯电路和数码管位驱动电路等组成,软件选用C语言编程,简洁易懂。单片机将检测到的按键信号转换成数字量,由数码管显示4*4行列式键盘的行与列的数字信息。功能如下:按下S1键,数码管显示11,LED灯亮第一个,同时蜂鸣器发出响声;按下S2键,数码管显示12,LED灯亮第二个,同时蜂鸣器发出响声;按下S3键,数码管显示13,LED灯亮第一个和第二个,同时蜂鸣器发出响声;以此类推,按下按键,数码管显示按键的行列坐标数值,LED灯依

3、照8421编码规则进行亮灭,亮代表1,灭代表0,表示0-F这16个数,同时伴随蜂鸣器的响声; 行列式键盘控制系统可以提高效率,是进行按键操作管理的有效方法,它可以提高系统准确性,有利于资源的节约,降低对操作者本身的要求。并能正确、实时、高效地显示按键信息,以提高工作效率和资源利用率。行列式键盘是当今使用最为广泛的键盘模式,该系统以N个端口连接控制N*N个按键,并通过单片机,显示在LED数码管上。单片机控制键盘显示系统,可以对不同的按键进行实时显示,其核心是单片机、键盘矩阵电路和数码管显示电路。该系统灵活性强,易于操作,可靠性高,应用广泛。1.2 技术指标使用四位八段数码管中的两位,4个LED发

4、光二极管以及16个4*4的行列式键盘。整个电路使用+5V的直流电源,也可以用充电宝和笔记本电脑进行供电。第二章 硬件设计2.1 最小系统简介图2-1 最小系统对51系列单片机来说,最小系统一般应该包括:单片机STC89C52、晶振电路、复位电路。 STC89C52是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash存储器。STC89C52使用经典的MCS-51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。

5、2.1.1 主要管脚说明 VCC(40引脚):电源电压 VSS(20引脚):接地 P0端口(P0.0P0.7,3932引脚):P0口是一个漏极开路的8位双向I/O口。作为输出端口,每个引脚能驱动8个TTL负载,对端口P0写入“1”时,可以作为高阻抗输入。在访问外部程序和数据存储器时,P0口也可以提供低8位地址和8位数据的复用总线。此时,P0口内部上拉电阻有效。在Flash ROM编程时,P0端口接收指令字节;而在校验程序时,则输出指令字节。验证时,要求外接上拉电阻。 P1端口(P1.0P1.7,18引脚):P1口是一个带内部上拉电阻的8位双向I/O口。P1的输出缓冲器可驱动(吸收或者输出电流方

6、式)4个TTL输入。对端口写入1时,通过内部的上拉电阻把端口拉到高电位,这是可用作输入口。P1口作输入口使用时,因为有内部上拉电阻,那些被外部拉低的引脚会输出一个电流。 此外,P1.0和P1.1还可以作为定时器/计数器2的外部技术输入(P1.0/T2)和定时器/计数器2的触发输入(P1.1/T2EX),具体参见下表: 在对Flash ROM编程和程序校验时,P1接收低8位地址。 P2端口(P2.0P2.7,2128引脚):P2口是一个带内部上拉电阻的8位双向I/O端口。P2的输出缓冲器可以驱动(吸收或输出电流方式)4个TTL输入。对端口写入1时,通过内部的上拉电阻把端口拉到高电平,这时可用作输

7、入口。P2作为输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流。 在访问外部程序存储器和16位地址的外部数据存储器(如执行“MOVX DPTR”指令)时,P2送出高8位地址。在访问8位地址的外部数据存储器(如执行“MOVX R1”指令)时,P2口引脚上的内容(就是专用寄存器(SFR)区中的P2寄存器的内容),在整个访问期间不会改变。 在对Flash ROM编程和程序校验期间,P2也接收高位地址和一些控制信号。 P3端口(P3.0P3.7,1017引脚):P3是一个带内部上拉电阻的8位双向I/O端口。P3的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。对端口写入

8、1时,通过内部的上拉电阻把端口拉到高电位,这时可用作输入口。P3做输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输入一个电流。 在对Flash ROM编程或程序校验时,P3还接收一些控制信号。 P3口除作为一般I/O口外,还有其他一些复用功能。2.2 晶振图2-2 晶振单片机系统里都有晶振,在单片机系统里晶振作用非常大,全称叫晶体振荡器,它结合单片机内部电路产生单片机所需的时钟频率,单片机晶振提供的时钟频率越高,那么单片机运行速度就越快,单片机的一切指令的执行都是建立在单片机晶振提供的时钟频率。通常一个系统共用一个晶振,便于各部分保持同步。有些通讯系统的基频和射频使用不同的晶振

9、,而通过电子调整频率的方法保持同步。STC89C52RC使用12MHz的晶体振荡器作为振荡源。2.3 行列式键盘的电路介绍图2-3 行列式键盘 STC89C52单片机的并行口P3接4*4矩阵键盘,以P3.0P3.3作行输入线,以P3.4P3.7作列输出线;P3口输出按键信息,在数码管上显示每个按键的行与列的序号。P3口的低4位控制行输入,高4位控制列输入当没有按键按下时,P3.0P3.3与P3.4P3.7之间开路。当有键闭合时,与闭合键相连的两条I/O口线之间短路。判断有无按键按下的方法是:第一步,置行线P3.0P3.3为输入状态,从列线P3.4P3.7输出低电平,读入行线数据,若某一行线为低

10、电平,则该行线上有键闭合。第二步,列线轮流输出低电平,从行线P3.0P3.3读入数据,若有某一行为低电平,则对应的列线上有键按下。当确定了是哪一个按键按下后,通过软件程序的设计,返回键盘扫描的键值,由PO口输出给数码管显示。2.4 共阳极数码管的介绍图2-4 共阳极数码管及位驱动这是一个四位八段的共阳极数码管,STC89C52的P0.0P0.7为段输出口,P2.0P2.3为位输出口。使用ULN2003的4个输出口作为位驱动,用来驱动8段数码管的DS1DS4。该数码管内部有8个发光二极管,公共端由8个发光二极管的阳极并接而成,正常显示时公共端接高电平(VCC),各发光二极管是否点亮取决于a-dp

11、各引脚上是否是低电平。LED数码管的外部有12个引脚,其中6,8,9,12脚为公共端也称位选端,其余8个引脚称为段选端,当要使某一位数码管显示某一数字(0-9中的一个)必须在这个数码管的段选端加上与数字显示数字对应的8位段选码(也称字形码),在位选端加上高电平即可。由于系统要显示的内容比较简单,显示量不多,所以选用数码管既方便又经济。2.5 发光二极管的介绍图2-5 发光二极管发光二极管简称LED灯,是一种将电能转化为光能的特殊二极管。发光二极管和普通的二极管一样,由一个PN结组成。具有单向导电性。当发光二极管工作在正向偏置状态下,且有一定大小的电流通过发光二极管时。它就会发光。光的颜色视发光

12、二极管的材料而定。发光二极管正向工作电压为1.5V左右,正向电流为5-15mA.80C51引脚输出低电平可直接驱动LED。第三章 软件设计3.1 设计流程图 STC89C52RC P2.0P2.3 P3.0P3.7 P0.0P0.7 P1.0P1.3 数码管显示行与列ULN20034*4键盘LED灯响应 图3-1 设计流程图单片机将从程序中键盘按键初始化对应得到的值通过数码管显示行与列的数值,通过LED灯显示0-F的值并伴随蜂鸣器的响声。 3.2 程序流程图 开始系统初始化扫描P3端口有按键按下Y确定键盘的行列值行列值正确YLED灯作用和数码管显示按键行列值结束图3.2 程序流程图本程序对系统

13、按键进行了初始化,通过对按键的扫描结果进行判断是否有按键按下,同时由数码管显示出当前按键行与列的数值,相应的LED灯作用;没有按键按下就保持原来的状态。第四章 调试4.1 硬件调试 4.1.1 电路电源调试 在通电前,一定要检查电源电压的幅值和极性,否则很容易造成集成块损坏。加电后检查各插件上引脚的电位,一般先检查VCC与GND之间电位,若在5V4.8V之间属正常。若有高压,联机仿真器调试时,将会损坏仿真器等,有时会使应用系统中的集成块发热损坏。 电路电源主要通过USB外部供电,输入+5V电压。提供单片机电源、数码管电源和ULN2003电源。将数字电源通电后测试各个数字芯片的电源电压,即可进行

14、电路电源的调试。 4.1.2 电路下载调试 正确连接电路,通过USB串口下载相关程序,测试数码管是否能正确显示数字,行列式键盘能否正确响应。4.2 软件调试第一步要根据硬件连接图和各器件的特性选择本次课程所需的电路,然后根据电路进行软件编程,实现课程的相关要求。第二步将单片机插入40P的紧缩座,插上12M的晶振以及USB数据线。第三步在电脑上根据相关资料提示找到STC的驱动程序,进行安装。第四步装下载软件加载程序,根据相关提示,选择单片机型号,找到软件编程程序,对软件编程程序首先要用KEIL软件进行编译生成hex的格式,然后进行下载。第五步在程序下载完成后,对开发板进行软件启动,程序就正式下载到单片机中了。第六步测试载入程序后,单片机系统能不能完成本

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 其它中学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号