完整版单片机毕业课程设计44矩阵式键盘识别显示电路的设计.docx

上传人:b****5 文档编号:5334358 上传时间:2022-12-15 格式:DOCX 页数:15 大小:200.99KB
下载 相关 举报
完整版单片机毕业课程设计44矩阵式键盘识别显示电路的设计.docx_第1页
第1页 / 共15页
完整版单片机毕业课程设计44矩阵式键盘识别显示电路的设计.docx_第2页
第2页 / 共15页
完整版单片机毕业课程设计44矩阵式键盘识别显示电路的设计.docx_第3页
第3页 / 共15页
完整版单片机毕业课程设计44矩阵式键盘识别显示电路的设计.docx_第4页
第4页 / 共15页
完整版单片机毕业课程设计44矩阵式键盘识别显示电路的设计.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

完整版单片机毕业课程设计44矩阵式键盘识别显示电路的设计.docx

《完整版单片机毕业课程设计44矩阵式键盘识别显示电路的设计.docx》由会员分享,可在线阅读,更多相关《完整版单片机毕业课程设计44矩阵式键盘识别显示电路的设计.docx(15页珍藏版)》请在冰豆网上搜索。

完整版单片机毕业课程设计44矩阵式键盘识别显示电路的设计.docx

完整版单片机毕业课程设计44矩阵式键盘识别显示电路的设计

 

数理与信息工程学院

《单片机原理及应用》期末课程设计

题目:

4×4矩阵式键盘识别显示电路的设计

专业:

电子信息工程

班级:

电信061班

姓名:

姜铮铮

学号:

指导老师:

余水宝

成绩:

(2008.12)

 

第1节引言…………………………………………………………………………2

1.14*4矩阵式键盘系统概述…………………………………………………2

1.2本设计任务和主要内容……………………………………………………3

第2节系统主要硬件电路设计……………………………………………………4

2.1单片机控制系统原理………………………………………………………4

2.2单片机主机系统电路………………………………………………………5

2.2.1时钟电路……………………………………………………………4

2.2.2复位电路……………………………………………………………5

2.2.3矩阵式键盘电路……………………………………………………5

2.3译码显示电路………………………………………………………………6

第3节系统软件设计………………………………………………………………11

3.1软件流程图…………………………………………………………………8

3.2系统程序设计………………………………………………………………9

 

第4节结束语…………………………………………………………………………12

参考文献…………………………………………………………………………13

4*4矩阵式键盘识别显示电路的设计

数理与信息工程学院电信061姜铮铮

指导教师:

余水宝

第一节引言

矩阵式键盘乃是当今使用最为广泛的键盘模式,该系统以N个端口连接控制N*N个按键,即时在LED数码管上。

单片机控制的据这是键盘显示系统,该系统可以对不同的按键进行实时显示,其核心是单片机和键盘矩阵电路部分,主要对按键与显示电路的关系、矩阵式技术及设备系统的硬件、软件等各个部分进行实现。

4*4矩阵式键盘采用AT89S51单片机为核心,主要由矩阵式键盘电路、译码电路、显示电路等组成,软件选用汇编语言编程。

单片机将检测到的按键信号转换成数字量,显示于LED显示器上。

该系统灵活性强,易于操作,可靠性高,将会有更广阔的开发前景。

1.14*4矩阵式键盘识别显示系统概述

矩阵式键盘模式以N个端口连接控制N*N个按键,实时在LED数码管上显示按键信息。

显示按键信息,既降低了成本,又提高了精确度,省下了很多的IO端口为他用,相反,独立式按键虽编程简单,但占用IO口资源较多,不适合在按键较多的场合应用。

并且在实际应用中经常要用到输入数字、字母、符号等操作功能,如电子密码锁、电话机键盘、计算器按键等,至少都需要12到16个按键,在这种情况下如果用独立式按键的话,显然太浪费IO端口资源,为了解决这一问题,我们使用矩阵式键盘。

矩阵式键盘简介:

矩阵式键盘又称行列键盘,它是用N条IO线作为行线,N条IO线作为列线组成的键盘。

在行线和列线的每个交叉点上设置一个按键。

这样键盘上按键的个数就为N*N个。

这种行列式键盘结构能有效地提高单片机系统中IO口的利用率。

最常见的键盘布局如图1-1所示。

一般由16个按键组成,在单片机中正好可以用一个P口实现16个按键功能,这也是在单片机系统中最常用的形式,本设计就采用这个键盘模式。

图1-1键盘布局

随着21世纪的到来,资源危机接踵而至。

快速席卷整个国家,这一状况还将随着时间的推移和社会的发展而更加严重。

国家提倡资源节约型社会,资源危机已成为全球性的突出问题,利用科技手段缓解这一危机,将是人类主要的出路。

电子信息行业是人类社会的高科技行业之一,是设施现代化的基础,也是人类通往科技巅峰的直通路。

电子行业的发展从长远来看很重要,但最主要的还是科技问题。

国家设施的现代化的根本出路在于全面提高科技水平,现代的社会经营模式由传统模式向现代化、高科技模式转变,由粗放型向集约型方向转变,必须要求科技有一个大的发展,进行一次新的技术革命。

矩阵式键盘提高效率进行按键操作管理有效方法,它可以提高系统准确性,有利于资源的节约,降低对操作者本身素质的要求。

是它能准确、实时、高效地显示按键信息,以提高工作效率和资源利用率。

随着计算机技术和电子科技的迅猛发展,计算机和电子产品的价格日益降

低,可靠性日益提高。

本文旨在设计一套能对按键信息进行自动实时显示的系

统。

1.2本设计任务和主要内容

本论文主要研究单片机控制的键盘识别显示系统,分别对按键信息和显示电路以及软、硬件各个部分进行研究。

主要内容如下:

①根据矩阵式键盘的特点,进行键盘控制系统的整体研究与设计;

②LED实时显示按键信息;

③采用软件编程的方法实现按键信息的提取和显示。

第2节系统主要硬件电路设计

2.1单片机控制系统原理

图2-1单片机控制系统原理框图

2.2单片机主机系统电路

AT89C51单片机是51系列单片机的一个成员,是8051单片机的简化版。

内部自带2K字节可编程FLASH存储器的低电压、高性能COMS八位微处理器,与IntelMCS-51系列单片机的指令和输出管脚相兼容。

由于将多功能八位CPU和闪速存储器结合在单个芯片中,因此,AT89C2051构成的单片机系统是具有结构最简单、造价最低廉、效率最高的微控制系统,省去了外部的RAM、ROM和接口器件,减少了硬件开销,节省了成本,提高了系统的性价比。

图2-2单片机主机系统图

2.2.1时钟电路

时钟信号用来提供单片机片内各种微操作的时间基准,时钟信号通常用两种电路形式得到:

内部振荡和外部振荡。

MCS-51单片机内部有一个用于构成振荡器的高增益反向放大器,引脚XTALl和XTAL2分别是此放大电器的输入端和输出端,由于采用内部方式时,电路简单,所得的时钟信号比较稳定,实际使用中常采用这种方式,如图2-2所示在其外接晶体振荡器(简称晶振)或陶瓷谐振器就构成了内部振荡方式,片内高增益反向放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起可构成一个自激振荡器并产生振荡时钟脉冲。

图2-2中外接晶体以及电容C2和C3构成并联谐振电路,它们起稳定振荡频

率、快速起振的作用,其值为30pF左右,晶振频率选11.0592MHz。

2.2.2复位电路

为了初始化单片机内部的某些特殊功能寄存器,必须利用复位电路,复位

后可使CPU及系统各部件处于确定的初始状态,并从初始状态开始正常工作。

单片机的复位是靠外电路来实现的,在正常运行情况下,只要RST引脚上出现两

个机器周期时间以上的高电平,即可引起系统复位,但如果RST引脚上持续为高电平,单片机就处于循环复位状态。

复位后系统将输入输出(10)端口寄存器置为FFH,堆栈指针SP置为07H,SBUF内置为不定值,其余的寄存器全部清0,内部RAM的状态不受复位的影响,在系统上电时RAM的内容是不定的。

复位操作有两种情况,即上电复位和手动(开关)复位。

本系统采用上电复位方式。

图2-2中R1和Cl组成上电复位电路,其值R取为1KΩ,C取为10pF。

2.2.3矩阵式键盘电路

AT89C51单片机的并行口P1接4×4矩阵键盘,以P1.0-P1.3作输入线,以P1.4-P1.7作输出线;P1口输出按键信息,在数码管上显示每个按键的“0-F”序号。

实际电路图连接如图2-4所示。

图2-3矩阵式键盘电路

2.3译码显示电路

译码电路中常用的显示器有LED(数码管)和LCD(液晶显示器)。

这两种显示器都具有线路简单、耗电少、成本低、寿命长等优点。

本系统输出结果选用1个LED显示。

数码管有共阴共阳之分,本系统采用8段共阴型LED,其原理图如图2-5所示。

数码管内部有8个发光二极管,公共端由8个发光二极管的阴极并接而成,正常显示时公共端接低电平(GND),各发光二极管是否点亮取决于a-dp各引脚上是否是高电平。

LED数码管的外形结构如图2-4,外部有10个引脚,其中3,8脚为公共端也称位选端,其余8个引脚称为段选端,当要使某一位数码管显示某一数字((0-9中的一个)必须在这个数码管的段选端加上与数字显示数字对应的8位段选码(也称字形码),在位选端加上低电平即可。

由于系统要显示的内容比较简单,显示量不多,所以选用数码管既方便又经济。

LED有共阴极和共阳极两种。

如图3-1所示。

二极管的阴极连接在一起,通常此公共阴极接地,而共阳极则将发光二极管的阳极连接在一起,接入+5V的电压。

一位显示器由8个发光二极管组成,其中7个发光二极管构成字型“8”的各个笔划(段)a~g,另一个小数点为dp发光二极管。

当在某段发光二极管施加一定的正向电压时,该段笔划即亮;不加电压则暗。

符号和引脚共阳极共阴极

图2-4LED数码管结构

图2-5译码显示电路

当无按键闭合时,P1.0--P1.3与P1.4--P1.7之间开路。

当有键闭合时,与闭合键相连的两条IO口线之间短路。

判断有无按键按下的方法是:

第一步,置列线P1.4--P1.7为输入状态,从行线P1.0--P1.3输出低电平,读入列线数据,若某一列线为低电平,则该列线上有键闭合。

第二步,行线轮流输出低电平,从列线P1.4--P1.7读入数据,若有某一列为低电平,则对应行线上有键按下。

综合一二两步的结果,可确定按键编号。

但是键闭合一次只能进行一次键功能操作,因此须等到按键释放后,再进行键功能操作,否则按一次键,有可能会连续多次进行同样的键操作。

由于本显示电路功能简单,为使编程简单,采用直接输出模式,即把P0.0-P0.7端口用8芯排线连接到数码显示模块区域中的a-h端口上,要求:

P0.0对应着a,P0.1对应着b,……,P0.7对应着h。

表2-1LED显示段码

字型

共阳极段

共阴极段

字型

共阳极段

共阴极段

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

84H

71H

7

F8H

07H

空白

FFH

00H

8

80H

7FH

P

8CH

73H

第3节系统的软件设计

3.1软件流程图

开始

键盘值

初始化

 

读列线是否有键按下

N

延时

去抖动

Y

 

读列是否有

按键按下

N

根据当前状态

识别按键

Y

显示

键值

图3-1软件设计流程图

3.2系统程序设计

KEYBUFEQU30H

ORG00H

START:

MOVKEYBUF,#2

WAIT:

MOVP3,#0FFH

CLRP3.4

MOVA,P3

ANLA,#0FH

XRLA,#0FH

JZNOKEY1

LCALLDELY10MS

MOVA,P3

ANLA,#0FH

XRLA,#0FH

JZNOKEY1

MOVA,P3

ANLA,#0FH

CJNEA,#0EH,NK1

MOVKEYBUF,#0

LJMPDK1

NK1:

CJNEA,#0DH,NK2

MOVKEYBUF,#1

LJMPDK1

NK2:

CJNEA,#0BH,NK3

MOVKEYBUF,#2

LJMPDK1

NK3:

CJNEA,#07H,NK4

MOVKEYBUF,#3

LJMPDK1

NK4:

NOP

DK1:

MOVA,KEYBUF

MOVDPTR,#TABLE

MOVC+DPTR

MOVP0,A

DK1A:

MOVA,P3

ANLA,#0FH

XRLA,#0FH

JNZDK1A

NOKEY1:

MOVP3,#0FFH

CLRP3.5

MOVA,P3

ANLA,#0FH

XRLA,#0FH

JZNOKEY2

LCALLDELY10MS

MOVA,P3

ANLA,#0FH

XRLA,#0FH

JZNOKEY2

MOVA,P3

ANLA,#0FH

CJNEA,#0EH,NK5

MOVKEYBUF,#4

LJMPDK2

NK5:

CJNEA,#0DH,NK6

MOVKEYBUF,#5

LJMPDK2

NK6:

CJNEA,#0BH,NK7

MOVKEYBUF,#6

LJMPDK2

NK7:

CJNEA,#07H,NK8

MOVKEYBUF,#7

LJMPDK2

NK8:

NOP

DK2:

MOVA,KEYBUF

MOVDPTR,#TABLE

MOVC+DPTR

MOVP0,A

DK2A:

MOVA,P3

ANLA,#0FH

XRLA,#0FH

JNZDK2A

NOKEY2:

MOVP3,#0FFH

CLRP3.6

MOVA,P3

ANLA,#0FH

XRLA,#0FH

JZNOKEY3

LCALLDELY10MS

MOVA,P3

ANLA,#0FH

XRLA,#0FH

JZNOKEY3

MOVA,P3

ANLA,#0FH

CJNEA,#0EH,NK9

MOVKEYBUF,#8

LJMPDK3

NK9:

CJNEA,#0DH,NK10

MOVKEYBUF,#9

LJMPDK3

NK10:

CJNEA,#0BH,NK11

MOVKEYBUF,#10

LJMPDK3

NK11:

CJNEA,#07H,NK12

MOVKEYBUF,#11

LJMPDK3

NK12:

NOP

DK3:

MOVA,KEYBUF

MOVDPTR,#TABLE

MOVC+DPTR

MOVP0,A

DK3A:

MOVA,P3

ANLA,#0FH

XRLA,#0FH

JNZDK3A

NOKEY3:

MOVP3,#0FFH

CLRP3.7

MOVA,P3

ANLA,#0FH

XRLA,#0FH

JZNOKEY4

LCALLDELY10MS

MOVA,P3

ANLA,#0FH

XRLA,#0FH

JZNOKEY4

MOVA,P3

ANLA,#0FH

CJNEA,#0EH,NK13

MOVKEYBUF,#12

LJMPDK4

NK13:

CJNEA,#0DH,NK14

MOVKEYBUF,#13

LJMPDK4

NK14:

CJNEA,#0BH,NK15

MOVKEYBUF,#14

LJMPDK4

NK15:

CJNEA,#07H,NK16

MOVKEYBUF,#15

LJMPDK4

NK16:

NOP

DK4:

MOVA,KEYBUF

MOVDPTR,#TABLE

MOVC+DPTR

MOVP0,A

DK4A:

MOVA,P3

ANLA,#0FH

XRLA,#0FH

JNZDK4A

NOKEY4:

LJMPWAIT

DELY10MS:

MOVR6,#10

D1:

MOVR7,#248

DJNZR7,$

DJNZR6,D1

RET

TABLE:

DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H;数码管译码表

DB7FH,6FH,77H,7CH,39H,5EH,79H,71H

END

结束语

通过此次的单片机课程设计,我不仅加深了对单片机理论的理解,深刻懂得了要不断地时间才能掌握知识,而且还学会了如何去加强锻炼创新精神,从而不断地战胜自己,超越自己。

创新,是要我们将理论很好地联系实际,并不断地去开动自己的脑子,从为先到并做到别人没想到没做到的事,不断地超越别人,超越自己;同时,更重要的是,在这一设计过程中,我懂得了坚持不懈,不轻易言弃是每个理工科学子应具备的良好素质。

设计过程,也好比是我们的成长的历程,常有一些不如意的事情发生,这就对我们提出了挑战。

只要自己坚持,坚持,再坚持,再苦再累也值得。

机遇青睐有准备的人。

这个设计过程中,我遇到过许多的考验,给整个设计带来的困扰,真想要就此放弃,然而,我还是挺了过来,

回头想想这个设计的过程,我明白了,原来结果并不是那么得重要,我们更应该注重的是过程。

系统以单片机AT89C51为核心部件,单片机系统完成对按键信号识别、检测、处理、显示等功能,用Protel软件绘制电路原理图,利用MCS-51汇编语言编制程序。

这个系统设计能让我们更好地去认识和使用单片机,矩阵式键盘,节约IO口资源,引脚分配,实时显示,芯片应用,编程实践,还有诸如此类的优点。

然而由于时间有点紧张,本来想设计一个数码管动态扫描电路,或者用液晶屏显示的电路来显示按键信息,这样更加清晰,而且还可以显示其他的东西,比如时间,排序等等。

参考文献

[1]电子工业出版社.单片机设计与应用[M].

[2] 谢自美.电子线路设计•实验•测试.:

华中科技大学出版社,2008

[3] 陈小忠.单片机实用接口技术子程序[M].人民邮电出版社,2005

[4] 阎石.数字电子技术基础(第三版).北京:

高等教育出版社,2003

[5] 廖常初.现场总线概述[J].电工技术,2001

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 艺术

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1