置字符发生存贮器7 地址 0 0 0 1 字符发生存贮器地址 8 置数据存贮器地址 0 0 1 显示数据存贮器地址 9 读忙标志或地址 写数到CGRAM或10 DDRAM) 从CGRAM或DDRAM11 读数 1 1 读出的数据内容 1 0 0 1 BF 计数器地址 要写的数据内容 LCD1602液晶模块的读写操作,屏幕和光标的操作都是通过指令编程来实现的。(说明1为高电平,0为低电平) 指令1:清显示,指令码01H,光标复位到地址00H位置 指令2:光标复位,光标返回到地址00H
指令3:光标和显示位置设置I/D,光标移动方向,高电平右移,低电平左移,S:屏幕上所有文字是否左移或右移,高电平表示有效,低电平表示无效。
指令4:显示开关控制。D:控制整体的显示开与关,高电平表示开显示,低电平表示关显示。C:控制光标的开与关,高电平表示有光标,低电平表示无光标 B:控制光标是否闪烁,高电平闪烁,低电平不闪烁。
指令5:光标或显示移位 S/C :高电平时显示移动的文字,低电平时移动光标。
指令6:功能设置命令 DL:高电平时为4位总线,低电平时为8位总线 N:低电平时为单行显示,高电平时为双行显示,F:低电平时显示5X7的点阵字符,高电平时显示5X10的显示字符。 指令7:字符发生器RAM地址设置。 指令8:DDRAM地址设置。
指令9:读忙信号和光标地址 BF:忙标志位,高电平表示忙,此时模块不能接收命令或数据,如果为低电平表示不忙。 读写操作时序如图所示:
图2.7 LCD1602读时序图
图2.8 LCD1602写操作时序 (2) LCD1602的RAM地址映射及标准字库表:
液晶显示模块是一个慢显示器件,所以在执行每条指令之前一定要确认模块的忙标志为低电平,表示不忙,否则此指令失效。要显示字符时要先输入显示字符地址,也就是告诉模块在,哪里显示字符,图2.9是1602的内部显示地址。
图2.9 LCD1602内部显示地址
(二)、电路的设计
2.2.1最小系统电路设计
本系统使用儿的基于单片机的温度计的设计所以首先设计单片机的最小系统,所谓最小系统是一个真正可用的单片机的最小配置系统。由于本次设计所是用的stc89c52单片机片内不能集成始终电路所需的晶体振荡器,也没有复位电路,在构成最小系统时必须外接这些部件。电路设计如图2.10 其中电容为30PF,10UF ,晶振为11.0592MHZ。
2.10 单片机最小系统图
2.2.2温度传感器DS18B20电路图设计
主要由四部分组成:64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。DS18B20的管脚排列、各种封装形式如图 3.4 所示。其中,DQ 为数据输入/输出引脚,也可用作开漏单总线接口引脚,当被用在寄生电源工作方式下,可以向器件提供电源;GND为地信号;VDD为可选择的电源引脚,当工作于寄生电源
时,此引脚必须接地。其电路图2.11所示。
图2.11 温度传感器DS18B20电路图 2.2.3显示电路设计
1602LCD采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表:
表2.4 LCD1602引脚说明 编号 符号 引脚说明 1 2 3 4 5 6 7 VSS VDD VL RS R/W E D0 电源地 电源正极 编号 符号 引脚说明 9 10 D2 D3 D4 D5 D6 D7 BLA 数据 数据 数据 数据 数据 数据 背光源正极 液晶显示偏压 11 数据/命令选择 12 读/写选择 使能信号 数据 13 14 15