单片机课程设计模拟键盘输入及显示系统设计Word下载.docx
- 文档编号:17660882
- 上传时间:2022-12-07
- 格式:DOCX
- 页数:15
- 大小:235.82KB
单片机课程设计模拟键盘输入及显示系统设计Word下载.docx
《单片机课程设计模拟键盘输入及显示系统设计Word下载.docx》由会员分享,可在线阅读,更多相关《单片机课程设计模拟键盘输入及显示系统设计Word下载.docx(15页珍藏版)》请在冰豆网上搜索。
样,一个端口(如P1口)就可以构成4*4=16个按键,比之直接将端口线用于键盘多出了一倍,而且线数越多,区别越明显,比如再多加一条线就可以构成端口线则只能多出一键(9键)。
由此可见,在需要的键数比较多时,采用矩阵法来做键盘
是合理的。
独立式键盘和4*4矩阵式键盘
矩阵式结构的键盘显然比直接法要复杂一些,识别也要复杂一些,上图中,行线通过电
阻接正电源,并将列线所接的单片机的I/O口作为输出端,而行线所接的I/O口则作为输入。
这样,当按键没有按下时,所有的输出端都是高电平,代表无键按下。
行线输出是低电平,一旦有键按下,则输入线就会被拉低,这样,通过读入输入线的状态就可得知是否有键按下了。
(2)LED显示接口及原理
有两种连接方法:
样阴极端输入低电平的段发光二极管就导通点亮,而输入高电平的则不亮。
阳极端输入高电平的段发光二极管就导通点亮,而输入低电平的则不亮。
控制数码管驱动级的控制电路有静态式和动态式两类:
静态驱动:
它是指每个数码管都要用一个译码器译码驱动。
动态驱动:
它是所的数码管使用一个专门的译码驱动器,使各位数码管逐个轮流显示,
它的扫描速度极快,因此显示效果与静态驱动相同。
采用动态数码管显示,可以大幅度地降低硬件成本和电源的功耗,因为某一时刻只有一
个数码管工作,就是所谓的分时显示,显示所需要的硬件电路可分时复用。
如表1为共阳极与共阴极的代码表
表1十六进制数字形代码表
字型
共阳极代码
共阴极代码
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个按键之中。
若所有列线均为高电平,则键盘中无键按下。
⑵判断闭合键所在的位置:
在确认有键按下后,即可进入确定具体闭合键的过程。
其方法是:
将行线置为低电平,即在置行线为低电平时,其它线为高电平。
在确定某根行线
位置为低电平后,再逐行检测各列线的电平状态。
若某列为低,则该列线与置为低电平的行
态,若P1.0-P1.3为全0”,贝忧键闭合,否则有键闭合。
⑶去除键抖动:
当检测到有键按下后,延时一段时间再做下一步的检测判断。
(4)识别:
当确定键按下时,通过软件计算键码找到相对位置的数据调用显示模块把数
字或字母显示出来或者实现其他功能。
1.3课题设计的任务
进行系统硬件电路设计和软
根据给定的任务要求选择合适的单片机和其他电子元器件,
件编程,根据系统制作并调试系统电路板,使之实现任务要求。
有关参数选择要求符合国家
标准。
具体设计内容如下:
设计系统工作原理图,利用PROTEU软件绘制系统工作原理图;
2)
将设计程序输入、汇编,排除语法错误,生成*.OBJ文件;
按所设计的原理图,在实验平台上连线,检查无误;
将目标文件传送到实验系统,执行并运行调试该程序,最终实现控制要求
4.写出设计说明书,说明书格式见附录,3000字左右
第二章、模拟键盘输入及显示模块的总体设计
1、明确任务
根据课题的要求确定所要设计的任务,分析后确定设计一个4x4矩阵键盘的识别和7
段数码管动态显示综合的系统,控制4个7段数码管动态扫描显示4x4矩阵键盘上按下的按键所对应的值,第一次按下后,每按下一次键数码管上的数字左移一位;
另外设一个功能键,当按下此功能键后数码管上将显示设计者的学号,先显示2009一段时间,然后显示6230一段时间,之后将显示屏清零,等待下一次的输入。
2、硬件和软件功能的划分
系统的硬件配置和软件设计是紧密地联系在一起的,且硬件和软件具有一定的互换性,硬件完成一些功能,可以提高工作速度,但降低了系统的柔性。
若用软件替代某些硬件功能,可增加系统的柔性,但降低系统的工作速度。
因此,总体设计时,应综合考虑,合理划分硬件和软件的功能。
经过分析后,确定4x4矩阵键盘用于单片机系统的输入,4个数码管用于显示按键所对应的值及显示设计者的学号,而单片机则用于逻辑控制和程序的执行,程序则是为实现所设计的功能而编写。
经过论证,该方案能够实现课程设计所要求的任务及预期的目标。
第三章、模拟键盘输入及显示模块的硬件设计
1、系统扩展
实验仿真系统的CPU是8031,因此,必须首先组成最小系统,即由8031、地址锁存器
和程序存储器组成。
2、功能接口
所谓接口是CPU与外界的连接部件,以实现CPU与外部设备的最佳耦合和匹配。
包括
键盘、显示、A/D转换、D/A转换和打印机等。
根据课题要求选用外设,并选用合适的外围接口芯片。
3、系统的组成及统一编址
在设计硬件时,应自行编址。
4、80C51单片机引脚图及引脚功能介绍
图如下:
LI1
畑LI
PJUADO
ra.1j&
D"
PCI引rO4AD*H3.5JAD5
PJ7JAD7
P2.1盟M诲IDF^O-AI"
ME
R24^12
=A
r卫5H.13
円.t
P2C7\1+
F冇商占
Pi0/RXC
ni1
P3.1jfTXC_
31.i
P3.2yNrc
3仁
pa讪rq
P3.4/rc
P3.?
/ri
e
P3.&
VVF
?
1.7
七-研
S0C5]
4.1.电源:
⑴VCC-芯片电源,接+5V;
⑵VSS-接地端;
4.2.时钟:
XTAL1、XTAL2-晶体振荡电路反相输入端和输出端。
4.3.控制线:
控制线共有4根,
⑴ALE/PROG地址锁存允许/片内EPR0编程脉冲
1ALE功能:
用来锁存P0口送出的低8位地址
2PROG功能:
片内有EPRO啲芯片,在EPR0编程期间,此引脚输入编程脉冲。
⑵PSEN:
外ROM卖选通信号。
①EA功能:
内外ROM选择端。
②Vpp功能:
片内有EPRO啲芯片,在EPRO漏程期间,施加编程电源Vpp。
4.4.I/O线
80C51共有4个8位并行I/O端口:
P0P1、P2、P3口,共32个引脚。
另外,P3口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)
5、键盘设计如下:
80C51单片机的并行口P2接4X4矩阵键盘,以P1.0—P1.3接键盘列线,以P1.4-P1.7作行线;
实际电路图连接如下图所示。
旧驯11=
PS3JtIIL
疋術E
PS.1)?
-rD
RjWhD
n*
[■T
J2
JI
址
M
Ji
if.
37
j|_
3S
陀Wl勺F:
曲IN
P75AA13卜仁
F?
如1
F2JAK1D
P7QIAH
凶yFC片応片旬排a
FD利4FDIAADIPf.rwin
<
-5kT-
6、4位7段码数码管的连接
P0口输出按键信息,即段码,与数码管的
a、b、c、d、e、
f、g、dp相连,
1、2、3、4口
并接上+5v电源和上拉电阻;
P1口低四位作为位控,与数码管的
相连,在数码管上显示每个按键的“0-E”键值。
7、最后设计的系统工作原理图如下:
hUr-jf9*11.PT*A13
P2^l3
rz'
Af»
RF=^
PZtallraafiT5VT
・3.r>
T4rufM
hRrffrurjn
■RT
sc«
u
SOAL】.
U1
lb
-g-
XI
3聖
L
迪■:
9口*
-C-L*#J=L・*
_I=L.--J=L»
一■?
二-j"
"
.
7«
F+£
=1□eg贍蠢
囂
s
百^9
=|~3*-.m*
I—43—4I~~0*1•
-l—
—□-a—
Ct
11
Ij
11/
m
―H~k
3I
第四章、软件设计
一个优秀的的系统的软件应具有下列特点:
①软件结构清晰、简捷、流程合理。
②各功能程序实现模块化、子程序化。
这样,既便于调试、
链接,又方便移植、修改。
③程序存储区、数据存储区分配合理。
④运行状态实现标志化管理。
各个功能程序运行状态、
运行结果以及运行要求都设置状态标
志(一般用位寻址区的位)以便查询,程序的转移、运行、
控制都可以通过状态标志条件来
控制。
⑤实现全面软件抗干扰设计。
(由于条件有限,课程设计中不考虑。
)
软件设计一般步骤如下:
1、系统定义
系统定义是在软件设计前,把软件承担的任务明确出来。
合理定义和分配存储空间、定
义标志位。
资源分配的主要工作是RAM资源的分配。
片外RAM的容量要比片内RAM大,通常用
来存放批量大的数据,如采样数据系列。
主要考虑片内
RAM的分配。
系统上电复位时,自
动定义0区为工作寄存器,1区为堆栈,并向
2区、3区延伸。
如果系统前台程序要用1区、
2区作为工作寄存器,就应将堆栈空间重新规划,
常将堆栈安放在片内
RAM的高端,如
60H~7FH。
挥其作用,尽量避免用来做其他事情。
20H〜2FH这16个字节具有位寻址功能,用来存放各种软件标志、逻辑变量、位输入
信息、位输出信息副本、状态变量、逻辑运算的中间结果等。
当这些项目全部安排好后,保留一两个字节备用,剩下的单元才可改作其他用途。
30H~7FH为一般通用寄存器,只能存入整字节信息。
通常用来存放各种参数、指针、中间结果,或用作数据缓冲区。
HOUR、
RAM资源规划好后,应列出一张RAM资源的详细分配清单,作为编程依据。
为了增加
可读性,便于修改,一般对分配的存储单元取名。
如保存当前时间的时、分、秒取
MINI、SEC编程时用变量名,编译时只需在前面加HOUREQU24H即可(20H为分配给
小时的存储单元的地址)。
2、软件结构设计
块。
然后再采用自下而上的方法,设计一个模块,调试一个模块,加入主程序调试;
再进行下一个模块设计和调试。
设计思路如下:
先运行主程序,首先是一些变量的定义及初始化,然后定义四字节的显示存储区并将其初始化,接着执行键盘子程序,键盘子程序的第一步是执行键盘查询程序,此程序为系统的待机状态,即为系统不断循环执行键盘检查程序,来检查是否有键按下,在每一次的键盘检查时,都要执行一次显示子程序,以保证数码管处于亮的状态,如果有键按下,则计算键码并将键码存到显示存储区中,之后返回到键盘子程序。
3、绘制程序流程框图
3.1主程序的流程框图如下
3.2键盘检查子程序流程框图
3.3、编写程序
在确保程序框图的正确性的前提下,才能编写程序。
在编程时必须注意以下几点:
①一定要严格根据框图编程。
②一定要写注释。
③通过编译后,只表明语法没错,并不表明逻辑正确,一定要用不同的数据对模块进
行测试。
完全符合预定结果,方可确认通过。
④将该模块加到主控模块进行测试,如果与预定结果不符,必须查找原因,进行修改、
调试。
⑤必须注意随时保存调试通过的副本。
以便当新程序出现故障时,随时可返回前面的
正确点重新开始。
4、编写设计说明书
设计说明书的格式见附录。
由于设计时间紧迫,要求学生尽量不要在完成全部设计后再编写设计说明书。
而应在设
计过程中逐步完成。
一开始不可能设计出满意的主程序框图。
因此,
总体设计部分在完成全
部设计任务后再写。
而硬件部分和软件部分可以在设计过程同步完成。
第五章、系统调试和仿真
编写程序后,将程序载入WAVE6000集成调试软件进行调试,软件绘制系统工作原理后,将程序载入,然后进行模拟仿真,
结果正常;
利用PROTEUS系统一起运行正常:
按下键后
系统能够正常显示,输入多位数值检测能够实现移位;
而且当按下
16号键时,系统显示学
号正常,这证明此次设计结果达到了预期结果。
第六章、结束语
课程设计是培养学生运用综合运用所学知识,发现、提出、分析和解决实际问题,锻炼实际能力的重要环节,是对我们实际工作能力的具体训练和考察过程。
随着科学技术发展的日新月异,单片机已经成为当今计算机应用中空前活跃的领域,在生活中无处在。
作为机电专业的学生来说,单片机的开发技术十分重要。
我做的题目是基于80C51单片机的4x4键盘输入显示,对于我们这些实践中的新手来说,这是一次考验。
怎样才能找到课堂所学与实践运用的最佳结合点。
这都是我们要考虑和努力的。
在此次课程设计中,通过老师的精心指导和在网上找的资料,主要掌握了数码管显示的编程,数据输出的编程方法。
调试也是此次的重点,这其中最重要的就是软件的调试了,这要求我们对每个模块在整个程序中的作用的了如指掌。
通过此次课程设计,我发现我对程序的掌握还不够,尤其是单片机汇编语言掌握的不牢固。
这次课程设计使我懂得实践的重要
性,只有理论知识远远不够,只有把所学的理论知识与实践相结合才能算是掌握了所学的知识。
随着就业形势的日趋严峻,大学生的动手能力、实际能力和综合素质越来越受到学校和
用人单位的重视,所以以后我们要更加注重实践,提高自己的动手能力。
此次设计单片机虽然比较简易,但是我收获颇多。
通过本次课程设计,使我学会了数码
管显示数字的原理,学会了如何使用键盘来获得输入的数据,也提高了我的编写汇编语言的
能力,同时也提高了我们自己动手解决问题的能力。
另外,这次单片机设计中使我对单片机
也有了更高层次的了解。
通过此次设计,自己的能力得到了提高,我会认真总结设计中的经验教训,为以后学习做好铺垫。
[1]李广第主编.单片机基础.第一版.北京航空航天大学出版社.北京
[2]王修才主编.单片机接口技术.第一版.复旦大学出版社.上海
[3]周志德主编.单片机原理及应用.第一版.高等教育出版社
[4]李运华主编.机电控制.第一版.北京航空航天大学出版社
[5]秦曾煌主编.电工学上册:
电工技术.第五版.高等教育出版社
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 课程设计 模拟 键盘输入 显示 系统 设计