LCD电子显示屏的控制和界面设计毕业论文.docx
- 文档编号:5362080
- 上传时间:2022-12-15
- 格式:DOCX
- 页数:64
- 大小:365.83KB
LCD电子显示屏的控制和界面设计毕业论文.docx
《LCD电子显示屏的控制和界面设计毕业论文.docx》由会员分享,可在线阅读,更多相关《LCD电子显示屏的控制和界面设计毕业论文.docx(64页珍藏版)》请在冰豆网上搜索。
LCD电子显示屏的控制和界面设计毕业论文
LCD电子显示屏的控制和界面设计毕业论文
一、摘要--------------------------------------------3
二、作品意义-----------------------------------------3
三、硬件设计-----------------------------------------4
四、软件设计----------------------------------------5
五、设计调试---------------------------------------8
六、指令说明------------------------------------------9
七、心得体会---------------------------------------12
八、致谢--------------------------------------------13
九、参考文献----------------------------------------13
十、源程序与原理图----------------------------------13
一、摘要
近年来随着计算机在社会领域的渗透和大规模集成电路的发展,单片机的应用正在不断地走向深入,由于它具有功能强,体积小,功耗低,价格便宜,工作可靠,使用方便等特点,因此特别适合于与控制有关的系统,越来越广泛地应用于自动控制,智能化仪器,仪表,数据采集,军工产品以及家用电器等各个领域,单片机往往是作为一个核心部件来使用,在根据具体硬件结构,以及针对具体应用对象特点的软件结合,以作完善。
随着以计算机为轴心的各种各样信息处理装置的诞生,为适应这种新形势,信息家电,网络终端,广播-通信等用途的LCD市场也将迅速扩大,而且如今LCD发展方向不仅在于大屏幕,而且在中小屏幕方面,例如汽车导航系统,摄像机,数字式照相机,便携式电视,PDA(个人数字助理),娱乐/游戏机,摄影机等有着进一步的发展。
液晶显示器(LCD)具有功耗低、体积小、重量轻、超薄等许多其他显示器无法比拟的优点,近年来被广泛用于单片机控制的智能仪器、仪表和低功耗电子产品中。
LCD可分为段式LCD、字符式LCD和点阵式LCD。
其中,段式LCD和字符式LCD只能用于字符和数字的简单显示,不能满足图形曲线和汉字显示的要求;而点阵式LCD不仅可以显示字符、数字,还可以显示各种图形、曲线以及汉字、动画,并且可以实现屏幕滚动、反转、闪烁等功能,用途十分广泛。
由此可见LCD的应用是如此广泛,所以用MPU控制液晶显示器是很普遍的应用。
本设计主要研究通过单片机控制来实现液晶模块字符的显示。
二、作品意义
近年来随着科技的飞速发展,单片机的应用正在不断地走向深入,同时带动传统控制检测日新月异更新。
在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,加以完善。
单片机自20世纪70年代问世以来,以其极高的性能价格比,受到人们的重视和关注,应用很广、发展很快。
而51单片机是各单片机中最为典型和最有代表性的一种。
本次设计以STC89C51芯片为核心,辅以必要的外围电路,设计了一个简易的电子阅读器。
本作品得控制器采用STC89C516RD+,人机接口界面采用YM12864R液晶显示器和四个按钮。
本作品可通过按键和液晶显示来选择阅读诗歌或图片。
三、硬件设计
1、系统框图
2、控制模块
控制器采用STC89C516RD+,其指令代码与传统得8051单片机完全兼容,FLASH为63KB,RAM为1280B。
由于本作品需要显示图片,需要较大得存储空间来存储图片数据,而STC89C516RD+有63KB得FLASH,这也是选择STC89C516RD+得重要原因之一。
其次STC89C516RD+支持ISP,调式程序时不用频繁地从电路板上拔下芯片来烧程序,可直接通过串口经MAX232电平转换后,把相应得数据线和电源线与电路板相接,再配合ISP下载软件即可将程序下载到芯片,大大提高了调试效率。
3、显示模块
显示器采用YM12864R液晶显示器。
带中文字库得128X64是一种具有4位/8位并行,2线或3线串口多种接口方式,部含有国标一级,二级简体中文字库得点阵图形液晶显示模块;其显示分辨率为128X64,置8192个16*16点汉字,和128个16*8点ASCII字符集。
利用该模块灵活得接口方式和简单,方便的操作指令,可构成全中文人机交互图形界面。
可以显示8X4行16X16点阵的汉字。
也可以完成图形显示。
低电压低功耗识其又一显著得特点。
由该模块构成得液晶显示方案与同类型得图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵得图形液晶模块。
4、键盘
本作品所有得键盘由4个机械触点式的按钮组成。
把4个按键直接与单片机得I/O口连接,按键按下时将I/O接地。
其特点是价格低廉,编程简单,采用查询的方式检测按键得状态。
由于按键是机械触点式的,再机械触动闭合或断开时,会有抖动,这些抖动会干扰单片机按键的检测,因此在编程时要加入消抖程序。
5、振荡复位电路
振荡电路:
由1个12MHz晶振和2个30pf的瓷片电容组成。
复位电路:
由1个10uF的电解电容和一个10K的电阻组成。
四、软件设计
软件主要由液晶初始化,按键扫描,按键处理和显示子程序组成。
由于本作品的界面是菜单式的,通过什么来确认该进入哪个子菜单或显示哪幅图片,这是编程前首先要解决得问题。
根据液晶显示器本身的特性:
字符显示RAM在液晶模块中的地址80H~9FH。
字符显示的RAM的地址与32个字符显示区域有着一一对应得关系。
因此,可通过显示光标,然后通过光标得位置来确认该进入哪个子菜单或显示哪幅图片。
此外,每进入一个菜单,都要对键盘进行扫描,此时按键按下得意义和前面得不同了,因此要对按键处理做相应得修改。
软件流程图:
五、设计调试
1、单片机最小系统的调试
把单片机最小系统焊接好,加上一格LED,然后编写一个让LED闪烁的程序,通过Keil把程序调试好,再生成的HEX文件下载到芯片里面,观察LED的闪烁情况是否与程序相符,若相符,则说明单片机最小系统正常。
若不相符,则找出问题的所在。
这一步看似简单,却是必不可少的一步,因为单片机最小系统是整个电路的基础。
通过调试单片机最小系统,不但可以检测单片机最小系统是否正常,还可以检测你使用相关软件的步骤是否正确,这些步骤都是以后调试程序时必不可少的。
2、液晶显示器的调试
仔细阅读液晶显示器的资料,按照资料上的要求把液晶显示器连接好。
首先,写一个让液晶显示一个汉字或字符的程序,让液晶显示器对应地显示出来。
这一步可以让我们检测液晶显示器是否与单片机正确连接,以及掌握初始化液晶显示器的方法和写指令/数据到液晶显示器的方法,这是使用液晶显示器的第一步。
接下来再让液晶在不同的位置显示字符、显示多个字符、显示图片等。
也就是把以后要用的功能一一掌握。
最后把液晶显示程序里常用的程序整理成一个个字程序,方便以后调用。
.3、键盘的调试
将按键添加到电路板上,编写按键程序:
按不同的键能让液晶显示不同的字符。
这步成功后说明按键程序就没问题了,把它整理成一个字程序,方便调用。
4、整体调试
以上是基本功能模块的调试,接下来先把程序框图画好,然后对照框图添加相应的程序,必要时可对框图进行局部修改或整体修改。
六、指令说明
1、模块控制芯片提供两套控制命令,基本指令和扩充指令如下:
指令表1:
(RE=0:
基本指令)
指
指令码
功能
令
RS
R/W
D7
D6
D5
D4
D3
D2
D1
D0
清除
显示
0
0
0
0
0
0
0
0
0
1
将DDRAM填满"20H",并且设定DDRAM的地址计数器(AC)到"00H"
地址
归位
0
0
0
0
0
0
0
0
1
X
设定DDRAM的地址计数器(AC)到"00H",并且将游标移到开头原点位置;这个指令不改变DDRAM的容
显示状态开/关
0
0
0
0
0
0
1
D
C
B
D=1:
整体显示ON
C=1:
游标ON
B=1:
游标位置反白允许
进入点
设定
0
0
0
0
0
0
0
1
I/D
S
指定在数据的读取与写入时,设定游标的移动方向及指定显示的移位
游标或显示移位控制
0
0
0
0
0
1
S/C
R/L
X
X
设定游标的移动与显示的移位控制位;这个指令不改变DDRAM的容
功能
设定
0
0
0
0
1
DL
X
RE
X
X
DL=0/1:
4/8位数据
RE=1:
扩充指令操作
RE=0:
基本指令操作
设定CGRAM
地址
0
0
0
1
AC5
AC4
AC3
AC2
AC1
AC0
设定CGRAM地址
设定DDRAM
地址
0
0
1
0
AC5
AC4
AC3
AC2
AC1
AC0
设定DDRAM地址(显示位址)
第一行:
80H-87H
第二行:
90H-97H
读取忙标志和地址
0
1
BF
AC6
AC5
AC4
AC3
AC2
AC1
AC0
读取忙标志(BF)可以确认部动作是否完成,同时可以读出地址计数器(AC)的值
写数据到RAM
1
0
数据
将数据D7——D0写入到部的RAM(DDRAM/CGRAM/IRAM/GRAM)
读出RAM的值
1
1
数据
从部RAM读取数据D7——D0
(DDRAM/CGRAM/IRAM/GRAM)
指令表2:
(RE=1:
扩充指令)
指
指令码
功能
令
RS
R/W
D7
D6
D5
D4
D3
D2
D1
D0
待命
模式
0
0
0
0
0
0
0
0
0
1
进入待命模式,执行其他指令都棵终止
待命模式
卷动地址开关开启
0
0
0
0
0
0
0
0
1
SR
SR=1:
允许输入垂直卷动地址
SR=0:
允许输入IRAM和CGRAM地址
反白
选择
0
0
0
0
0
0
0
1
R1
R0
选择2行中的任一行作反白显示,并可决定反白与否。
初始值R1R0=00,第一次设定为反白显示,再次设定变回正常
睡眠
模式
0
0
0
0
0
0
1
SL
X
X
SL=0:
进入睡眠模式
SL=1:
脱离睡眠模式
扩充
功能
设定
0
0
0
0
1
CL
X
RE
G
0
CL=0/1:
4/8位数据
RE=1:
扩充指令操作
RE=0:
基本指令操作
G=1/0:
绘图开关
设定绘图RAM
地址
0
0
1
0
AC6
0
AC5
0
AC4
AC3
AC3
AC2
AC2
AC1
AC1
AC0
AC0
设定绘图RAM
先设定垂直(列)地址AC6AC5…AC0
再设定水平(行)地址AC3AC2AC1AC0
将以上16位地址连续写入即可
备注:
当IC1在接受指令前,微处理器必须先确认其部处于非忙碌状态,即读取BF标志时,BF需为零,方可接受新的指令;如果在送出一个指令前并不检查BF标志,那么在前一个指令和这个指令中间必须延长一段较长的时间,即是等待前一个指令确实执行完成。
2、应用举例
2.1、使用前的准备
先给模块加上工作电压,再按照下图的连接方法调节LCD的对比度,使其显示出黑色的底影。
此过程亦可以初步检测LCD有无缺段现象。
2.2、字符显示
带中文字库的128X64-0402B每屏可显示4行8列共32个16×16点阵的汉字,每个显示RAM可显示1个中文字符或2个16×8点阵全高ASCII码字符,即每屏最多可实现32个中文字符或64个ASCII码字符的显示。
带中文字库的128X64-0402B部提供128×2字节的字符显示RAM缓冲区(DDRAM)。
字符显示是通过将字符显示编码写入该字符显示RAM实现的。
根据写入容的不同,可分别在液晶屏上显示CGROM(中文字库)、HCGROM(ASCII码字库)及CGRAM(自定义字形)的容。
三种不同字符/字型的选择编码围为:
0000~0006H(其代码分别是0000、0002、0004、0006共4个)显示自定义字型,02H~7FH显示半宽ASCII码字符,A1A0H~F7FFH显示8192种GB2312中文字库字形。
字符显示RAM在液晶模块中的地址80H~9FH。
字符显示的RAM的地址与32个字符显示区域有着一一对应的关系,其对应关系如下表所示。
80H
81H
82H
83H
84H
85H
86H
87H
90H
91H
92H
93H
94H
95H
96H
97H
88H
89H
8AH
8BH
8CH
8DH
8EH
8FH
98H
99H
9AH
9BH
9CH
9DH
9EH
9FH
2.3、图形显示
先设垂直地址再设水平地址(连续写入两个字节的资料来完成垂直与水平的坐标地址)
垂直地址围AC5...AC0
水平地址围AC3…AC0
绘图RAM的地址计数器(AC)只会对水平地址(X轴)自动加一,当水平地址=0FH时会重新设为00H但并不会对垂直地址做进位自动加一,
2.4、应用说明
用带中文字库的128X64显示模块时应注意以下几点:
①欲在某一个位置显示中文字符时,应先设定显示字符位置,即先设定显示地址,再写入中文字符编码。
②显示ASCII字符过程与显示中文字符过程相同。
不过在显示连续字符时,只须设定一次显示地址,由模块自动对地址加1指向下一个
字符位置,否则,显示的字符中将会有一个空ASCII字符位置。
③当字符编码为2字节时,应先写入高位字节,再写入低位字节。
④模块在接收指令前,向处理器必须先确认模块部处于非忙状态,即读取BF标志时BF需为“0”,方可接受新的指令。
如果在送出
一个指令前不检查BF标志,则在前一个指令和这个指令中间必须延迟一段较长的时间,即等待前一个指令确定执行完成。
指令执行的
时间请参考指令表中的指令执行时间说明。
⑤“RE”为基本指令集与扩充指令集的选择控制位。
当变更“RE”后,以后的指令集将维持在最后的状态,除非再次变更“RE”位,否则使用相同指令集时,无需每次均重设“RE”位。
⑥控制器接口信号说明:
RS,R/W的配合选择决定控制界面的4种模式:
RS
R/W
功能说明
L
L
MPU写指令到指令暂存器(IR)
L
H
读出忙标志(BF)及地址记数器(AC)的状态
H
L
MPU写入数据到数据暂存器(DR)
H
H
MPU从数据暂存器(DR)中读出数据
七、心得体会
通过这次设计让我对单片机有更加深入的了解,学会了用按键控制和跳转的基本方法,提高了分析程序和硬件电路的能力,对编译调试和下载烧录程序的方法更加熟悉了,自己的焊接技术也相应的提高了,在找资料的过程中不仅掌握了课本上没有的知识还提高了自己的搜索能力,我相信到将来这是一种很宝贵的财富。
学而知不足,这次设计让我学到更多东西的同时也让我看到了自己知识的缺乏,从而促进我不断进取,不断进步。
这次设计我还明白了一个道理:
有些事情不是自己不会做,而是自己并没有去行动,所以才会觉得很难,只有自己用心投入了,事情原来并没有想象中的那么难。
我在设计程序的过程中遇到了不少问题,但在指导老师、组员以及周围各位同学的帮忙下也一一地顺利解决了,在这里我明白了团结合作的重要性,大家互相帮忙才会事半功倍的。
短短一个月的毕业设计即将过去了,但其中很多的画面将永远留在自己脑海中:
老师的谆谆教诲,组员的鼎力支持,周围同学的相互帮忙。
如果说我的人生是有一首乐曲组成,这次经历无疑是其中最美丽的乐谱之一,因为它使了我的大学生涯得到了升华,个人价值得到了肯定,我相信这将对我终生受益。
八、致谢
在做毕业设计(LCD电子显示屏的控制和界面设计)的整个过程中,我的指导老师任斌(副教授)始终都给予了细心的指导和不懈的支持,不厌其烦地为我解决了很多问题,在此致以感谢!
同时,在此也衷心感谢我的同学的出谋划策和对这个毕业设计的关心和帮助!
九、参考文献
[1]全利等编著。
单片机原理及接口技术,高等教育,2004.1。
[2]徐惠民等编著。
单片微型计算机原理、接口及应用,北京邮电大学,2007.8。
[3]郭速学等编著。
图解单片机功能与应用,中国电力,2008.2。
[4]康维新等编著。
MCS-51单片机原理与应用,中国轻工业,2009.9。
[5]汪道辉等编著。
单片机系统设计与实践,电子工业,2006.5。
十、源程序和原理图
源程序:
RSEQUP0.7
RWEQUP0.6
EEQUP0.5
PSBEQUP0.4
RSTEQUP0.2
COMEQU20H
DATEQU21H
;已用资源R2R3R4R6R7
;以上是接口定义
ORG0000H
LJMPSTART
ORG30H
START:
SETBPSB;并行模式
SETBRST;禁止复位
MOVCOM,#30H;功能设置---8BIT控制界面,基本指令集
CALLWRI
LCALLDELAY
MOVCOM,#0FH;显示打开,光标关,反白显示关
ACALLWRI
LCALLDELAY
LCALLCLEAR;清屏
;显示主菜单
MENU:
MOVR1,#80H;游标初始位置
LCALLCLEAR
MOVCOM,#81H;在第一行第二位置开始显示"诗歌"
MOVDPTR,#DAB_MENU1
MOVR2,#4
LCALLPLAY
MOVCOM,#91H;在第一行第二位置开始显示"图片"
MOVDPTR,#DAB_MENU2
MOVR2,#4
LCALLPLAY
MOVCOM,#89H;在第一行第二位置开始显示"制作人"
MOVDPTR,#DAB_MENU3
MOVR2,#6
LCALLPLAY
MENU_YOUBIAO:
MOVCOM,R1;游标地址设定
ACALLWRI
LCALLDELAY
MOVCOM,#0FH;显示打开,光标,反白显示关
ACALLWRI
LCALLDELAY
MENU_NEXT:
MOVR1,#80H
M_KEY1:
MOVP2,#11111111B
MOVA,P2
CLRC
SUBBA,#11111110B
JZM_UP
MOVA,P2
CLRC
SUBBA,#11111101B
JZM_DOWN
MOVA,P2
CLRC
SUBBA,#11111011B
JZM_BACK
MOVA,P2
CLRC
SUBBA,#11110111B
JZM_SURE
LJMPM_KEY1
;向上选择菜单
M_UP:
;确定游标位置
ACALLDELAY10;延时10毫秒消触点抖动
JBP2.0,M_KEY1;去除干扰信号
JNBP2.0,$;等待按键松开
CJNER1,#80H,M_UP1
MOVR1,#88H
LJMPM_YOUBIAO_WRI
M_UP1:
CJNER1,#90H,M_UP2
MOVR1,#80H
LJMPM_YOUBIAO_WRI
M_UP2:
CJNER1,#88H,M_KEY1
MOVR1,#90H
LJMPM_YOUBIAO_WRI
;向下选择菜单
M_DOWN:
;确认游标位置
ACALLDELAY10;延时10毫秒消触点抖动
JBP2.1,M_KEY1;去除干扰信号
JNBP2.1,$;等待按键松开
CJNER1,#80H,M_DOWN1
MOVR1,#90H
LJMPM_YOUBIAO_WRI
M_DOWN1:
CJNER1,#90H,M_DOWN2
MOVR1,#88H
LJMPM_YOUBIAO_WRI
M_DOWN2:
CJNER1,#88H,M_KEY1
MOVR1,#80H
M_YOUBIAO_WRI:
MOVCOM,R1;写游标
LCALLWRI
LCALLDELAY
MOVCOM,#0FH
LCALLWRI
LCALLDELAY
SB:
LJMPM_KEY1
M_BACK:
ACALLDELAY10;延时10毫秒消触点抖动
JBP2.2,M_KEY1;去除干扰信号
JNBP2.2,$;等待按键松开
LJMPMENU
M_SURE:
ACALLDELAY10;延时10毫秒消触点抖动
JBP2.3,SB;去除干扰信号
JNBP2.3,$;等待按键松开
LJMPMENU_SURE
;主菜单键盘扫描
KEYSCAN:
MOVP2,#11111111B
KEY1:
MOVA,P2
CLRC
SUBBA,#11111110B
JZMENU_SHI
MOVA,P2
CLRC
SUBBA,#11111101B
JZMENU_PIC
MOVA,P2
CLRC
SUBBA,#11111011B
JZMENU_ZHI
MOVA,P2
CLRC
SUBBA,#11110111B
JZMENU_SURE
LJMPKEYSCAN
;按键对应程序
MENU_SHI:
ACALLDELAY10;延时10毫秒消触电抖动
JBP2.0,KEYSCAN;去除干扰信号
JNBP2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- LCD 电子显示屏 控制 界面设计 毕业论文