单片机液晶显示资料

  • 格式:ppt
  • 大小:2.86 MB
  • 文档页数:89

下载文档原格式

  / 89
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
读/写标志位R/W=0时,进行写操作
把指令数据送至P0口(LCD数据线DB7~DB0)
LCD使能信号E至高电平后再过两个时钟周期至低电平,产 生一个下降沿信号,往LCD写入指令代码,LCD执行命令
调用延时子程序DELAY
子程序返回
图6.7 写入指令数据到LCD子程序流程图
h
18
(4) 字符显示子程序模块设计
开始
当RS=1时,选择数据寄存器
读/写标志位R/W=0时,进行写操作
把显示数据送至P0口(LCD数据线DB7~DB0)
LCD使能信号E至高电平后再过两个时钟周期至低电平,产生一 个下降沿信号,往LCD写入显示数据
子程序返回
图6.6 写入显示数据到LCD子程序流程图
h
17
(3) 写入指令数据到LCD子程序模块设计
当LCD1602的寄存器选择信号RS为0时,选择指令寄存器;当LCD1602的读写 选择线R/W为0时,进行写操作;当LCD1602的使能信号E至高电平后再过两个时 钟周期至低电平,产生一个下降沿信号,往LCD写入指令代码。写入指令数据到
LCD子程序设计流程图如图6.7所示。
开始 RS=0时,选择指令寄存器
h
8
表5-2 字符发生存储器字符代码与显示字符关系
h
9
4、LCD1602指令表 1602液晶模块内部的控制器共有11条控制指令,如表5-3所示。
表5-3 1602指令表
h
10
h
11
• 液晶显示模块是一个慢显示器件,所以在执行每条指令之 前一定要确认模块的忙标志为低电平,表示不忙,否则此 指令失效。要显示字符时要先输入显示字符地址,也就是 告诉模块在哪里显示字符,表5-4是DM-1602的内部显示 地址。 表5-4 1602地址表
这里介绍的字符型液晶模块是一种用5x7点阵 图形来显示字符的液晶显示器,根据显示的容量 可以分为1行16个字、2行16个字、2行20个字等 等,这里以常用的2行16个字的1602液晶模块来 介绍它的编程方法。
h
6
2、液晶引脚定义 表5-1 LCD1602引脚功能
h
7
3、字符代码与显示字符关系
1602液晶模块内部的字符发生存储器(CGROM)已 经存储了160个不同的点阵字符图形,如表5-2所示, 这些字符有:阿拉伯数字、英文字母的大小写、常用 的符号、和日文假名等,每一个字符都有一个固定的 代码,比如大写的英文字母“A”的代码是01000001B (41H),显示时模块把地址41H中的点阵字符图形显 示出来,我们就能看到字母“A” 。
设置LCD的DDRAM地址,调用写入指令到LCD子程序设置DDRAM地址指针; 然后设置显示数据个数R7,设置显示数据索引值R6,将显示数据表地址送 入DPTR中,用查表指令查表取得显示数据,调用写入显示数据到LCD子程序, 使数据显示在LCD上;显示数据个数R7减1,显示数据索引值R6加1,按照上 面的步骤显示下一个数据,直到显示数据个数R7为0,所有字符均显示在 LCD上。字符显示子程序设计流程图如图6.8所示。
h
21
【项目实践】 开始
功能设置命令
调用写入指令到LCD子程序
设定工作方式
图6.9 LCD 初始化 子程序 流程图
调用写入指令到LCD子程序 设置显示状态
调用写入指令到LCD子程序 wenku.baidu.com屏
比如第二行第一个字符的地址是40H,那么是否直接写入40H 就可以将光标定位在第二行第一个字符的位置呢?这样不行, 因为写入显示地址时要求最高位D7恒定为高电平1所以实际写 入的数据应该是 01000000B(40H)+10000000h B(80H)=11000000B(C0H) 12
二、时序图 1、1602基本操作时序
h
19
【项目实践】
图6.8 字符显示子程序流程图
h
20
【项目实践】
(5) LCD初始化子程序模块设计 1602字符型LCD的初始化过程为: 延时15ms,写指令38H(不检测忙信号); 延时5ms,写指令38H(不检测忙信号); 延时5ms,写指令38H(不检测忙信号); 以后每次写指令、读/写数据操作均需要检测忙信号; 写指令38H:显示模式设置; 写指令08H:显示关闭; 写指令01H:显示清屏; 写指令06H:显示光标移动设置; 写指令0CH:显示开及光标设置。 根据它的初始化过程,LCD初始化子程序设计流程图如 图6.9所示。
课题四 液晶显示
• 任务一 1602液晶显示 • 任务二 12864液晶显示
h
1
• 课题目标
本课题的任务是用单片机实现液晶显示, 演示效果如图5-1所示。通过编程,学会在 单片机上实现液晶显示控制方法,以及不 同数据显示的程序编写方法。
h
2
图5-1 液晶显示效果图
h
3
任务一 1602液晶显示方式
本任务就是将单片机与1602液晶接成 图5-2所示电路图,编程实现。用液晶显 示出”I LIKE MCU” “WWW.CQWU.EDU.CN”
h
4
图5-2 液晶显h 示电路图
5
一、液晶显示原理
1、液晶显示器及其特点 液晶显示器以其微功耗、体积小、显示内容丰富、 超薄轻巧的诸多优点,没有电磁辐射、寿命长等 优点,在袖珍式仪表和低功耗应用系统中得到越 来越广泛的应用。
2、写操作时序
h
13
图5-5 操作时序图
3、时序时间表
表5-5 时序表
h
14
【项目实践】
3.程序设计 (1) 主程序设计 主程序主要完成硬件初始化、子程序调用等功能。
① 初始化 通过初始化设置堆栈栈底为60H,调用LCD初始 化子程序完成对LCD的初始化设置。 ② 字符显示 完成对LCD初始化后,调用LCD字符显示子程序 显示第一行字符和第二行字符。 主程序设计流程图如图6.5所示。
h
15
开始
初始化堆栈指针
调用LCD初始化子程序
调用字符显示子程序显示第一行 字符
调用字符显示子程序显示第二行 字符
图6.5 主程序流程图
h
16
(2) 写入显示数据到LCD子程序模块设计
当LCD1602的寄存器选择信号RS为1时,选择数据寄存器;当LCD1602 的读写选择线R/W为0时,进行写操作;当LCD1602的使能信号E至高电平 后再过两个时钟周期至低电平,产生一个下降沿信号,往LCD写入显示数 据。写入显示数据到LCD子程序设计流程图如图6.6所示。