《液晶显示程序设计》PPT课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
LCD如何显示汉字
汉字的显示一般采用图形方式,事先从微机中提 取汉字点阵码,每个汉字占32B,分左右两部分。左 边为1、3、5等,右边为2、4、6等,根据在LCD上开 始显示的行列号及每行的列数可找出显示RAM对应的 地址,确定光标位置,送上要显示的汉字的第一字节 送第二字节时光标位置加1;换行按列对齐,直到32B 显示完就可以在LCD上得到一个完整的汉字。
LCD如何显示字符
如果一个字符由6×8或8×8点阵构成,那么在显 示时既要找到和显示屏上某几个位置对应的显示RAM 区的8B,又要使每个字节的不同位为1,其他为0。为 1的点亮,为0的点不亮,这样就组成了某个字符。对 于带有字符发生器的控制,可让控制器工作在文本方 式,根据在LCD上开始显示的行列号及每行的列数找 出显示RAM对应的地址,设立光标,在此送上该字符 对应的代码即可。
LCD内部内存结构
固定字型ROM称为CGROM。(Character Generator)
内部存储有192个5×7点阵字型且均已固定。例如 将A写入LCD中时,是将A的ASC码41H写入DDRAM中,同 时到CGROM中将A的字型点阵数据找出来显示在LCD上。 数据显示RAM称为DDRAM。(Data Display) 用来存储写入LCD内部的字符。其地址分布从00H 到67H,分别表示LCD的各行位置。 用户自定义字型RAM称为CGRAM。 只有64B,将用户自定义的字型写入LCD中,一个字的 大小为5×7点阵,共能存储8个字型,其显示代码为00H07H。
液晶显示原理
液晶显示的原理是利用液晶的物理特性,通过电 压对其显示区域进行控制,有电就显示黑色,这样即 可显示图形。液晶显示器的厚度薄、适于大规模集成 电路直接驱动、易于实现全彩色显示的特点,广泛应 用在笔记本电脑、数字音像产品、PDA移动通信工具 等众多领域。
液晶显示器的分类
LCD的分类方法有很多,通常可按其显示方式 分为段式、点字符式、点阵式等。除黑白显示外, LCD还有多灰度和彩色显示等。根据驱动方式来分, 可分为静态驱动(Static)、单纯矩阵驱动(Simple Matrix)和主动矩阵驱动(Active Matrix)三种。根 据显示内容的不同,可分为数显液晶模块、液晶点 阵字符模块和点阵图形模块。
液晶显示模块的电路特性
TG12864由行驱动器/列驱动器及128(列)×64(行) 点的全屏幕点阵组成,可显示图形、8×4个16×16点阵 的汉字。电路有一片行驱动器和两片列驱动器。
行驱动
为0 时最亮
为0且写时,写 入指令寄存器; 为0且读时,读 取忙碌标志及 地址计数器的 内容;为1时作 读写寄存器
LCD如何显示线段
点阵图形液晶由M×N个显示单元构成。假设显 示屏有64行,每行有128列,每8列对应1B的8b,则 每行由16B,共16×8=128个点组成,屏上64×16个 显示单元与显示RAM区的1KB对应,每1B的内容与显 示屏相应位置的亮暗对应。例如屏的第一行的亮暗 由RAM区的000H-00FH的16B内容决定,当(000)=FFH 时,屏的左上角显示一条短亮线,长度为8个点;当 (3FFH)=FFH时,显示屏右下角显示一条短亮线。
点阵图形模块类型
类 型 驱动方式 功 能
行列驱动型 外接专用控制器 只有通用的行列驱动器 行列驱动 控制型 依靠计算机直接 具有I/O总线数据接口, 控制驱动 省去了专用控制器。 控制器是液晶驱动器与 计算机的接口,接受反 馈计算机的各种信息, 有自己的专用指令和字 符发生器CGROM。
行列控制型 内藏控制器
}
LCD内部控制方式
用CPU来控制LCD模块,方式十分简单.LCD模块内部 可看成两组寄存器:指令和数据寄存器,用RS引脚控制。 所有对寄存器的存取均需检查LCD内部的忙碌标志,此 标志告诉LCD内部正在工作不允许接收任何控制指令。 该位的检查可令RS=0,用读取位7来加以判断,当此位 为0时,才可以写入指令或数据寄存器。
初始化LCD:init_lcd()
init_lcd() { write_com(0x3c); //双行显示,字型使用 5×10点阵 //出现光标,不闪烁/ //每次向右移一位,显示屏 不移动 //清除LCD显示屏
write_com(0x0e); write_com(0x06); write_com(0x01);
为0时写为1时读
使能控制为1有效
Fra Baidu bibliotek
LCD显示字符的原理与方法
要在液晶上显示一个字符,需要3个最基本的控制 操作:分别向两个列驱动控制器写指令代码、写显示数 据和读显示数据。完成上述操作的条件是相应列驱动控 制器处于准备好的状态,因此在访问前,要先读取控制 器的当前状态,判断是否准备好。
LCD控制指令
写数据到LCD:write_data()
将数据经过数据端口(LCD_data)写入LCD。 write_data(unsigned char d) { unsigned char in; while(1) { in=lcd_com; //读取状态端口 if((in&0x80)==0)break; //判断LCD是否空闲 } lcd_data=d; //写命令至LCD }
• 忙碌标志读取 • 显示器开关 • 光标归位设定:地址计数器清0,DDRAM数据不变,光标 移到左上角。 • CGRAM地址设定 • DDRAM地址设定 • 显示光标移位 • 写数据到CGRAM或DDRAM中:先设定地址,再写数据从 CGRAM或DDRAM中读取数据:先设定地址,再读取数据 • 清除显示器:将DDRAM数据全部填入空白代码20H,执行 该命令将清除显示器内容,同时光标移至左上角。 • 设定字符进入模式: • 功能设定
初始化LCD
对LCD的初始化工作包括以下4项: 1.选择LCD显示功能 2.设定LCD显示方式 3.设定LCD字符进入模式 4.清除显示屏 根据以上工作设定LCD工作模式。
写命令到LCD:write_com()
查看忙碌标志,可令RS引脚为0,读取位7来判断。 write_com(unsigned char c) { unsigned char in; while(1) //循环 { in=lcd_com; //读取状态端口 if(in&0x80)==0)break; //判断LCD是否闲 } lcd_com=c; //写命令至LCD }