液晶频文档格式.docx
《液晶频文档格式.docx》由会员分享,可在线阅读,更多相关《液晶频文档格式.docx(13页珍藏版)》请在冰豆网上搜索。
3.2.4锁存数据8
第四章系统调试10
4.1调试手段10
4.2调试过程中的问题10
4.3解决办法10
总结11
参考文献12
第一章系统设计
1.1题目要求
一、任务:
利用取模软件建立标准字库,编制程序,在液晶显示器上显示汉字
二、要求:
(1)了解点阵式液晶显示器工作原理和显示方法;
(2)掌握8088微机系统与液晶显示器之间接口设计与编程;
(3)进一步理解和消化书本知识,运用所学知识和技能进行简单的设计;
(4)通过课程设计提高应用能力,分析问题和解决问题的能力;
(5)培养查阅资料的习惯,训练和提高自学,独立思考的能力。
1.2方案论证
1.方案一:
(1)显示内存与液晶显示屏(LCD128*64)的关系;
(2)利用8255芯片的PA口作为液晶显示器接口的数据线,PC口作为其控制线,自建字库后,通过查表程序依次将字库中的字形代码送显示内存显示汉字或图形;
(3)编程流程:
开显示→设置页地址→设置Y地址→写数据表1→写数据表2;
(4)显示控制指令表。
图1-1方案一流程图
2.方案二:
本设计是以单片机为核心控制器件的简单文字符号图像的LCD显示系统,通过硬件和软件的共同配合之下实现了在128*64分辨率的液晶屏上显示字符、汉字、数字的功能,系统由单片机和液晶显示屏构成。
AT89C51单片机内部有4KB可反复擦写的Flash闪速存储器、128位字节的RAM,可以根据系统所需存储容量的大小来扩展ROM和RAM,可以根据系统所需存储容量的大小来扩展ROM和RAM。
图1-2控制模块原理图图1-3AT89C51单片机示意图
1.3实施方案
经过小组对各个方案的讨论与研究,了解各方案的实施可行性,最终我们选择方案一。
因为方案一更接近我们本学期所学的内容,我们更能理解其原理和硬件设备,便于实验的进行。
而方案二中所用的硬件设备是实验室所不具备的,不能实现其功能;
方案三中用到还未涉及到的单片机知识,光靠我们现阶段的知识储备以及网上的部分资料,并不能完成实验,所以最终我们确定方案一。
第二章硬件设计
2.1硬件原理图
图2-18255与LCD128*64的连线图
CPU的AD0-AD7与8255的数据线D0-D7相连接,CPU的读/写控制信号与8255的读/写控制信号相连接,CPU的端口选择信号(A1、A0)与8255的端口选择信号(A1、A0)相连接,CPU片选信号CS(低电平有效)与8255的A口控制地址相连接。
2.1.1各模块说明
图2-28255内部结构
从图中可知,8255A由以下三部分组成:
1.外设接口部分(数据端口A、B、C)
a)端口A:
端口A内部包含一个8位数据输入锁存器和一个8位数据输出锁存/缓冲器;
b)端口B:
端口B内部包含一个8位数据输入缓冲器和一个8位数据输出锁存/缓冲器;
c)端口C:
端口C内部包含一个8位数据输入缓冲器和一个8位数据输出锁存/缓冲器。
通过向芯片写入方式选择控制字,端口C可以被分成两个4位端口。
2.内部逻辑(A组和B组控制电路)
这两组控制电路,根据芯片内部的控制寄存器内容(存放着CPU输出的方式选择控制字)和“读/写控制逻辑”发出的读/写命令,控制两组端口的工作方式和读/写操作。
A.组控制电路控制端口A、端口C高4位(PC7~PC4)。
B.组控制电路控制端口B、端口C低4位(PC3~PC0)。
3.CPU接口部分
a)读/写控制逻辑电路地址线A1和A0、CS(片选)、RD(读控制)、WR(写控制)、RESET(复位)信号的组合,用来控制8255A进行数据信息、状态信息和控制信息的传输;
b)数据总线缓冲器它是一个8位的双向三态数据缓冲器,它是8255A与CPU数据总线的接口,所有数据的输入/输出,以及CPU用输出指令向8255A发出的控制字和用输入指令向8255A发出的控制字和用输入指令从8255A读入的外设状态信息,都是通过这个缓冲器传送的。
表2-1LCD128*64部分引脚说明
引脚号
引脚名称
电平
功能说明
4
RS(CS)
H/L
并行的指令/数据选择信号(串行的片选信号,高有效)
5
R/W
并行的读写选择信号(串行的数据口)
6
E(CLK)
并行的使能信号(串行的同步时钟)
7
DB0
数据端口
8
DB1
9
DB2
10
DB3
11
DB4
12
DB5
13
DB6
14
DB7
15
CS1
——
16
CS2
17
RST
复位(低电平有效)
2.1.2LCD液晶显示屏的原理
LCD是依赖极化滤光器(片)和光线本身。
自然光线是朝四面八方随机发散的。
极化滤光器实际是一系列越来越细的平行线。
这些线形成一张网,阻断不与这些线平行的所有光线。
极化滤光器的线正好与第一个垂直,所以能完全阻断那些已经极化的光线。
只有两个滤光器的线完全平行,或者光线本身已扭转到与第二个极化滤光器相匹配,光线才得以穿透。
LCD正是由这样两个相互垂直的极化滤光器构成,所以在正常情况下应该阻断所有试图穿透的光线。
但是,由于两个滤光器之间充满了扭曲液晶,所以在光线穿出第一个滤光器后,会被液晶分子扭转90度,最后从第二个滤光器中穿出。
LCD由两块玻璃板构成,厚度规格有0.7mm,0.63mm,0.5mm(也可以通过物理或者化学减薄的方式做到更薄),其间由包含有液晶(LC)材料的3~5μm均匀间隔隔开。
因为液晶材料本身并不发光,所以需要给显示屏配置额外的光源,在液晶显示屏背面有一块导光板(或称匀光板)和反光膜,导光板的主要作用是将线光源或者点光源转化为垂直于显示平面的面光源。
背光源发出的光线在穿过第一层偏振过滤层之后进入液晶层。
液晶层中的水晶液滴都被包含在细小的单元格结构中,一个或多个单元格构成屏幕上的一个像素。
在玻璃板与液晶材料之间是透明的电极,电极分为行和列,在行与列的交叉点上,通过改变电压而改变液晶的旋光状态,液晶材料的作用类似于一个个小的光阀。
在液晶材料周边是控制电路部分和驱动电路部分。
当LCD中的电极产生电场时,液晶分子就会产生扭曲,从而将穿越其中的光线进行有规则的折射,然后经过第二层过滤层的过滤在屏幕上显示出来。
(1)CPU的AD0-AD7与8255的数据线D0-D7相连接
(2)CPU的读/写控制信号与8255的读/写控制信号相连接;
(3)CPU的端口选择信号(A1、A0)与8255的端口选择信号(A1、A0)相连接;
(4)CPU片选信号CS(低电平有效)与8255的A口控制地址相连接;
(5)8255的PA7-PA0与LCD128*64的DB7-DB0相连接;
(6)8255的PC0与LCD128*64的RS端口连接;
(7)8255的PC1与LCD128*64的R/W端口连接;
(8)8255的PC2与LCD128*64的E端口连接;
(9)8255的PC4与LCD128*64的CS1端口连接;
(10)8255的PC6与LCD128*64的CS2端口连接;
(11)LCD128*64的/RST端口与实验箱上的/RST端口连接;
(12)在P.状态下,按SCAL;
(13)运行程序LCDQD.ASM;
或在实验系统处于P.状态下输入[22E0]→[EXEC]即可。
第三章软件设计
3.1流程图
图3-1程序流程图
先对8255进行初始化,设置其A口、C口为输出状态。
先设置左半屏显示,再进行X、Y、PAG的设置,左半屏便会显示要输出的内容,然后再设置右半屏显示,同样要设置X、Y、PAG的值,右半屏也会显示要输出的内容,而且实验输出时是一行一行的输出,一行输出结束后才进行下一行的判断、输出。
3.2实验代码分析
3.2.1显示左半屏
在屏幕上输出字符时,在屏幕上显示左半屏的字。
首先要先对PC口进行设置,PC4控制左半屏,通过对PC6和PC4的输入来选择左半屏输出。
MOVDX,PCTL;
右半屏选通无效
MOVAL,CS2N
OUTDX,AL
MOVAL,CS1;
左半屏选通有效
CALLXPAGE;
设置X,Y,PAG
CALLCOM;
显示字符图3-2显示左半屏流程图
3.2.2显示右半屏
在屏幕上输出字符时,在屏幕上显示右半屏的字。
首先要先对PC口进行设置,PC6控制右半屏,通过对PC6和PC4的输入来选择右半屏输出。
MOVDX,PCTL
MOVAL,CS1N;
左半屏选通无效
MOVAL,CS2;
右半屏选通有效
CALLXPAGE;
CALLCOM;
显示字符
图3-3显示右半屏流程图
3.2.3设置X、Y、Z
在液晶屏上显示字符,用Z来控制循环(循环从第一行开始)。
用X和
Y分别来设置地址和页数,在数据输入后要先对数据进行锁存。
MOVZR,0c0H
MOVYR,40H
MOVPAG,0B8H
MOVDX,PA
MOVAL,ZR;
设置Z=0
MOVAL,YR;
设置Y
MOVAL,PAG;
设置页数
OUTDX,AL图3-4设置X、Y、Z的流程图
3.2.4控制输出方式
在液晶屏上输出字符,Y16就是控制输出一个字符,通过PA口输出字符。
MOVY16,10H
MOVBX,OFFSETTAB5
J4:
MOVAL,CS:
[BX]
OUTDX,AL;
PA口输出
INCBX
DECY16
CMPY16,00H;
判断字符是否输出结束
JNZJ42图3-5控制输出流程图
J42:
JMPJ4
3.2.4锁存数据
当R/W=’L’时,E信号下降沿锁存DB7-DB0,当R/W=’H’,E=’H’时,DRAM数据读到DB7-DB0。
MOVDX,PCTL;
PC1=0
MOVAL,RWN
OUTDX,AL
MOVAL,EN;
PC2=0
OUTDX,AL图3-6锁存数据流程图
第四章系统调试
4.1调试手段
调试工具:
dice8088
(1)利用dice8088完成代码的编辑,编译与连接(执行菜单项:
“调试”,“编译程序”)。
(2)编译连接通过的程序通过RS323串口装载置实验硬件系统中(执行菜单项:
“调试”-“编译程序”)。
此操作必须在PC机与实验箱通信正常连接的前提下进行(在dice8088应用程序中状态栏中有联机信息);
造成联机时报的原因有:
串口线未连接(重新连接串口线);
通信数据出错(关闭试验箱电源和dice8088应用程序,然后先打开实验箱电源,再执行dice8088应用程序);
硬件系统哦那个处于非接收状态(只有在实验箱上的第一位数码管显示P.时方可装载程序,可通过按实验箱上的复位按钮使其恢复到P.状态);
(3)运用程序:
方法一、通过dice8088应用程序控制实验箱中得程序运用(执行菜单项;
”调试”-“连续运行”);
方法二、通过实验箱的小键盘运行程序,先在P.状态下输入代码起始地址(本程序的起始地址为:
11B0),后按小键盘上的执行按钮(EX),此时数码管的最高位显示程序运行提示符“”。
在“”提示符下,PC机时无法实现对实验箱进行程序装载的,只有使实验箱恢复到“P.”方可装载。
4.2调试过程中的问题
1.起初程序运行时,不能正常装载数据,LCD显示器显示不出编辑的内容;
2.程序正常装载时,LCD显示屏出现花屏,与要输出的内容不符;
3.尝试输出不同的字,但不能正常装载。
4.3解决办法
1.实验箱上LCD显示屏与内存连接时,/RST端口没有连接;
2.深入了解代码,理解大部分代码的含义,并适当修改部分代码,直到LCD显示屏上出现所要输出内容;
3.由于代码太长,不易理解,根据需要自行修改代码,使我们更加能够理解其原理。
总结
在临近期末的时候,我们进行了微机实验原理的课程设计,这次是我们第一次做微机原理课的课程设计,同时关于液晶屏也是第一次接触。
微机实验原理同其他的汇编语言一样,刚开始都有点担心,害怕做的不够好,毕竟第一次做微机原理的课程设计,但是跟以往的汇编语言课程设计一样,过程是充满乐趣的,特别是当运行出来结果的那一瞬间,感觉很开心,很兴奋,毕竟是自己劳动所努力出来的结果,很欣慰。
通过这次实验,我们了解到我们以往的许多不足及错误之处,但伴随而来的也有淡淡的成功与更进一步的喜悦。
它使我们的理论知识与实践更充分地结合,还具有较强的实践能力。
在设计过程中好多电路图看起来简单,但要我们编译却非常难,这时就需要我们对理论知识的应用。
这次课程设计中遇到了诸如程序的代码太长,不易理解;
实验箱上的LCD显示屏中显示不出文字或者花屏等问题。
但在我们组员的讨论以及老师的悉心指导下,才一个个的解决了这些问题。
这次的实习使我意识到理论知识和实践能力的不足,所以,在以后的学习生活中,我需要更努力地读书和实践。
还有的就是培养了跟同学之间的合作意识,这对即将踏入社会的我们来说是宝贵的经验,踏入社会准归会遇到问题,这就得靠团队来合作,这次的课程设计我觉得很充实,学到了很多。
这一周,我们不但巩固了以前所学过的知识,还对点阵式液晶显示器工作原理和显示方法有所了解。
通过这次课程设计使我懂得了理论与实际相结合很重要,必须把所学的理论知识与实践相结合起来。
参考文献
[1]朱金钧,麻新旗.微型计算机原理及应用技术.北京:
机械工业出版社.2005
[2]DICE-8086K微机接口原理实验指导书.启东:
启东计算机总厂有限公司.2008
[3]杨金胜.现代微机原理与接口技术.电子工业出版社.2007
[4]王惠中,王强,王贵锋.微机原理及应用.武汉:
武汉大学出版社.2011
课程设计独创性声明:
本课程设计由本小组人员经过讨论与研究后独立完成。
我们通过已学知识结合有关材料认真完成课程设计报告。
学生签名:
指导教师评语:
课程设计成绩:
指导教师签名:
教研室意见:
教研室主任签名: