单片机课程设计菜单页面.docx

上传人:b****2 文档编号:17753695 上传时间:2023-08-03 格式:DOCX 页数:33 大小:540.37KB
下载 相关 举报
单片机课程设计菜单页面.docx_第1页
第1页 / 共33页
单片机课程设计菜单页面.docx_第2页
第2页 / 共33页
单片机课程设计菜单页面.docx_第3页
第3页 / 共33页
单片机课程设计菜单页面.docx_第4页
第4页 / 共33页
单片机课程设计菜单页面.docx_第5页
第5页 / 共33页
单片机课程设计菜单页面.docx_第6页
第6页 / 共33页
单片机课程设计菜单页面.docx_第7页
第7页 / 共33页
单片机课程设计菜单页面.docx_第8页
第8页 / 共33页
单片机课程设计菜单页面.docx_第9页
第9页 / 共33页
单片机课程设计菜单页面.docx_第10页
第10页 / 共33页
单片机课程设计菜单页面.docx_第11页
第11页 / 共33页
单片机课程设计菜单页面.docx_第12页
第12页 / 共33页
单片机课程设计菜单页面.docx_第13页
第13页 / 共33页
单片机课程设计菜单页面.docx_第14页
第14页 / 共33页
单片机课程设计菜单页面.docx_第15页
第15页 / 共33页
单片机课程设计菜单页面.docx_第16页
第16页 / 共33页
单片机课程设计菜单页面.docx_第17页
第17页 / 共33页
单片机课程设计菜单页面.docx_第18页
第18页 / 共33页
单片机课程设计菜单页面.docx_第19页
第19页 / 共33页
单片机课程设计菜单页面.docx_第20页
第20页 / 共33页
亲,该文档总共33页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

单片机课程设计菜单页面.docx

《单片机课程设计菜单页面.docx》由会员分享,可在线阅读,更多相关《单片机课程设计菜单页面.docx(33页珍藏版)》请在冰点文库上搜索。

单片机课程设计菜单页面.docx

单片机课程设计菜单页面

 

《单片机技术》课程设计说明书

题目

系部:

学生姓名:

指导教师:

职称

专业:

班级:

完成时间:

 

摘要

随着现代化的脚步,市场经济的不断完善,信息技术日益发展,信息量的掌握决定了一个人事业的成败。

21世纪其实无疑不是信息的时代。

信息技术的迅猛发展已对我们的生产方式、生活方式、学习方式及思维方式产生了深远的影响,也带动了信息显示技术的发展。

其中液晶显示屏被广泛应用于各种不同的领域,包括手机、膝上型电脑、笔记本电脑、电脑监视器、大屏幕电视以及数字广告屏,液晶显示在我们的生活中随处可见,同时,人们也可根据自己的需求选择显示出想要显示的内容。

近年来,同样应用广泛的菜单选择系统也离不开显示技术。

通过显示屏,使得具有单层或多层菜单选择功的操作系统更加简洁、优化、便于操作。

本设计通过汉字液晶显示器122232来显示出一个具有两级菜单选择功能的小系统。

设计以模拟生活中常见的多功能检测器为例,详细分析了单片机在本设计中的应用原理,并分块给出了整个系统的硬件以及软件编程思路,使得整个设计清晰简洁地阐明了单片机小系统在生活中的广泛应用。

因此本课题的研究具有重要的现实意义。

关键词:

显示单片机液晶显示器菜单选择

 

Abstract

Withthepaceofthemodernization,theeconomymarketcontinuestoimprove.Theinformationtechnologyisimproveddaybyday,socontrollingtheamountofinformationdeterminesone’ssuccessorfailure.Infact,the21stcenturyiscertainly theinformationage.Therapiddevelopmentoftheinformationtechnologyhasmadeadeeplyeffectinourlifestyle,learningstyleandthinkingstyle,andatthesametime,ithashelpedtoimprovetheinformationdisplaytechnology.

     Amongthat,Liquidcrystaldisplayiswidelyusedinavarietyofareas,includingmobilephones,laptopcomputers,notebookcomputers,computermonitors,largescreenTVanddigitaladvertisingscreens.Liquidcrystaldisplayapplieseverywhereinourlives,atthesametime,wecancontrolthecontentwhichwewanttodisplayinthescreenaccordingourneeding.Inrecentyears,themenuschosesystemwhichalsoverypopularinpeople’slifeisalsorelyonthedisplaysystem.Thedisplaysmadethemenussystemmoresimpleandclean.Thisdesignsimulatesthepopularmenussysteminourlife.HavinganalyzedtheworkingtheoryoftheSCMbeforedesigned,ittellsusthethoughtsofthehardwareandsoftwaredesigns.ThismakesthedesignmorecompactandpellucidtodisplaytheSCM’suseinourlife.Sothesubjectofthisresearchhasanimportantpracticalsignificance.

Keywords:

displaySCMliquidcrystaldisplaymenus-chose

 

 

绪论

单片机正以低廉的成本、强大的功能、较高的可靠性被广泛地应用于家电设备、仪器仪表、工业控制及城市建设等各个领域中.纵观我们现在生活的各个领域,从导弹的导航装置,到飞机上各种仪表的控制,从计算机的网络通讯与数据传输,到工业自动化过程的实时控制和数据处理,以及我们生活中广泛使用的各种智能IC卡、电子宠物等,这些都离不开单片机。

而智能菜单选择系统的应用也随着单片机的发展渐渐渗透到了我们生活中的每一个角落。

现在市场上各类依靠菜单选择系统来操作完成的产品较多,但目前的菜单选择系统还有着较大可发展升级的空间。

随着信息化社会的迅速发展,菜单选择系统正在由单一向多元化、由简单模式向智能等多方面发展。

该课题使我们能够掌握菜单选择系统的基本原理和设计方法,并对液晶显示屏这个行业有了较为深刻的了解和认识,同时对大学期间所学习的一些理论知识进行了实践,使我们对所学过的理论知识有了新的认识。

通过对该课题的设计研究可以熟练掌握51单片机软硬件开发工具的使用方法,为以后从事相关行业的工作积累了不少有用知识。

目前我国的信息行业发展迅速,使得将来应用更加广泛的智能菜单系统以及作为主要平面显示媒介的LCD显示屏的作用也越来越广泛,相关的从业人员也会越来越紧缺。

但同时应该清楚的认识到我国在这两个领域的技术虽然发展迅速但和世界先进水平还有一定的差距。

因此本课题不论是对自己的就业还是对我国单片机技术的发展都有着非常现实与积极的意义。

 

1 整体方案设计

1.1系统总体基本构成

本系统以单片机AT89S52为控制核心,由单片机数据存储模块、键盘按键选模块、接口模块和LCD显示模块组成,它们共同完成菜单由一级选择进入下一级并显示出内容的任务。

其中,对系统进行核心控制的模块由单片机AT89S52和一些具有复位、振荡作用的电路组成;数据存储模块是由单片机内部ROM进行数据的存储;按键选择模块由行列式键盘组成;接口模块则由按键接口部分和LCD12864并口显示接口组成;LCD显示模块由液晶显示器12864来完成实现字符的显示。

1.1.1系统实现方法

整个菜单呈树形拓扑结构,每个节点的父节点都是唯一的,由此可以确定其在菜单树中的位置,总体思路就是以固定格式建立一个变量库和一个菜单库,以编号作为各个变量和菜单的主关键字[1、4-6]。

变量库中专门存放液晶显示所涉及的变量,每个变量有一个变量编号;菜单库中专门存放各个菜单的内容,每个菜单有一个菜单编号,菜单中所涉及的变量可以从变量库中抽取。

执行文件的任务就是对菜单库和变量库进行解码操作,完成液晶显示和键盘响应的功能。

1.1.2 系统思路来源

由于液晶显示器(LCD)具有功耗低、体积小、驱动电压低、价格低、所含信息多等优点,它在许多微机控制系统中被用作显示终端、人机接口等设备。

由文献[2]可知清华大学与北京自动化设计院联合研制的全数字大电流可控整流电源中正是采用80C196KC单片机控制HD61202进行液晶显示作为人机接口设备。

单片机与液晶显示和键盘结合,组成现场控制系统,与上位机联合对生产设备进行监控并进行相应的参数设置。

本设计在参考了以上设计的基本原理后决定也采用液晶显示器来显示并实现多层菜单选择的功能。

1.2系统模块功能

其中,核心控制模块单片机通过控制器和存储器依靠程序中指令的顺序周而复始地进行取出指令,分析指令,执行指令来完成整个指令操作;键盘按键选择模块由4x4的行列式键盘通过编写程序对每行没列进行监控从而确定是哪一个键被按下,大大减少了I/O口的使用,增加了输入。

本设计中由于键盘选择只有翻页下翻页键、确定键和总返回键,所以只使用了其中的四个状态来实现从一级进入或者退出到另一级的功能。

接口模块分为按键接口和显示接口部分,分别通过杜邦线与核心单片机的连接。

图1-1液晶显示及键盘响应流程图

初始化是对单片机、液晶和键盘的相关参数进行设置,并设定相应外部中断。

液晶显示模块中通常每屏液晶显示表示1个菜单,但由于液晶显示的内容有限(这里的12864液晶显示器为4行),所以当1屏不能完全显示出1个菜单时还需要具有翻屏功能,这里的菜单显示呈树形拓扑结构。

 

图1-2菜单显示树形拓扑结构

1.3 系统工作原理

整个设计通过软件编程及调试设计出一个简易的多级菜单选择程序,具有多级菜单选择功能。

第一级菜单为主菜单页面,首页显示出的内容为6个不同的功能项,并通过上下翻页选择键进行选择,并按确定键进行确定;进入了下一级页面,同时会出现主功能页面下相应的功能选择,并进行相应的选择,当发现进入的不是自己需要的页面,可以通过选择键选择返回或者按返回主页按键。

整个菜单呈树形拓扑结构,每个节点的父节点都是唯一的,由此可以确定其在菜单树中的位置,总体思路就是以固定格式建立一个变量库和一个菜单库,以编号作为各个变量和菜单的主关键字。

变量库中专门存放液晶显示所涉及的变量,每个变量有一个变量编号;菜单库中专门存放各个菜单的内容,每个菜单有一个菜单编号,菜单中所涉及的变量可以从变量库中抽取。

执行文件的任务就是对菜单库和变量库进行解码操作,完成液晶显示和键盘响应的功能。

执行文件一旦编制完毕则一劳永逸,改动菜单时再也不用进行修改,除非要添加新的功能。

这样添加菜单或变量时只需顺序向菜单库或变量库中加入,删除或修改菜单也只需对菜单库中相关菜单进行操作,而不影响其它程序,所以实际操作人员可以不必了解执行程序的内容,只需掌握变量库和菜单库的结构即可。

图1-3菜单显示执行框图

 

2 硬件电路设计

2.1 系统硬件主要构成

整个系统硬件部分的主电路板主要由核心单片机AT89S52、行列式按键选择作用以及一些起芯片保护作用的上拉电阻和二极管组成。

此外还有负责连接按键与单片机的一个按键接口单元和负责连接液晶显示器12864

2.1.1 单片机AT89S52

本设计中所用到的是单片机AT89S5x系列中的芯片AT89S52,芯片引脚如图2-1所示。

其中,单片机的P2.0至2.7口与LCD12864数据口相连,实现数据的并行传送。

而P1.0至P1.7口则连接一个上拉电阻,主要起保护作用。

其中,P3.7口连接串口显示接口芯片的EN端,P3.6口连接RW端,P3.5口连接RS端,共同实现串口时钟、串口数据、片选的功能。

AT89S5x系列Flash单片机有AT89S51、AT89S52、AT89S53、AT89S8252、AT89S8253等五种型号,AT89S51是其基本型。

AT89S5x的片内含8Kbytes的可反复擦写的Flash只读程序存储器和256bytes的随机存取数据存储器,器件采用ATMEL公司的高密度、非易失性存储技术生产,与标准MCS-51指令系列及8052产品引脚兼容,片内置通用8位中央处理器和Flash存储单元,功能强大的AT89S5x单片机适用于许多较为复杂的控制应用场合。

其主要特性如下:

兼容80C51引脚结构、40个引脚、32个I/O口;4K字节ISPFlashROM,灵活的ISP字节和分页编程;128字节RAM;2个16位定时/计数器;双数据寄存器指针;一个全双工UART串行通信口;2级中断、6个中断源;低功耗空闲和省电模式;中断唤醒省电模式;3级加密位;看门狗电路;时钟频率0~33MHZ;PDIP、TQIP和PLCC等三种形式。

AT89S52有8K字节ISPFlashROM、256字节RAM、3个16位定时/计数器、8个中断源,其余特性与AT89S51相同。

AT89S53有12K字节ISPFlashROM、256字节RAM、3个16位定时/计数器、9个中断源、SPI串行接口、时钟频率0-24MHZ,其余特性与AT89S8253的电源电压范围为

2.7-5.5V,两者的ISPFlashROM分别为8K、12K字节,其余特性与AT89S53相同。

AT89S5x系列单片机完全兼容MCS-51、8051、89C51等产品,采用上述单片机的程序在89S5x上照样运行。

AT89S52是AT89S5x系列单片机中性能居中、很有代表性的产品,其主要特性如下:

兼容MCS-51产品;

8K字节可擦写1000次以上的在系统可编程ISPFlashROM;

工作电压4V-5.5V;

256字节RAM;

32个可编程I/O口;

3个16位定时/计数器;

8个中断源;

一个全双工UART串行通信口;

静态工作频率0-33MHZ;

休眠和节电保持两种省电模式;

中断唤醒省电模式;

看门狗定时器;

双数据指针(DPTR);

电源关闭标志;

灵活的ISP编程(字节和页两种方式);

3级程序加密;图2-1单片机89C52引脚图

AT89S5x配置了振荡频率可为0HZ并可通过软件设置省电模式。

空闲模式下,CPU暂停工作,RAM定时计数器、串行口、外中断系统可继续工作,掉电模式冻结振荡器而保存RAM数据,停止其他功能直至外中断激活或硬件复位。

相对于89C5x增加了ISP在线编程功能、内部看门狗定时器、双数据指针,电源关闭标志和全新的加密算法,工作频率更高,但价格却基本不变,甚至更低。

单片机的基本组成如下图所示:

 

图2-2单片机基本组成

主要性能参数:

·与MCS-51产品指令和引脚完全兼容

·8K字节可重擦写Flash闪速存储器

·1000次擦写周期

·全静态操作:

0Hz-24MHz

·三级加密程序存储器

·256X8字节内部RAM

·32个可编程I/O口线

·3个16位定时/计数器

·8个中断源

·可编程串行UART通道

·低功耗空闲和掉电模式

功能概述:

AT89S5x提供以下标准功能:

8K字节Flash闪速存储器,256字节内部RAM,32个I/O口线,3个16位定时/计数器,一个6向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。

同时,AT89S5x可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。

空闲方式停止CPU的工作,但允许RAM、定时/计数器,串行通信口及中断系统继续工作。

掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。

·特殊功能寄存器:

在AT89S5x片内存储器中,80H-FFH共128个单元为特殊功能寄存器(SFR)。

并非所有的地址都被定义,从80H-FFH共128个字节只有一部分被定义,还有相当一部分没有定义。

对没有定义的单元读写将是无效的,读出的数值将不确定,而写入的数据也将丢失。

不应该将数据“1”写入未定义的单元,由于这些单元在将来的产品中可能赋予新的功能,在这种情况下,复位后这些单元数值总是“0”。

·数据存储器:

AT89S5x有256个字节的内部RAM,80H-FFH高128个字节与特殊功能寄存器地址是重叠的,也就是高128字节的RAM和特殊功能寄存器的地址是相同的,但物理上它们是分开的。

当一条指令访问7FH以上的内部地址单元时,指令中使用的寻址方式是不同的,也即寻址方式决定是访问高128字节RAM还是访问特殊功能寄存器。

如果指令是直接寻址方式则为访问特殊功能寄存器。

例如,下面的直接寻址指令访问特殊功能寄存器0A0H(即P2口)地址单元。

MOV0A0H,#data

间接寻址指令访问高128字节RAM,例如,下面的间接寻址指令中,R0的内容为0A0H,则访问数据字节地址为0A0H,而不是P2口(0A0H)。

MOV@R0,#data

堆栈操作也是间接寻址方式,所以,高128位数据RAM亦可作为堆栈区使用。

2.1.2液晶显示LCD12864

本设计中液晶显示器的D0至D7口分别与单片机的P2.0至P2.7口相连,共同实现八位数据的传送。

 

12864A-1汉字图形点阵液晶显示模块,可显示汉字及图形,内置8192个中文汉字(16X16点阵)、128个字符(8X16点阵)及64X256点阵显示RAM(GDRAM)。

主要技术参数和显示特性:

电源:

VDD3.3V~+5V(内置升压电路,无需负压);

显示内容:

128列×64行

显示颜色:

黄绿

显示角度:

6:

00钟直视

LCD类型:

STN

与MCU接口:

8位或4位并行/3位串行

配置LED背光

多种软件功能:

光标显示、画面移位、自定义字符、睡眠模式等

外形尺寸图:

 

图2.1.2.a液晶外形尺寸

主要外形尺寸:

表2.1.2.a主要外形尺寸

项目

标准尺寸

单位

模块体积

113.0×65.0×12.8

mm

定位尺寸

105.0×55.0

mm

视域

73.4×38.8

mm

行列点阵数

128×64

dots

点距离

0.52×0.52

mm

点大小

0.48×0.48

mm

模块引脚说明:

表2.1.2.引脚说明

引脚号

引脚名称

方向

功能说明

1

VSS

-

模块的电源地

2

VDD

-

模块的电源正端

3

V0

-

LCD驱动电压输入端

4

RS(CS)

H/L

并行的指令/数据选择信号;串行的片选信号

5

R/W(SID)

H/L

并行的读写选择信号;串行的数据口

6

E(CLK)

H/L

并行的使能信号;串行的同步时钟

7

DB0

H/L

数据0

8

DB1

H/L

数据1

9

DB2

H/L

数据2

10

DB3

H/L

数据3

11

DB4

H/L

数据4

12

DB5

H/L

数据5

13

DB6

H/L

数据6

14

DB7

H/L

数据7

15

PSB

H/L

并/串行接口选择:

H-并行;L-串行

16

NC

空脚

17

/RET

H/L

复位低电平有效

18

NC

空脚

19

LED_A

-

背光源正极(LED+5V)

20

LED_K

-

背光源负极(LED-OV)

逻辑工作电压(VDD):

4.5~5.5V

电源地(GND):

0V

接口时序:

模块有并行和串行两种连接方法(时序如下):

8位并行连接时序图

图2.1.2.bMPU写资料到模块

图2.1.2.cMPU从模块读出资料

表2.1.2.c显示坐标关系

X坐标

Line1

80H

81H

82H

83H

84H

85H

86H

87H

Line2

90H

91H

92H

93H

94H

95H

96H

97H

Line3

88H

89H

8AH

8BH

8CH

8DH

8EH

8FH

Line4

98H

99H

9AH

9BH

9CH

9DH

9EH

9FH

显示RAM:

文本显示RAM(DDRAM)

文本显示RAM提供8个×4行的汉字空间,当写入文本显示RAM时,可以分别显示CGROM、HCGROM与CGRAM的字型;ST7920A可以显示三种字型,分别是半宽的HCGROM字型、CGRAM字型及中文CGROM字型。

三种字型的选择,由在DDRAM中写入的编码选择,各种字型详细编码如下:

显示半宽字型:

将一位字节写入DDRAM中,范围为02H-7FH的编码。

显示CGRAM字型:

将两字节编码写入DDRAM中,总共有0000H,0002H,0004H,0006H四种编码

显示中文字形:

将两字节编码写入DDRAMK,范围为A1A0H-F7FFH(GB码)或A140H-D75FH(BIG5码)的编码。

绘图RAM(GDRAM)

绘图显示RAM提供128×8个字节的记忆空间,在更改绘图RAM时,先连续写入水平与垂直的坐标值,再写入两个字节的数据到绘图RAM,而地址计数器(AC)会自动加一;在写入绘图RAM的期间,绘图显示必须关闭,整个写入绘图RAM的步骤如下:

关闭绘图显示功能。

先将水平的位元组坐标(X)写入绘图RAM地址;

再将垂直的坐标(Y)写入绘图RAM地址;

将D15——D8写入到RAM中;

将D7——D0写入到RAM中;

打开绘图显示功能。

绘图显示的缓冲区对应分布请参考“显示坐标”游标/闪烁控制

ST7920A提供硬件游标及闪烁控制电路,由地址计数器(addresscounter)的值来指定DDRAM中的游标或闪烁位置。

2.1.3 行列式键盘选择

本设计中行列式键盘的P10A至P17A口分别与单片机的P1.0至P1.7口相连,共同实现键值得扫描与传送。

矩阵键盘又称为行列式键盘,它是用4条I/O线作为行线,4条I/O线作为列线组成的键盘。

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

这样键盘中按键的个数是4×4个。

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

图1为ME300B矩阵键盘电路图及按键图,行线接P1.4-P1.7,列线接P1.0-P1.3。

a

b

图2.1.3a.矩阵键盘电路b.按键排列

 

 

 

4×4矩阵键盘的编程方法:

先读取键盘的状态,得到按键的特征编码。

先从P1口的高四位输出低电平,低四位输出高电平,从P1口的低四位读取键盘状态。

再从P1口的低四位输出低电平,高四位输出高电平,从P1口的高四位读取键盘状态。

将两次读取结果组合起来就可以得到当前按键的特征编码。

使用上述方法我们得到16个键的特征编码。

举例说明如何得到按键的特征编码:

假设“1”键被按下,找其按键的特征编码。

从P1口的高四位输出低电平,即P1.4-P1.7为输出口。

低四位输出高电平,即P1.0-P1.3为输入口。

读P1口的低四位状态为“1101”,其值为“0DH”。

再从P1口的高四位输出高电平,即P1.4-P1.7为输入口。

低四位输出低电平,即P10-P13为输出口,读P1口的高四位状态为“1110”,其值为“E0H”。

将两次读出的P0口状态值进行逻辑或运算就得到其按键的特征编码为“EDH”。

用同样的方法可以得到其它15个按键的特征编码。

根据按键的特征编码,查表得到按键的顺序编码。

将用上述方法得到的16个按键的特征编码按图2按键排列的顺序排成一张特征编码与顺序编码的对应关系表,然后用当前读得的特征编码来查表,当表中有该特征编码时,它所在的位置就是对应的顺序编码。

矩阵键盘键值查找程序的具体编程

这个演示程序的主要功能有:

识别键盘有无按键按下,若无键按下返回。

如果有键按下,找出具体的按键值(顺序码)。

 

2.2 系统硬件电路模块

整个系统硬件可以分为单片机数据存储模块、按键选择模块、接口模块和液晶显示模块。

每个模块执行其相应的功能,共同组成了一个基于单片机设计的多字符显示系统。

2.2.1按键选择模块

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

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2