LCD1602自定义显示字符

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

LCD1602自定义显示字符

从CGROM表中可以看到,在表的最左边是一列可以允许用户自定义的CGRAM,从上往下看着是16个,

实际只有8个字节可用。它的字符码是00000000-00000111这8个地址,表的下面还有8个字节,但因为这个CGRAM的字符码规定0-2位为地址,3位无效,4-7全为零。因此CGRAM的字符码只有最后三位能用也就是8个字节了。等效为0000x111,x为无效位,最后三位为000-111共8个。

如果我们要想显示这8个用户自定义的字符,操作方法和显示CGROM一样,先设置DDRAM位置,再向DDRAM写入字符码,例如“A”就是41H。现在我们要显示CGRAM的第一个自定义字符,就向DDRAM写入00000000B(00H),如果要显示第8个就写入00000111(08H)。

从这个指令可以看出指令数据的高2位已固定是01,只有后面的6位是地址数据,而这6位中的高3位就表示这八个自定义字符,最后的3位就是字模数据的八个地址了。例如第一个自定义字符的字模地址为01000000-01000111八个地址。

我们向这8个字节写入字模数据,让它能显示出“℃”

地址:01000000数据:00010000图示:○○○■○○○○

0100000100000110○○○○○■■○

0100001000001001○○○○■○○■

0100001100001000○○○○■○○○

0100010000001000○○○○■○○○

0100010100001001○○○○■○○■

0100011000000110○○○○○■■○

0100011100000000○○○○○○○○

字定义字符地址

0x40————0x00

0x48————0x01

0x50————0x02

0x58————0x03

0x60————0x04

0x68————0x05

0x70————0x06

0x78————0x07

程序操作:

1.定义字符数组

uchar code Word1[]={0x15,0x0A,0x15,0x0A,0x15,0x0A,0x15,0x0A};//自定义字符数组

2.写数据到CGRAM中

uchar j;

WriteCommandLCD(0x40);

for(j=0;j<8;j++)

{

WriteDataLCD(Word1[j]);

}

3.读取数据并显示

WriteCommandLCD(0xC8);//显示在第一行

WriteDataLCD(0x00);//地址

取模软件操作左边三列为无效

软件设置

相关文档
最新文档