LCD12864串口显示

合集下载

Lcd12864最全中文资料

Lcd12864最全中文资料

128*64LCD液晶显示屏中文资料一、概述二、带中文字库的128X64是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;其显示分辨率为128×64, 内置8192个16*16点汉字,和128个16*8点ASCII字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。

可以显示8×4行16×16点阵的汉字. 也可完成图形显示.低电压低功耗是其又一显著特点。

由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。

三、基本特性:(1)、低电源电压(VDD:+3.0--+5.5V)(2)、显示分辨率:128×64点(3)、内置汉字字库,提供8192个16×16点阵汉字(简繁体可选) (4)、内置 128个16×8点阵字符(5)、2MHZ时钟频率(6)、显示方式:STN、半透、正显(7)、驱动方式:1/32DUTY,1/5BIAS (8)、视角方向:6点(9)、背光方式:侧部高亮白色LED,功耗仅为普通LED的1/5—1/10 (10)、通讯方式:串行、并口可选(11)、内置DC-DC转换电路,无需外加负压(12)、无需片选信号,简化软件设计(13)、工作温度: 0℃ - +55℃ ,存储温度: -20℃ - +60℃模块接口说明:*注释1:如在实际应用中仅使用串口通讯模式,可将PSB接固定低电平,也可以将模块上的J8和“GND”用焊锡短接。

*注释2:模块内部接有上电复位电路,因此在不需要经常复位的场合可将该端悬空。

*注释3:如背光和模块共用一个电源,可以将模块上的JA、JK用焊锡短接。

2.2并行接口管脚号管脚名称电平管脚功能描述1VSS0V电源地2VCC 3.0+5V电源正3V0-对比度(亮度)调整4RS(CS)H/L RS=“H”,表示DB7——DB0为显示数据RS=“L”,表示DB7——DB0为显示指令数据5R/W(SID)H/L R/W=“H”,E=“H”,数据被读到DB7——DB0R/W=“L”,E=“H→L”,DB7——DB0的数据被写到IR或DR6E(SCLK)H/L使能信号7DB0H/L三态数据线8DB1H/L三态数据线9DB2H/L三态数据线10DB3H/L三态数据线11DB4H/L三态数据线12DB5H/L三态数据线13DB6H/L三态数据线14DB7H/L三态数据线15PSB H/L H:8位或4位并口方式,L:串口方式(见注释1)16NC-空脚17/RESET H/L复位端,低电平有效(见注释2)18VOUT-LCD驱动电压输出端19A VDD背光源正端(+5V)(见注释3)20K VSS背光源负端(见注释3)*注释1:如在实际应用中仅使用并口通讯模式,可将PSB接固定高电平,也可以将模块上的J8和“VCC”用焊锡短接。

LCD12864图形液晶并口显示

LCD12864图形液晶并口显示

LCD12864图形液晶并口显示【教学引入】液晶屏,在生活中很常见,我们常见的液晶显示器,如电脑的显示器,电视机,手机等等。

液晶屏在生活中已得到了普遍应用,它显示个各种各样的画面。

【教学目标】1、掌握LCD12864液晶屏的用法;2、编写LCD12864液晶屏的指令代码;【知识目标】1、掌握LCD12864液晶屏的用法;2、掌握LCD12864液晶屏指令代码;【教学准备】电脑、Proteus、Keil【教学方法】教法:讲授法、讨论法学法:练习法、探究法【教学课时】四课时【教学过程】一、12864液晶介绍(1)12864是128*64点阵液晶模块的点阵数简称,业界约定俗成的简称。

12864点阵的屏显成本相对较低,适用于各类仪器,小型设备的显示领域。

12864M汉字图形点阵液晶显示模块,可显示汉字及图形,内置8192个中文汉字(16X16点阵)、128个字符(8X16点阵)及64X256点阵显示RAM(GDRAM)。

12864引脚说明查阅“12864M.PDF”12864M液晶显示模块技术手册——四、用户指令集1、指令表1:(RE=0:基本指令表),如下图,讲解了12864的基本指令集和扩充指令集。

当模块在接受指令前,微处理器必须先确认模块内部处于非忙碌状态,即读取BF标志时BF需为0。

“RE”为基本指令集与扩充指令集的选择控制位元,往后的指令集将维持在最后的状态。

当选择G=0 :绘图显示OFF,汉字显示的时,12864屏只能显示8X4=32个汉字,下面是汉字显示的坐标二、12864液晶屏驱动电路原件名称所属类(Category) 所属子类(Sub-category)AT89C52 Microprocessor ICs 8051 FamilyPOT-HG Resistors VariableRESPACK-8 Resistors Resistor PacksLCD12864A 自制-AT89C52的P0口连接12864的并行数据口,RP1为P0口的上拉排阻。

LCD12864_ESUART通过串口命令显示图片

LCD12864_ESUART通过串口命令显示图片

void delay_ms(uint t)//ms 延时函数
{ uint x,y; for(x=t;x>0;x‐‐) for(y=120;y>0;y‐‐);
}
void lcd12864_port_init()//LCD12864 端口初始化函数 {
//TRISB0=0;//选端‐CS,设为输出,低电平有效,已跳线接 GND TRISB2=0;//数据/命令选择端‐CD,设为输出 TRISB3=0;//复位端‐RST,设为输出 TRISB4=0;//数据输入端‐SDI,设为输出 TRISB5=0;//时钟输入端‐SCK,设为输出 TRISA4=0;//背光输入端‐BL,设为输出 //CS=1;//片选端初始化为 1,暂不选中 LCD12864 CD=0;//初始化选择发送命令 RST=1;//初始化复位端为高电平,暂不复位 SDI=1;//数据输入线初始化为 1 SCK=1;//时钟输入线初始化为高电平 }
LCD12864_ESUART 通过串口命令显示图片 原理图 1(图中红色方框处为 MCU 引脚端口)
原理图 2(LCD12864 引脚端口)
图 3(LC12864‐ST7565R 驱动的仅 SPI 写入时序图)
以下 3 幅图为要显示在 LCD12864 上的 BMP 单色位图(128*64 像素)
配置寄存器设置
********************************************************************* ******************************************/ __PROG_CONFIG(1,0xc100);//使能振荡器切换;使能故障保护时钟监控;XT 振荡器; __PROG_CONFIG(2,0x0a16);//看门狗分频 1:32;禁用看门狗;欠压复位 2.7V;硬件使 能欠压复位;使能上电延时定时器; __PROG_CONFIG(3,0x8100);//使能 MCLR 引脚;timer1 高功耗运行;PORTB<4:0>引 脚复位后为数字 I/O;CCP2 与 IO 与 RC1 复用; __PROG_CONFIG(4,0x0081);//禁止后台调试,RB6、7 为通用 I/O 口;禁止变址寻址; 禁止低压编程;堆栈满/下溢导致复位; __PROG_CONFIG(5,0xC00f);//数据 EEPROM 无代码保护;引导区无代码保护;程序 存储块 3-0 无代码保护; __PROG_CONFIG(6,0xe00f);//数据 EEPROM 无写保护;引导区无写保护;配置寄存 器无写保护;程序存储块 3-0 无写保护; __PROG_CONFIG(7,0x400f);//引导区无表读保护;程序存储块 3-0 无表读保护;

LCD12864液晶显示器中文说明

LCD12864液晶显示器中文说明

一、液晶显示模块概述12864A-1汉字图形点阵液晶显示模块,可显示汉字及图形,内置8192个中文汉字(16X16点阵)、128个字符(8X16点阵)及64X256点阵显示RAM(GDRAM)。

主要技术参数和显示特性:电源:VDD 3.3V~+5V(内置升压电路,无需负压);显示内容:128列× 64行显示颜色:黄绿显示角度:6:00钟直视LCD类型:STN与MCU接口:8位或4位并行/3位串行配置LED背光多种软件功能:光标显示、画面移位、自定义字符、睡眠模式等二、外形尺寸1.外形尺寸图2.主要外形尺寸项目标准尺寸单位模块体积113.0×65.0×12.8mm定位尺寸105.0×55.0mm视域73.4×38.8 mm行列点阵数128×64dots点距离0.52×0.52 mm点大小0.48×0.48 mm二、模块引脚说明128X64 引脚说明引脚号引脚名称方向功能说明1 VSS - 模块的电源地2 VDD - 模块的电源正端3 V0 - LCD驱动电压输入端4 RS(CS) H/L 并行的指令/数据选择信号;串行的片选信号5 R/W(SID) H/L 并行的读写选择信号;串行的数据口6 E(CLK) H/L 并行的使能信号;串行的同步时钟7 DB0 H/L 数据08 DB1 H/L 数据19 DB2 H/L 数据210 DB3 H/L 数据311 DB4 H/L 数据412 DB5 H/L 数据513 DB6 H/L 数据614 DB7 H/L 数据715 PSB H/L 并/串行接口选择:H-并行;L-串行16 NC 空脚17 /RET H/L 复位低电平有效18 NC 空脚19 LED_A - 背光源正极(LED+5V)20 LED_K - 背光源负极(LED-OV)逻辑工作电压(VDD):4.5~5.5V电源地(GND):0V工作温度(Ta):0~60℃(常温) / -20~75℃(宽温)三、接口时序模块有并行和串行两种连接方法(时序如下):8位并行连接时序图MPU写资料到模块MPU从模块读出资料2、串行连接时序图串行数据传送共分三个字节完成:第一字节:串口控制—格式11111ABCA为数据传送方向控制:H表示数据从LCD到MCU,L表示数据从MCU到LCDB为数据类型选择:H表示数据是显示数据,L表示数据是控制指令C固定为0第二字节:(并行)8位数据的高4位—格式DDDD0000第三字节:(并行)8位数据的低4位—格式0000DDDD串行接口时序参数:(测试条件:T=25℃VDD=4.5V)四、用户指令集指令指令码说明执行时间(540KHZ)RSRWDB7DB6DB5DB4DB3DB2DB1DB清除显示0 0 0 0 0 0 0 0 0 1将DDRAM填满“20H”,并且设定DDRAM的地址计数器(AC)到“00H”4.6ms地址归位0 0 0 0 0 0 0 0 1 X设定DDRAM的地址计数器(AC)到“00H”,并且将游标移到开头原点位置;这个指令并不改变DDRAM的内容4.6ms进入点设定0 0 0 0 0 0 0 1 I/D S指定在资料的读取与写入时,设定游标移动方向及指定显示的移位72us显示状态开/关0 0 0 0 0 0 1 D C BD=1:整体显示ONC=1:游标ONB=1:游标位置ON72us游标或显示移位控制0 0 0 0 0 1S/CR/LX X设定游标的移动与显示的移位控制位元;这个指令并不改变DDRAM的内容72us功能设定0 0 0 0 1 DL XREX XDL=1 (必须设为1)RE=1:扩充指令集动作72us备注:1、当模块在接受指令前,微处理顺必须先确认模块内部处于非忙碌状态,即读取BF标志时BF需为0,方可接受新的指令;如果在送出一个指令前并不检查BF标志,那么在前一个指令和这个指令中间必须延迟一段较长的时间,即是等待前一个指令确实执行完成,指令执行的时间请参考指令表中的个别指令说明。

一种RS485接口多国语言LCD12864显示器的设计

一种RS485接口多国语言LCD12864显示器的设计

86电子技术Electronic Technology电子技术与软件工程Electronic Technology & Software Engineering●基金项目:2018年度黑龙江省教育厅高等教育教学改革研究项目《基于“专创融合”的通信类创新创业教育改革研究与实践 》,项目编号:(SJGZ20180020)。

RS485通信标准自从上世纪80年代以来,以其传输距离远、抗干扰能力强、布线成本低等优点,在工业控制领域中得到了广泛应用[1]。

工业领域中的PLC 、变频器、电能表等设备大多采用RS485通信标准,为了方便用户实时监测这些设备的状态信息,设计了一种RS485通信标准的显示屏,可以读取工控设备的状态信息并实时显示到显示屏上,在工控领域有着广阔的应用空间。

1 系统硬件设计系统硬件组成框图如图1所示。

如图1所示,工控设备通过RS485接口把数据传输至MCU ,MCU 将数据解包后,得到需要显示的数据,如果数据中包含文字则会从字库芯片中查找字模,最后将数据显示到12864液晶屏上[2]。

1.1 MAX3485通信芯片MAX3485是MAXIM 公司生产的一款3.3V 供电的RS485电平收发芯片,静态电流仅300uA ,最高可达到2.5Mbps 传输速度,使用广泛。

MAX3485应用电路如图2所示。

MAX3485的2脚和3脚是使能管脚,低电平为接收状态,高电平为发送状态,因此2脚和3脚可以短接,仅需MCU 一个IO 口即可控制。

1.2 STC12LE5A60S2单片机芯片STC12LE5A60S2是STC 公司生产的一款3.3V 供电的单时钟/机器周期(1T )的MCU 芯片,指令集和管脚兼容传统8051单片机(如图3所示),速度比传统51单片机快6~12倍,在工业控制,强干扰场合比较适用。

本系统运行中涉及到字库读取、字模运算等操作,对MCU 运算性能要求高,因此速度快性能强的STC12LE5A60S2是系统正常工作的保障。

LCD12864串行显示文件

LCD12864串行显示文件

LCD12864串行显示文件1、LCD12864.c文件//===================================== ==========================#include "LCD12864.h"#include/**** 串行控制 *****************/sbit RS = P1^0;sbit RW = P1^1;sbit EN = P1^2;/*-----LCD12864相关声明---------*/#define com_byte 0#define dat_byte 1uchar lcdPosX, lcdPosY; //X,Y坐标uchar halfScr, halfLineCnt, basicBlock; //半屏,半屏行数,N*8块/************************************************************** 函数名称:void LCD12864_Delay_Ms (uchar ms)函数功能: LCD12864延时函数**************************************************************/ void LCD12864_Delay_Ms (uchar ms){uchar i;while (--ms){for (i = 0; i < 125; i++);}/************************************************************** 函数名称:void LCD12864_Write_Byte(uchar byte)函数功能: 写字节**************************************************************/ void LCD12864_Write_Byte(uchar byte){uchar i;for(i = 0; i < 8; i++){EN = 0;byte <<= 1;RW = CY;EN = 1;}}/************************************************************** 函数名称:uchar LCD12864_Read_Byte(void)函数功能: 读字节*************************************************************** /uchar LCD12864_Read_Byte(void){uchar i,temp1,temp2;temp1 = 0;temp2 = 0;for(i = 0; i < 8; i++)temp1 = temp1 << 1;EN = 0;EN = 1;EN = 0;if(RW) temp1++;}for(i=0;i<8;i++){temp2=temp2<<1;EN = 0;EN = 1;EN = 0;if(RW) temp2++;}return ((0xf0 & temp1) + (0x0f & temp2));}/************************************************************** 函数名称:void LCD12864_Is_Busy( void )函数功能: 检测忙函数**************************************************************/ void LCD12864_Is_Busy( void ){doLCD12864_Write_Byte(0xfc); //11111,RW(1),RS(0),0while(0x80 & LCD12864_Read_Byte());}/**************************************************************函数名称:void LCD12864_Write(bit dat_byte_com_byte,uchar byt)函数功能: 写入函数*************************************************************** /void LCD12864_Write(bit dat_byte_com_byte, uchar byt){uchar temp;if(dat_byte_com_byte == 0) //为零,写入指令temp = 0xf8; //11111,RS(0),RW(0),0else //否则,写入数据temp = 0xfa; //11111,RS(1),RW(0),0RS = 1;LCD12864_Is_Busy();LCD12864_Write_Byte(temp);LCD12864_Write_Byte(byt & 0xf0); //写入高四位LCD12864_Write_Byte(byt << 4); //写入低四位RS = 0;}/************************************************************** 函数名称:void LCD12864_Clear_Display (void)函数功能: LCD12864 显示清屏*************************************************************** /void LCD12864_Clear_Display (void){LCD12864_Write(com_byte,0x01);}/**************************************************************函数名称:void LCD12864_Write_Position (void)函数功能: LCD12864 显示位置*************************************************************** /void LCD12864_Write_Position (void){LCD12864_Write(com_byte,0x34);LCD12864_Write(com_byte,lcdPosY);LCD12864_Write(com_byte,lcdPosX);LCD12864_Write(com_byte,0x30);}/************************************************************** 函数名称:void LCD12864_DisplayPhoto (uchar *bmp, uchar bmpCls)函数功能: LCD12864 显示一张图片*************************************************************** /void LCD12864_DisplayPhoto (uchar *bmp, uchar bmpCls) {lcdPosX = 0x80;halfScr = 2;for (; halfScr != 0; halfScr--){lcdPosY = 0x80;halfLineCnt = 32;for (; halfLineCnt != 0; halfLineCnt--){basicBlock = 16;LCD12864_Write_Position();for (; basicBlock != 0; basicBlock--){if (bmpCls == 0){LCD12864_Write(dat_byte, *bmp++);}else if (bmpCls == 1){LCD12864_Write(dat_byte, 0x00);}}lcdPosY++;}lcdPosX = 0x88;}LCD12864_Write(com_byte, 0x36);LCD12864_Write(com_byte, 0x30);}/************************************************************** 函数名称:void convertChar (uchar CX, CY, width)* 字符反白显示* 输入参数:CX=要反白字符的行(0-3)* CY=要反白字符的列(0-7)* width=要反白字符的长度(1-16)函数功能: 转换成字符*************************************************************** /void convertChar (uchar CX, CY, width){LCD12864_DisplayPhoto(0,1);lcdPosY = 0x80;if (CX == 0){CX = 0x80;halfLineCnt = 16;}else if (CX == 1){CX = 0x80;halfLineCnt = 32;}else if (CX == 2){CX = 0x88;halfLineCnt = 16;}else if (CX == 3){CX = 0x88;halfLineCnt = 32;}lcdPosX = CX + CY;for (; halfLineCnt != 0; halfLineCnt--){basicBlock = width;LCD12864_Write_Position();for (; basicBlock != 0; basicBlock--){if (halfLineCnt > 16){LCD12864_Write(dat_byte, 0x00);}else{LCD12864_Write(dat_byte, 0xff);}}lcdPosY++;}LCD12864_Write(com_byte, 0x36);LCD12864_Write(com_byte, 0x30);}/************************************************************** 函数名称:void LCD12864_Display_String(uchar X, uchar Y, uchar speed, uchar *msg)函数功能: LCD12864 显示字符串/void LCD12864_Display_String(uchar X, uchar Y, uchar speed, uchar *msg){if (X == 0){X = 0x80;}else if (X == 1){X = 0x90;}else if (X == 2){X = 0x88;}else if (X == 3){X = 0x98;}Y = X + Y;LCD12864_Write(com_byte, Y);while (*msg){LCD12864_Write(dat_byte, *msg++);LCD12864_Delay_Ms(speed);}}函数名称:void init_12864(void)函数功能:初始化12864*************************************************************** /void init_12864(void){LCD12864_Write(com_byte, 0x30); //基本指令功能.LCD12864_Write(com_byte, 0x0c); //显示打开,关光标,反白关.LCD12864_Write(com_byte, 0x01); //清屏指令.LCD12864_Write(com_byte, 0x06); //AC自动加一LCD12864_Write(com_byte, 0x80);}2、LCD12864.h文件//===================================== ==========================#ifndef __LCD12864_H__#define __LCD12864_H__#define uchar unsigned char#define uint unsigned int/************************************************************** 函数名称:void LCD12864_Write(bit dat_byte_com_byte,uchar byt)函数功能: 写入函数*************************************************************** /void LCD12864_Write(bit dat_byte_com_byte, uchar byt);/************************************************************** 函数名称:void LCD12864_Clear_Display (void)函数功能: LCD12864 显示清屏*************************************************************** /void LCD12864_Clear_Display (void);/************************************************************** 函数名称:void LCD12864_Write_Position (void)函数功能: LCD12864 显示位置*************************************************************** /void LCD12864_Write_Position (void);/************************************************************** 函数名称:void LCD12864_DisplayPhoto (uchar *bmp, uchar bmpCls)函数功能: LCD12864 显示一张图片*************************************************************** /void LCD12864_DisplayPhoto (uchar *bmp, uchar bmpCls);/************************************************************** 函数名称:void LCD12864_Display_String(uchar X, uchar Y, uchar speed, uchar *msg)函数功能: LCD12864 显示字符串*************************************************************** /void LCD12864_Display_String(uchar X, uchar Y, uchar speed, uchar *msg);/************************************************************** 函数名称:void init_12864(void)函数功能:初始化12864*************************************************************** /void init_12864(void);#endif。

12864串口并带菜单

12864串口并带菜单
else //如果超出数组最大元素,则写空信息,不判断此信息可能会出现乱码
zifu_Disp(0,1,"");
if((1+(curr/4)*4)<num)
zifu_Disp(0,2,MainMenu[1+(curr/4)*4]);
else
zifu_Disp(0,2,"");
{
uint i;
while(t--)
{
for(i=0;i<125;i++);
}
}
/*****串行发送一个字节*****/
void SendByte(uchar Dbyte)
{
uchar i;
for(i=0;i<8;i++)
{
delayms(2000);
curr++;
if (curr==10)
curr=0;
}
}
sbit SID = P2^1; //串行数据
sbit SCLK = P2^2; //串行同步时钟
//sbit PSB = P2^4; //串并口选择 1:并口模式; 0:串口模式;
//直接接地
/*****LCD功能初始化指令*****/
/*************************************************
名 称:LCD12864_ST7920串行测试程序
试验功能:测试基于ST7920控制芯片的LCD12864的显示
串行方式连接;晶振11.0592M
*************************************************/

LCD12864程序文档

LCD12864程序文档

LCD12864串口显示使用详解LCD12864点阵液晶显示模块(LCM)就是由128*64个液晶显示点组成的一个128列*64行的阵列。

每个显示点对应一位二进制数,1表示亮,0表示灭。

存储这些点阵信息的RAM称为显示数据存储器,要显示某个图形或汉字就是将相应的点阵信息写入到相应的存储单元中。

LCD12864控制芯片:ST7920A 带中文字库MCU:STM32F103源程序下载地址:/detail/wylloong/8538839根据串行连接时序图所示,串行数据传送共分三个字节完成:第一字节:串口控制指令——格式 11111ABC 其中,A为数据传送方向控制:H表示数据从LCD到MCU,L表示数据从MCU到LCD;B为数据类型选择:H表示数据是显示数据,L表示数据是控制指令;C固定为0第二字节:(并行)8位数据的高4位——格式 DDDD0000第三字节:(并行)8位数据的低4位——格式 0000DDDD,发送时将低四位移至发送数据的高四位,即DDDD0000方能正确。

绘图RAM(GDRAM):绘图显示RAM提供128*8个字节的记忆空间,在更改绘图RAM时,先连续写入水平与垂直的坐标值,再写入两个字节的数据到绘图RAM,而地址计数器(AC)会自动加1;在写入绘图RAM的期间,绘图显示必须关闭。

整个写入绘图RAM的步骤如下:1、关闭绘图显示功能。

2、先将水平的位元组坐标(X)写入绘图RAM地址,再将垂直的坐标(Y)写入绘图RAM地址;将D15——D8写入到RAM中;将D7——D0写入到RAM 中;3、打开绘图显示功能。

带中文字库的128X64显示模块时应注意以下几点:①欲在某一个位置显示中文字符时,应先设定显示字符位置,即先设定显示地址,再写入中文字符编码。

②显示ASCII字符过程与显示中文字符过程相同。

不过在显示连续字符时,只须设定一次显示地址,由模块自动对地址加1指向下一个字符位置,否则,显示的字符中将会有一个空ASCII字符位置。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

逻辑工作电压(VDD):4.5~5.5V 电源地(GND):0V 工作温度(Ta):0~60℃(常温) / -20~75℃(宽温)
三、接口时序
模块有并行和串行两种连接方法(时序如下): 8 位并行连接时序图 MPU 写资料到模块
MPU 从模块读出资料
2








串行数据传送共分三个字节完成: 第一字节:串口控制—格式 11111ABC
一、液晶显示模块概述
12864A-1 汉字图形点阵液晶显示模块,可显示汉字及图形,内置 8192 个中文汉字(16X16 点阵)、128 个字符(8X16 点阵)及 64X256 点阵显示 RAM(GDRAM)。 主要技术参数和显示特性: 电源:VDD 3.3V~+5V(内置升压电路,无需负压); 显示内容:128 列× 64 行 显示颜色:黄绿 显示角度:6:00 钟直视 LCD 类型:STN 与 MCU 接口:8 位或 4 位并行/3 位串行 配置 LED 背光 多种软件功能:光标显示、画面移位、自定义字符、睡眠模式等
H/L
-
功能说明 模块的电源地 模块的电源正端 LCD 驱动电压输入端 并行的指令/数据选择信号;串行的片选信号 并行的读写选择信号;串行的数据口 并行的使能信号;串行的同步时钟 数据 0 数据 1 数据 2 数据 3 数据 4 数据 5 数据 6 数据 7 并/串行接口选择:H-并行;L-串行 空脚 复位 低电平有效 空脚 背光源正极(LED+5V) 背光源负极(LED-OV)
(AC)到“00H”
设 定 DDRAM 的 地 址 计 数 器
地址归
(AC)到“00H”,并且将游

0 0 0 0 0 0 0 0 1 X 标移到开头原点位置;这个指 4.6ms
令并不改变 DDRAM 的内容
进入点 0 0 0 0 0 0 0 1 I/D S 指定在资料的读取与写入时, 72us
设定
9、读取忙碌状态(BF)和位址
CODE: RW RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
L
H
BF AC6 AC5 AC4 AC3 AC2 AC1 AC0
功能:读取忙碌状态(BF)可以确认内部动作是否完成,同时可以读出位址计数器(AC) 的值
10、写资料到 RAM
CODE: RW RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
引脚号 引脚名称
1
VSS
2
VDD
3
V0
4
RS(CS)
5
R/W(SID)
6
E(CLK)
7
DB0
8
DB1
9
DB2
10
DB3
11
DB4
12
DB5
13
DB6
14
DB7
15
PSB
16
NC
17
/RET
18
NC
19
LED_A
20
LED_K
方向 H/L H/L H/L H/L H/L H/L H/L H/L H/L H/L H/L H/L
四、用户指令集
1、指令表 1:(RE=0:基本指令集)
指令码
执行时
指令
R R DB DB DB DB DB DB DB DB 说明 S W7 6 5 4 3 2 1 0
间 ( 540 KHZ)
清除显
将 DDRAM 填满“20H”,并且

0 0 0 0 0 0 0 0 0 1 设 定 DDRAM 的 地 址 计 数 器 4.6ms
6 5 4 3 2 1 0 器(AC)
72us
读取忙
碌标志 (BF) 0 和地址
1
读取忙碌标志(BF)可以确认 BF AC AC AC AC AC AC AC 内部动作是否完成,同时可以 0us
6 5 4 3 2 1 0 读出地址计数器(AC)的值
写资料
写 入 资 料 到 内 部 的 RAM

1 0 D7 D6 D5 D4 D3 D2 D1 D0 ( DDRAM/CGRAM/IRAM/G 72us
12、 待命模式(12H) CODE: RW RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
L
L
L
L
L
L
L
L
L
H
功能:进入待命模式,执行其他命令都可终止待命模式
13、卷动位址或 IRAM 位址选择(13H)
CODE: RW RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
二、外形尺寸
1.外形尺寸图
2.主要外形尺寸


模块体积
定位尺寸


标准尺寸 113.0×65.0×12.8
105.0×55.0 73.4×38.8


mm
mm
mm
行列点阵数 点距离 点大小
128×64 0.52×0.52 0.48×0.48
dots mm mm
二、模块引脚说明
128X64 引脚说明
RAM
DRAM)
读出
从 内 部 RAM 读 取 资 料
RAM 1 1 D7 D6 D5 D4 D3 D2 D1 D0 ( DDRAM/CGRAM/IRAM/G 72us
的值
DRAM)
指令表—2:(RE=1:扩充指令集)
指令码
执行时间
指令
R DB DB DB DB DB DB DB DB 说明 RS
W7 6 5 4 3 2 1 0
具体指令介绍:
1、清除显示 CODE: RW RS
DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
L
L
L
LLLLL NhomakorabeaL
H
功能:清除显示屏幕,把 DDRAM 位址计数器调整为“00H”
2、位址归位
CODE: RW RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
L
L
L
L
A 为数据传送方向控制:H 表示数据从 LCD 到 MCU,L 表示数据从 MCU 到 LCD B 为数据类型选择:H 表示数据是显示数据,L 表示数据是控制指令 C 固定为 0 第二字节:(并行)8 位数据的高 4 位—格式 DDDD0000 第三字节:(并行)8 位数据的低 4 位—格式 DDDD0000 串行接口时序参数:(测试条件:T=25℃ VDD=4.5V)
0
1
DL=1 (必须设为 1)
0 DL X
X X RE=1: 扩充指令集动作
RE
RE=0: 基本指令集动作
72us
设定
CGRA
AC AC AC AC AC AC 设定 CGRAM 地址到地址计数
M 地 0 0 0 1 5 4 3 2 1 0 器(AC)
72us

设定
DDRA 001
M 地址
AC AC AC AC AC AC AC 设定 DDRAM 地址到地址计数
18、设定绘图 RAM 位址(018H)
CODE: RW RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
L
L
H
AC6 AC5 AC4 AC3 AC2 AC1 AC0
6、功能设定 CODE: RW RS
DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
L
L
L
L
H
DL X
0 RE X
X
功能:DL=1(必须设为 1) RE=1;扩充指令集动作 RE=0:基本指令集动作
7、设定 CGRAM 位址
CODE: RW RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
L
L
L
L
H
X
功能:把 DDRAM 位址计数器调整为“00H”,游标回原点,该功能不影响显示 DDRAM
3、位址归位
CODE: RW RS DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
L
L
L
L
L
L
L
H
I/D S
功能:把 DDRAM 位址计数器调整为“00H”,游标回原点,该功能不影响显示 DDRAM 功
1
1
X
G0
RE

72us
G=1 :绘图显示 ON
G=0 :绘图显示 OFF
设定
SR=1:AC5—AC0 为
IRAM 地
AC AC AC AC AC
垂直卷动地址
址 或 卷 0 0 0 1 5 4 3 2 1 AC0 SR=0:AC3—AC0 为 72us
动地址
ICON IRAM 地址
设定绘
图 RAM 0 地址
址选择
地址
反白选
选择 4 行中的任一行

0 0 0 0 0 0 0 1 R1 R0 作反白显示,并可决定 72us
反白与否
睡眠模
SL=1:脱离睡眠模式

0 0 0 0 0 0 1 SL X X SL=0:进入睡眠模式 72us
RE=1: 扩充指令集动

扩充功
1
RE=0: 基本指令集动
能设定
0
0
0
0
DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
L
L
L
L
L
L
H
D
C
B
功能: D=1;整体显示 ON
C=1;游标 ON
相关文档
最新文档