收藏 分销(赏)

单片机键盘显示课程设计报告.doc

上传人:仙人****88 文档编号:11722036 上传时间:2025-08-09 格式:DOC 页数:16 大小:390.39KB 下载积分:10 金币
下载 相关 举报
单片机键盘显示课程设计报告.doc_第1页
第1页 / 共16页
单片机键盘显示课程设计报告.doc_第2页
第2页 / 共16页


点击查看更多>>
资源描述
<<单片机原理及应用课程设计报告>> 题 目:键盘按键识别及LED数码显示 学 院: 工程学院 专 业: 自动化 班 级: 1101班 姓 名: 指导教师: 2013年12月19日 目 录 1课程设计的任务与要求....................................1 2课程设计总体分析介绍....................................1 3各部分工作电路的详细介绍................................3 参考书目................................................11 附录....................................................12 第1节 课程设计的任务与要求 1.1 课程设计题目与要求 1.课程设计题目:键盘按键识别及LED数码显示 2.课程设计要求:(1)画出组成部分电路图 (2)画出程序流程图,设计程序并通过检查 (3)用语言表达工作原理,连接方式及用途等 1.2 课程设计目的及内容 1.目的: 按键是单片机常用的输入设备,操作人员可以通过按键输入指令和数据。在使用按键是单片机要正确识别按键是否被按下和按下的次数等状态,才能正确执行相关操作。本实验要实现对按键状态的正确检测并显示相关内容。 2.内容:(1)根据独立式键盘的特点,进行键盘控制系统的整体研究与设计。 (2)LED实时显示按键信息(显示按键号)。 (3)通过编写程序实现按键信息的提取和显示。 第2节 课程设计系统总体分析介绍 2.1 显示部分 本设计显示部分是利用动态显示实现的,LED数码管采用共阳极接法。LED数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划"a,b,c,d,e,f,g,dp"的同名端连在一起,另外为每个数码管的公共极三极管增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,单片机对位选通COM端电路的控制,所以数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。 在轮流显示过程中,每位数码管的点亮时间为1~2ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O端口,而且功耗更低。 2.2 键盘模块设计 本设计键盘部分我是利用4按键的独立式键盘与8155芯片PC口直接相连实现的,即键盘由8155的PC口扩展出来的。设计电路时,将4个按键与和8155PC口连接,按下按键通过8155芯片传送给CPU,CPU存运算处理键盘信息由8位LED显示屏显示出来。键盘是计算机系统中最常用的输入设备对于一些需要人为干预的单片机应用系统,键盘成为人机交互联系的必要手段。 1.按键的分类 按键按照结构原理可分为两类:一类是触点式开关按键,如机械开关、导电橡胶开关等;另一类是无触点式开关按键、磁感应按键等。但单片机应用系统中大多采用机械式。 2.键输入原理 对于一个键盘或一组按键,单片机系统中总有一个接口电路与CPU相连。CPU可以采用查询或中断方式了解有无按键输入并检查是哪一个键按下,将该键号送入累加器ACC,然后通过跳转指令转入执行该键的功能程序,执行完后再返回主程序。 3.键抖动和消抖方法 机械式按键在按下或释放时,由于弹性作用也影响,通常伴随较短时间的触点机械抖动,抖动的时间一般是5-10ms,这种现象称为键抖动。在理想和实际状态下按键产生的电压波形如下所示。 理想按键电压波形 实际按键电压波形 键抖动使按键一次按下或释放被错误地认为是多次操作,这种情况是不允许出现的,所以要采用一些方法来消除抖动。一是硬件方法:可采用在键输出端加R-S触发器(双稳态触发器)或单稳态触发器构成去抖动电路;二是软件方法:在按键的按下和释放时采用软件延时的方法来消除。 4.键码识别 常用两种方法:一是用专用硬件电路来识别,把这种键盘成为编码键盘;另一种方法是利用软件方法来识别,把这种键盘成为非编码键盘。键码的识别可采用随机扫描、定时扫描,或中断扫描方式来完成。 2.3电路设计总框图 P0口 LED显示电路 PA口 AD口 8155 PB口 PC口 89C51 根据上述工作原理,我画出该系统的总框图,设计总框图如下: 三极管 键盘 电路设计总框图 第3节 各部分电路详细的介绍 3.1单片机显示电路 1. 工作原理:显示部分的设计我是利用LED数码管动态显示实现的,LED数码管采用共阳极接法。LED数码管与8155芯片PA口、PB口直接连接。将键盘输入信息通过芯片8155送入到89C51中,对信息进行运算处理,将处理后的数据输入到8155中,再分别通过PA口段选信号、PB口位选信号传送给LED,从而控制LED发亮,并显示设置的信息。 2. 芯片介绍 (1)8155芯片 a. 8155的主要引脚功能如下: ①地址/数据线AD0~AD7:地址和数据复用线,8位; ②CE:片选线,低电平有效。 ③RD和WR:读/写线,控制8155的读、写操作。 ④IO/M:RAM或I/O口的选择线。 ⑤ALE:地址锁存线,高电平有效。 ⑥TMRIN:定时/计数器的脉冲输入端。 ⑦TMROUT:定时/计数器的输出信号端。 ⑧RESET:复位线,通常与单片机的复位端相连。 ⑨PA0~PA7、PB0~PB7:为A、B口输入/输出线; PC0~PC5:为C端口线,既可与外设传送数据,也可以作为A、B口的控制联络线。 PA1 PA2 PA3 PA4 PA5 PA6 PA7 PA0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 PB0 PC1 PC2 PC3 PC4 PC5 PC0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 AD0 TIMEIN TIMEOUT ALE IO/M RESET RD WR CE 8155引脚封装图及功能如下图 8155 三态地址/数据复用线 端口A,I/O线 外设 CPU 地址锁存线 外设 RAM及IO选择 端口B,I/O线 复位端 读选通信号线 端口C,I/O线 写选通信号线 片选线 定时/计数器输出端 b. 8155与MCS-51单片机的连接 由于8155的多数信号与MCS-51单片机兼容,所以8155与MCS-51单片机的连接比较简单。因为8155内部包括了地址锁存器,所以它的地址复用线AD7-AD0可以与MCS-51P0口线直接相连,不需加锁存器。 c. 8155作为拓展I/O口使用 8155作为拓展I/O口使用时,I/O引脚必须置高电平。通过8155的命令状态字寄存器设定命令来选择8155的I/O口。8155状态字寄存器是两个寄存器,分别存放命令字和状态字。 命令字格式如下: D7 D6 D5 D4 D3 D2 D1 D0 A口方式 B口方式 0=输入 1=输出 00 01 10 11 C 口 方 式 A、 B口基本I/O口,C口输入 A口选通I/O,B口基本I/O口, C口做联络信号和输出 A、 B选通I/O口,C联络信号 A、B基本I/O口,C口输出 A口中断 0=中断禁止 B口中断 1=中断允许 定时器方式 00 01 10 11 00=无操作 01=停止计数 10=计满后停止 11=开始计数 状态字格式如下: X D6 D5 D4 D3 D2 D1 D0 INTR A中断请求 BFA A口缓冲器满 INTEA A口中断允许 INTRA B口中断请求 BFB B口缓冲器满 TNTEB C口中断请求 TIMER 1=计数器满回0或定 时器中断 0=读出状态字或复位 (2)LED显示器与接口 LED显示器:由8个发光二级管组成,用来显示数字和字符,也称数码管。 ①数码管结构 数码管的引脚和笔段排列如下图(a)所示 数码管的8个发光二极管连接方法有两种。一是共阳极接法,如图(b)所示;另一种是共阴极接法,如下图(b)所示。 ②数码管驱动电路 LED数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,显示出需要的数字,因此LED数码管的驱动方式可以分为静态式和动态式两类。在这个设计中我采用动态驱动的方法。 3.动态显示电路图 PA口 ... AD口 8155 PB口 8个三极管 PC口 连接方式及原理:本设计是采用动态显示接口原理实现的,LED采用共阳极结构。LED数码管的段选线并联在一起与8155芯片的PA口连接;数码管的位选线(公共端)经过8个三极管与8155芯片的PB口连接。将键盘输入信息通过芯片8155送入到89C51中,对信息进行运算处理,将处理后的数据输入到8155中,再分别通过PA口段选信号、PB口位选信号传送给LED,从而控制LED发亮,并显示设置的信息。 4.显示电路程序及流程图 (1)流程图如下: Y N 显示子程序入口 动态显示初始化 10H→R0;7FH→R3 8155初始化,A、B置成输出方式 位选码送8155B口 取待显示数据,查表转换相应的字形码从8155B口输出 延时1ms 显示缓冲区指针加1 8位显示完? 显示下一位 返回 (2)显示程序如下: 显示缓冲区60H~67H MOV DPTR,#0200H MOV A,#03H MOVX @DPTR,A MOV R0,#60H MOV R3,#0FEH MOV R7,#08H INC DPTR LOOP:MOV A ,@R0 ADD A,#24H MOVC A,@A+PC MOVX @DPTR,A MOV A,R3 INC DPTR MOVX @DPTR,A LCALL DELAY RL A MOV R3,A DEC DPL DEC DPL INC R0 DJNZ R7,LOOP RET DELAY:MOV R4,#0FH DEL1:MOV R6,#0FH DJNZ R6,$ DJNZ R4,DEL1 RET TAB:DB 0C0H 0F9H 0A4H 0B0H 3.2键盘接口电路 1. 连接方式及工作原理:我设计的是4只按键的独立式键盘,该键盘是由芯片8155的PC口扩展出来的。每只按键连接一个I/O线,每个按键相互独立。当某一按键按下时,它对应的I/O线的电平变成低电平,产生的按键信号送给CPU存储计算,通过逻辑运算,通过8155芯片PA、PB口送至LED显示按键信息。芯片8155的信息参照前面的介绍。键盘电路图如下: KEY3 KEY0 KEY1 KEY2 3. 键盘电路程序及流程图 KEY (1)流程图如下: 有按键闭合吗 延时调用子程序 N 二次调用延时子程序,延时20ms Y 有按键闭合吗 N Y 判别闭键号 有按键释放吗 N 键号送累加器A Y 返回 RET KEY0:MOV R7,#08H MOV R0,#60H MOV A,#00H DONE0:MOV @R0,A INC R0 DJNZ R7,DONE0 AJMP LOOP KEY1:MOV R7,#08H MOV R0,#60H MOV A,#01H DONE1:MOV @R0,A INC R0 DJNZ R7,DONE1 AJMP LOOP KEY2:MOV R7,#08H MOV R0,#60H MOV A,#02H DONE2:MOV @R0,A INC R0 DJNZ R7,DONE2 AJMP LOOP KEY3:MOV R7,#08H MOV R0,#60H MOV A,#03H DONE3:MOV @R0,A INC R0 DJNZ R7,DONE3 AJMP LOOP (2) 键盘程序如下: MOV DPTR,#0200H MOV A,#03H MOVX @DPTR,A INC DPTR INC DPTR INC DPTR MOVX A,@DPTR CPL A ANL A,#0FH JZ LOOP LCALL DEL MOVX A,@DPTR CPL A ANL A,#0FH JZ LOOP LOOP2:MOVX A,@DPTR CPL A ANL A,#0FH JNZ LOOP AJMP LOOP3 LOOP1:MOV 30H,A AJMP LOOP2 LOOP3:MOV A,30H JB ACC.0,KEY0 JB ACC.1,KEY1 JB ACC.2,KEY2 JB ACC.3,KEY3 LOOP:RET DEL:MOV R6,#0FH DJNZ R6,$ DJNZ R4,DEL 4.键盘实现的功能: 按下KEY0键:LED屏幕全部显示“0” 按下KEY1键:LED屏幕全部显示“1” 按下KEY2键:LED屏幕全部显示“2” 按下KEY3键:LED屏幕全部显示“3” 3.3 电路整体框图 参下页附录 3.4 电路总工作过程: 当某一按键按下时,它对应的I/O线的电平变成低电平,产生的按键信号由PC口通过芯片8155送入到89C51中,对信息进行逻辑运算处理,将处理后的数据输入到8155中,再分别通过PA口段选信号、PB口位选信号传送给LED,从而控制LED发亮,并显示设置的按键信息。 3.5 总结及心得 首先想说:沈老师,谢谢您!这是一次不同的设计经历,在为期一周的单片机课程设计中,我从刚开始对设计电路图和程序一窍不通到现在能完全掌握电路工作原理并能设计定义程序,和您对我们严厉的要求以及不耐其烦地指导密不可分。不光理论知识得到了强化,实践动手能力也被大大增强了,此外我对课程设计的流程也更熟稔了。其实,刚拿到这个设计时我很苦恼感觉到无从下手,从内心来说不愿意去研究,但正是您的鼓励和严格的要求让我拥有动力去学习研究,这个中的收获甚至无法用语言形容。当听到您说我编写的程序是正确的时候我简直欣喜若狂,这让我不仅收获了知识,亦让我更加自信。 此次课程设计,让我对单片机键盘及LED显示部分有了更深入细致的了解。同时我也深深发觉到,仅懂得理论、纸上谈兵是远不够的,我还需要进行更多的实践,因为当理论运用到实际中往往会出现很多的问题与偏差。所以这次的实践训练是非常合时并且有意义的,它使我懂得了只有不断实践才能真正掌握知识。 最后感谢指导教师沈老师的细心教导,谢谢! 参考书目: [1] 李英顺,沈怀阳,李桂君,《单片机原理及应用》,中国水利水电出版社,北京,2010 年 [2] 李群芳,张士军,黄建等,《单片微型计算机与接口技术》,电子工业出版社,北京, 2009年 附录: 12
展开阅读全文

开通  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 

客服