收藏 分销(赏)

单片机优秀课程设计模拟键盘输入及显示系统标准设计.doc

上传人:快乐****生活 文档编号:2656538 上传时间:2024-06-03 格式:DOC 页数:18 大小:207.04KB 下载积分:8 金币
下载 相关 举报
单片机优秀课程设计模拟键盘输入及显示系统标准设计.doc_第1页
第1页 / 共18页
单片机优秀课程设计模拟键盘输入及显示系统标准设计.doc_第2页
第2页 / 共18页


点击查看更多>>
资源描述
课 程 设 计 说 明 书 课程名称:单片机应用基础 设计题目:模拟键盘输入及显示系统设计 专 业 :机械设计制造及其自动化 指导老师 : 设 计 者 : 学 号 : 目 录 第一章 课程设计目标和要求 …………………………………………………………………1 1.1课程设计目标和要求 ………………………………………………………………1 1.2课程设计预备知识 …………………………………………………………………1 1.3课题设计任务 ……………………………………………………………………2 第二章 总体设计 介绍对系统设计总体认识及处理方案,并对采取方案进行论证 第三章 硬件设计 介绍本系统所选择多种芯片功效、引脚、对应命令控制字格式等,画出系统工作 原理图及实现方法 第四章 软件设计 介绍本系统关键功效模块程序框图,和总体程序框图和设计思绪 第五章 系统调试 介绍系统调试过程和出现问题、处理方法 第六章 结束语 简述课程设计收获、体会和对本教学步骤意见和提议 参考文件 第一章、 课程设计目标和要求 1.1 课程设计目标和要求 《单片机应用基础》课程设计是学好本门课程又一关键实践性教学步骤,课程设计目标就是配合本课程教学和平时试验,以达成巩固消化课程内容,深入加强综合应用能力及单片机应用系统开发和设计能力训练,启发创新思维,使之含有独立单片机产品和科研基础技能,是以培养学生综合利用所学知识过程,是知识转化为能力和能力转化为工程素质关键阶段。 1.2课程设计预备知识 总来说,设计者要含有Mcs-51单片机相关硬件及软件知识,汇编语言编程或C语言编程相关知识,I\O接口相关知识,WAVE6000集成调试软件应用,能利用PROTEUS软件绘制系统工作原理,一定设计经验等等。此次设计所要掌握部分基础知识以下: (1)键盘工作原理 键盘是由若干按键组成开关矩阵,是嵌入式控制系统一个输入部件。键盘分两种:一个是独立式按键,另一个是矩阵式按键。图所表示。独立式按键用比较少,能够直接和单片机P1口某一位进行连接,经过判定这一位状态知道是否有键输入。在应用中通常需要数量较多按键,为了降低I/O口占用,通常将按键排列成矩阵形式,图所表示。在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是经过一个按键加以连接。这么,一个端口(如P1口)就能够组成4*4=16个按键,比之直接将端口线用于键盘多出了一倍,而且线数越多,区分越显著,比如再多加一条线就能够组成20键键盘,而直接用端口线则只能多出一键(9键)。由此可见,在需要键数比较多时,采取矩阵法来做键盘是合理。 独立式键盘和4*4矩阵式键盘 矩阵式结构键盘显然比直接法要复杂部分,识别也要复杂部分,上图中,行线经过电阻接正电源,并将列线所接单片机I/O口作为输出端,而行线所接I/O口则作为输入。这么,当按键没有按下时,全部输出端全部是高电平,代表无键按下。行线输出是低电平,一旦有键按下,则输入线就会被拉低,这么,经过读入输入线状态就可得悉是否有键按下 了。 (2)LED显示接口及原理 LED是发光二极管英文缩写,LED显示器是由发光二极管组成,它在单片机中应用很普遍。通常所说LED显示器由7个发光二极管组成,其排列形状图所表示。另外,显示器中还有一个圆点型发光二极管以dp表示,用于小数点表示。经过七个发光二极管亮暗不一样组合,能够显示多个数字、字母和其它符号。LED显示中发光二极管共有两种连接方法: 共阳极接法:把发光二极管阳极连在一起组成公共阳极。使用时公共阳极接+5V。这么阴极端输入低电平段发光二极管就导通点亮,而输入高电平则不亮。 共阴极接法:把发光二极管阴极连在一起组成公共阴极。使用时公共阴极接地。这么阳极端输入高电平段发光二极管就导通点亮,而输入低电平则不亮。 控制数码管驱动级控制电路有静态式和动态式两类: 静态驱动:它是指每个数码管全部要用一个译码器译码驱动。 动态驱动:它是所数码管使用一个专门译码驱动器,使各位数码管逐一轮番显示,它扫描速度极快,所以显示效果和静态驱动相同。 采取动态数码管显示,能够大幅度地降低硬件成本和电源功耗,因为某一时刻只有一个数码管工作,就是所谓分时显示,显示所需要硬件电路可分时复用。 共阴极 共阳极 符号和引脚 如表1为共阳极和共阴极代码表 表1 十六进制数字形代码表 字型 共阳极代码 共阴极代码 字型 共阳极代码 共阴极代码 0 C0H 3FH 9 90H 6FH 1 F9H 06H A 88H 77H 2 A4H 5BH B 83H 7CH 3 B0H 4FH C C6H 39H 4 99H 66H D A1H 5EH 5 92H 6DH E 86H 79H 6 82H 7DH F 8EH 71H 7 F8H 07H 灭 FFH 00H 8 80H 7FH (3) 键盘输入和LED显示 设计中经过键盘输入到单片机中,由程序控制找到输入点,计算键码,调用显示模块,把输入数值经过LED显示器显示出来。 (1) 判定键盘中有没有键按下: 将全部行线P1.0到P1.3置低电平,然后检测列线状态。只要有一列电平为低,则表示键盘中有键被按下,而且闭合键在低电平线和4根行线相交叉4个按键之中。若全部列线均为高电平,则键盘中无键按下。 (2) 判定闭合键所在位置: 在确定有键按下后,即可进入确定具体闭合键过程。其方法是:将行线置为低电平,即在置行线为低电平时,其它线为高电平。在确定某根行线位置为低电平后,再逐行检测各列线电平状态。若某列为低,则该列线和置为低电平行线交叉处按键就是闭合按键。检测方法是P1.4-P1.7输出全“1”,读取P1.0-P1.3状态,若P1.0-P1.3为全“0”,则无键闭合,不然有键闭合。 (3) 去除键抖动:当检测到有键按下后,延时一段时间再做下一步检测判定。 (4) 识别:当确定键按下时,经过软件计算键码找到相对位置数据调用显示模块把数字或字母显示出来或实现其它功效。 1.3课题设计任务 依据给定任务要求选择适宜单片机和其它电子元器件,进行系统硬件电路设计和软件编程,依据系统制作并调试系统电路板,使之实现任务要求。相关参数选择要求符合国家标准。具体设计内容以下: 1. 模拟键盘输入及显示模块。 2. 设计系统工作原理图,利用PROTEUS软件绘制系统工作原理图; 3. 系统控制程序设计、调试及实现: (1)依据要求,写出完整程序步骤图; (2)将设计程序输入、汇编,排除语法错误,生成*.OBJ文件; (3)按所设计原理图,在试验平台上连线,检验无误; (4)将目标文件传送到试验系统,实施并运行调试该程序,最终实现控制要求 4. 写出设计说明书,说明书格式见附录,3000字左右 第二章、模拟键盘输入及显示模块总体设计 1、明确任务 依据课题要求确定所要设计任务,分析后确定设计一个4x4矩阵键盘识别和7段数码管动态显示综合系统,控制4个7段数码管动态扫描显示4x4矩阵键盘上按下按键所对应值,第一次按下后,每按下一次键数码管上数字左移一位;另外设一个功效键,当按下此功效键后数码管上将显示设计者学号,先显示一段时间,然后显示6230一段时间,以后将显示器清零,等候下一次输入。 2、 硬件和软件功效划分 系统硬件配置和软件设计是紧密地联络在一起,且硬件和软件含有一定交换性,硬件完成部分功效,能够提升工作速度,但降低了系统柔性。若用软件替换一些硬件功效,可增加系统柔性,但降低系统工作速度。所以,总体设计时,应综合考虑,合理划分硬件和软件功效。经过分析后,确定4x4矩阵键盘用于单片机系统输入,4个数码管用于显示按键所对应值及显示设计者学号,而单片机则用于逻辑控制和程序实施,程序则是为实现所设计功效而编写。经过论证,该方案能够实现课程设计所要求任务及预期目标。 第三章、模拟键盘输入及显示模块硬件设计 1、系统扩展 试验仿真系统CPU是8031,所以,必需首先组成最小系统,即由8031、地址锁存器和程序存放器组成。 2、功效接口 所谓接口是CPU和外界连接部件,以实现CPU和外部设备最好耦合和匹配。包含键盘、显示、A/D转换、D/A转换和打印机等。依据课题要求选择外设,并选择适宜外围接口芯片。 3、 系统组成及统一编址 I/O端口是CPU和I/O设备直接通信地址。单片机系统对I/O端口是采取端口地址和存放器地址统一编址方法,即存放器映射方法。而编址技术又分线选法和译码法。设计者在设计硬件时,应自行编址。 4、 80C51单片机引脚图及引脚功效介绍 单片机40个引脚大致可分为4类:电源、时钟、控制和I/O引脚。80C51单片机引脚图以下: 4.⒈ 电源: ⑴ VCC - 芯片电源,接+5V; ⑵ VSS - 接地端; 4.⒉ 时钟: XTAL1、XTAL2 - 晶体振荡电路反相输入端和输出端。 4.⒊ 控制线:控制线共有4根, ⑴ ALE/PROG:地址锁存许可/片内EPROM编程脉冲 ① ALE功效:用来锁存P0口送出低8位地址 ② PROG功效:片内有EPROM芯片,在EPROM编程期间,此引脚输入编程脉冲。 ⑵ PSEN:外ROM读选通信号。 ⑶ RST/VPD:复位/备用电源。 ① RST(Reset)功效:复位信号输入端。 ② VPD功效:在Vcc掉电情况下,接备用电源。 ⑷ EA/Vpp:内外ROM选择/片内EPROM编程电源。 ① EA功效:内外ROM选择端。 ② Vpp功效:片内有EPROM芯片,在EPROM编程期间,施加编程电源Vpp。 4.⒋ I/O线 80C51共有4个8位并行I/O端口:P0、P1、P2、P3口,共32个引脚。 另外,P3口还含有第二功效,用于特殊信号输入输出和控制信号(属控制总线)。 5、 键盘设计以下: 80C51单片机并行口P2接4×4矩阵键盘,以P1.0-P1.3接键盘列线,以P1.4-P1.7作行线;实际电路图连接以下图所表示。 6、 4位7段码数码管连接 P0口输出按键信息,即段码,和数码管 a、b、c、d、e、f、g、dp相连,并接上+5v电源和上拉电阻;P1口低四位作为位控,和数码管1、2、3、4口相连,在数码管上显示每个按键“0-E”键值。 7、 最终设计系统工作原理图以下: 第四章、软件设计 一个优异系统软件应含有下列特点: ①软件结构清楚、简捷、步骤合理。 ②各功效程序实现模块化、子程序化。这么,既便于调试、链接,又方便移植、修改。 ③程序存放区、数据存放区分配合理。 ④运行状态实现标志化管理。各个功效程序运行状态、运行结果和运行要求全部设置状态标志(通常见位寻址区位)方便查询,程序转移、运行、控制全部能够经过状态标志条件来控制。 ⑤实现全方面软件抗干扰设计。(因为条件有限,课程设计中不考虑。) 软件设计通常步骤以下: 1、 系统定义 系统定义是在软件设计前,把软件负担任务明确出来。合理定义和分配存放空间、定义标志位。 资源分配关键工作是RAM资源分配。片外RAM容量要比片内RAM大,通常见来存放批量大数据,如采样数据系列。关键考虑片内RAM分配。系统上电复位时,自动定义0区为工作寄存器,1区为堆栈,并向2区、3区延伸。假如系统前台程序要用1区、2区作为工作寄存器,就应将堆栈空间重新计划,常将堆栈安放在片内RAM高端,如60H~7FH。 在工作寄存器8个单元中,R0和R1含有指针功效,是编程关键角色,应充足发挥其作用,尽可能避免用来做其它事情。 20H~2FH这16个字节含有位寻址功效,用来存放多种软件标志、逻辑变量、位输入信息、位输出信息副本、状态变量、逻辑运算中间结果等。当这些项目全部安排好后,保留一两个字节备用,剩下单元才可改作其它用途。 30H~7FH为通常通用寄存器,只能存入整字节信息。通常见来存放多种参数、指针、中间结果,或用作数据缓冲区。 RAM资源计划好后,应列出一张RAM资源具体分配清单,作为编程依据。为了增加可读性,便于修改,通常对分配存放单元取名。如保留目前时间时、分、秒取HOUR、MINI、SEC,编程时用变量名,编译时只需在前面加HOUR EQU 24H即可(20H为分配给小时存放单元地址)。 2、 软件结构设计 软件设计有两种方法:一个是自上而下,逐步细化;另一个是自下而上,先设计出每一个具体模块(子程序),然后再慢慢扩大,最终组成一个系统。此次软件设计采取两种方法结合方法,主程序采取自上而下方法,将它分成若干个功效相对独立较小程序模块。然后再采取自下而上方法,设计一个模块,调试一个模块,加入主程序调试;再进行下一个模块设计和调试。设计思绪以下: 先运行主程序,首先是部分变量定义及初始化,然后定义四字节显示存放区并将其初始化,接着实施键盘子程序,键盘子程序第一步是实施键盘查询程序,此程序为系统待机状态,即为系统不停循环实施键盘检验程序,来检验是否有键按下,在每一次键盘检验时,全部要实施一次显示子程序,以确保数码管处于亮状态,假如有键按下,则计算键码并将键码存到显示存放区中,以后返回到键盘子程序。 3、 绘制程序步骤框图 3.1主程序步骤框图以下 开 始 各变量及显示缓冲区初始化 数码管显示 键盘检验,是否有键按下? NO 实施显示学号程序 读入键值 YES 是否等于15? YES NO 缓存单元依次右移一位,最终一位存入此次键值 3.2键盘检验子程序步骤框图 开 始 初始化地址参数 载入行扫描指针 列扫描信号移位 读入行信号 计算键值 查得键码表 该列有值输入? 等候按键释放 4列扫描完了? 返 回 3.3、编写程序 在确保程序框图正确性前提下,才能编写程序。在编程时必需注意以下几点: ①一定要严格依据框图编程。 ②一定要写注释。 ③经过编译后,只表明语法没错,并不表明逻辑正确,一定要用不一样数据对模块进行测试。完全符合预定结果,方可确定经过。 ④将该模块加到主控模块进行测试,假如和预定结果不符,必需查找原因,进行修改、调试。 ⑤必需注意随时保留调试经过副本。方便当新程序出现故障时,随时可返回前面正确点重新开始。 4、 编写设计说明书 设计说明书格式见附录。 因为设计时间紧迫,要求学生尽可能不要在完成全部设计后再编写设计说明书。而应在设计过程中逐步完成。一开始不可能设计出满意主程序框图。所以,总体设计部分在完成全部设计任务后再写。而硬件部分和软件部分能够在设计过程同时完成。 第五章、系统调试和仿真 编写程序后,将程序载入WAVE6000集成调试软件进行调试,结果正常;利用PROTEUS软件绘制系统工作原理后,将程序载入,然后进行模拟仿真,系统一起运行正常:按下键后系统能够正常显示,输入多位数值检测能够实现移位;而且当按下16号键时,系统显示学号正常,这证实此次设计结果达成了预期结果。 第六章、结束语 课程设计是培养学生利用综合利用所学知识,发觉、提出、分析和处理实际问题,锻炼实际能力关键步骤,是对我们实际工作能力具体训练和考察过程。伴随科学技术发展日新月异,单片机已经成为当今计算机应用中空前活跃领域,在生活中无处于。作为机电专业学生来说,单片机开发技术十分关键。 我做题目是基于80C51单片机4x4键盘输入显示,对于我们这些实践中新手来说,这是一次考验。怎样才能找到课堂所学和实践利用最好结合点。这全部是我们要考虑和努力。在此次课程设计中,经过老师精心指导和在网上找资料,关键掌握了数码管显示编程,数据输出编程方法。调试也是此次关键,这其中最关键就是软件调试了,这要求我们对每个模块在整个程序中作用了如指掌。经过此次课程设计,我发觉我对程序掌握还不够 ,尤其是单片机汇编语言掌握不牢靠。这次课程设计使我知道实践关键性,只有理论知识远远不够,只有把所学理论知识和实践相结合才能算是掌握了所学知识。伴随就业形势日趋严峻,大学生动手能力、实际能力和综合素质越来越受到学校和用人单位重视,所以以后我们要愈加重视实践,提升自己动手能力。 此次设计单片机即使比较简易,不过我收获颇多。经过此次课程设计,使我学会了数码管显示数字原理,学会了怎样使用键盘来取得输入数据,也提升了我编写汇编语言能力,同时也提升了我们自己动手处理问题能力。另外,这次单片机设计中使我对单片机也有了更高层次了解。经过此次设计,自己能力得到了提升,我会认真总结设计中经验教训,为以后学习做好铺垫。 参考文件 [1] 李广第主编.单片机基础.第一版.北京航空航天大学出版社.北京 [2] 王修才主编.单片机接口技术.第一版.复旦大学出版社.上海 [3] 周志德主编.单片机原理及应用.第一版.高等教育出版社 [4] 李运华主编.机电控制.第一版.北京航空航天大学出版社 [5] 秦曾煌主编.电工学 上册:电工技术.第五版.高等教育出版社
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服