LCD驱动在屏幕上显示班级和姓名.docx
- 文档编号:3573348
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:7
- 大小:482.95KB
LCD驱动在屏幕上显示班级和姓名.docx
《LCD驱动在屏幕上显示班级和姓名.docx》由会员分享,可在线阅读,更多相关《LCD驱动在屏幕上显示班级和姓名.docx(7页珍藏版)》请在冰豆网上搜索。
LCD驱动在屏幕上显示班级和姓名
LCD驱动(在屏幕上显示班级和姓名)
一、实验原理
1.方案:
(1)显示内存与液晶显示屏(LCD 128*64)的关系;
(2)利用8255芯片的PA口作为液晶显示器接口的数据线,PC口作为其控制线,自建字库后,通过查表程序依次将字库中的字形代码送显示内存显示汉字或图形;
(3)编程流程:
开显示→设置页地址→设置Y地址→写数据表1→写数据表2;
(4)显示控制指令表
2、硬件原理图
CPU的AD0-AD7与8255的数据线D0-D7相连接,CPU的读/写控制信号与8255的读/
写控制信号相连接,CPU的端口选择信号(A1、A0)与8255的端口选择信号(A1、A0)相连接,CPU片选信号CS(低电平有效)与8255的A口控制地址相连接。
各模块说明:
从图中可知,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读入的外设状态信息,都是通过这个缓冲器传送的。
LCD液晶显示屏的原理:
LCD是依赖极化滤光器(片)和光线本身。
自然光线是朝四面八方随机发散的。
极化滤光器实际是一系列越来越细的平行线。
这些线形成一张网,阻断不与这些线平行的所有光线。
极化滤光器的线正好与第一个垂直,所以能完全阻断那些已经极化的光线。
只有两个滤光器的线完全平行,或者光线本身已扭转到与第二个极化滤光器相匹配,光线才得以穿透。
LCD正是由这样两个相互垂直的极化滤光器构成,所以在正常情况下应该阻断所有试图穿透的光线。
但是,由于两个滤光器之间充满了扭曲液晶,所以在光线穿出第一个滤光器后,会被液晶分子扭转90度,最后从第二个滤光器中穿出。
LCD由两块玻璃板构成,厚度规格有0.7mm,0.63mm,0.5mm(也可以通过物理或者化学减薄的方式做到更薄),其间由包含有液晶(LC)材料的3~5μm均匀间隔隔开。
因为液晶材料本身并不发光,所以需要给显示屏配置额外的光源,在液晶显示屏背面有一块导光板(或称匀光板)和反光膜,导光板的主要作用是将线光源或者点光源转化为垂直于显示平面的面光源。
背光源发出的光线在穿过第一层偏振过滤层之后进入液晶层。
液晶层中的水晶液滴都被包含在细小的单元格结构中,一个或多个单元格构成屏幕上的一个像素。
在玻璃板与液晶材料之间是透明的电极,电极分为行和列,在行与列的交叉点上,通过改变电压而改变液晶的旋光状态,液晶材料的作用类似于一个个小的光阀。
在液晶材料周边是控制电路部分和驱动电路部分。
当LCD中的电极产生电场时,液晶分子就会产生扭曲,从而将穿越其中的光线进行有规则的折射,然后经过第二层过滤层的过滤在屏幕上显示出来。
2.2 实验部分接线:
(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、实验代码分析
3.1显示左半屏
在屏幕上输出字符时,在屏幕上显示左半屏的字。
首先要先对PC口进行设置,PC4控制左半屏,通过对PC6和PC4的输入来选择左半屏输出。
MOV DX,PCTL;右半屏选通无效
MOV AL,CS2N
OUT DX,AL
MOV AL,CS1
OUT DX,AL
CALL XPAGE 设置X,Y,PAG
CALL COM ;显示字符
3.2显示右半屏
在屏幕上输出字符时,在屏幕上显示右半屏的字。
首先要先对PC口进行设置,PC6控制右半屏,通过对PC6和PC4的输入来选择右半屏输出。
MOV DX,PCTL
MOV AL,CS1N ;左半屏选通无效
OUT DX,AL
MOV AL,CS2 ;右半屏选通有效
OUT DX,AL
CALL XPAGE ;设置X,Y,PAG
CALL COM ;显示字符
3.3 设置X、Y、Z
在液晶屏上显示字符,用Z来控制循环(循环从第一行开始)。
用X和Y分别来设置地址和页数,在数据输入后要先对数据进行锁存。
MOV ZR,0c0H
MOV YR,40H
MOV PAG,0B8H
MOV DX,PA
MOV AL,ZR 设置Z=0
OUT DX,AL
MOV AL,YR 设置Y
OUT DX,AL
MOV AL,PAG 设置页数
OUT DX,AL
3.2.4 控制输出方式
在液晶屏上输出字符,Y16就是控制输出一个字符,通过PA口输出字符。
MOV Y16,10H
MOV BX,OFFSET
TAB5 J4:
MOV AL,CS:
[BX]
MOV DX,PA
OUT DX,AL ;PA口输出
INC BX
DEC Y16
CMP Y16,00H ;判断字符是否输出结束
JNZ J42
J42:
JMP J4
3.4 锁存数据
当R/W=’L’时,E信号下降沿锁存DB7-DB0,当R/W=’H’,E=’H’时,DRAM数据读到DB7-DB0。
MOV DX,PCTL ;PC1=0
MOV AL,RWN
OUT DX,AL
MOV AL,EN ;PC2=0
OUT DX,AL
4、系统调试
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)由于代码太长,不易理解,根据需要自行修改代码,使我们更加能够理解其原理。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- LCD 驱动 屏幕 显示 班级 姓名