资讯详情

LCD1602自定义字符的方法

1602内含有八个自定义的字符空间,用户可以根据需要设置自定义字符,不过字符的像素通常是5X7。如果需要更大像素的字符,就只能用多个5X7的字符拼合。每个自定义字符的字节有8个,最后一个是0x00;每个字节的高3位为0,即000? ????。自定义字符设置与应用步骤如下: 1、设置自定义字符的代码并存入数组。每个字符分7行,每行有5个像素,如果需要显示,此位设定为1,否则为0。本人用VBA制作了《LCD1602自定义字符生成器》,使用简单,需要可函索。联系:ruidan.com 2、按常规方法初始化LCD1602。 3、写命令:40H。 4、写数据:将代码数组写入LCD1602中的CGRAM中。 5、按常规方法设置要显示字符的位置。如写命令:80H(第一行第1个字符位置)或c0H(第二行第1个字符位置)。 6、写数据显示自定义字符:写0显示第1个自定义字符,写1显示第2个自定义字符……依此类推。注意写入的0或1等是指数字而不是字符,不能加单引号。 下面是生成好的自定义字符代码数组,供参考: uchar code table1[]={0x10,0x06,0x09,0x08,0x08,0x09,0x06,0x00};//字符℃ uchar code table2[]={0x04,0x1F,0x00,0x0A,0x0A,0x0A,0x1B,0x00};//字符六 uchar code table3[]={0x04,0x1D,0x14,0x15,0x14,0x1D,0x04,0x00};//字符小喇叭 uchar code table4[]={0x00,0x00,0x00,0x1F,0x00,0x00,0x00,0x00};//字符一 uchar code table5[]={0x00,0x0E,0x00,0x00,0x00,0x1F,0x00,0x00};//字符二 uchar code table6[]={0x0E,0x00,0x00,0x0E,0x00,0x00,0x1F,0x00};//字符三 uchar code table7[]={0x1F,0x11,0x15,0x15,0x1F,0x11,0x1F,0x00};//字符四 uchar code table8[]={0x1E,0x08,0x08,0x1E,0x0A,0x0A,0x1F,0x00};//字符五 uchar code table9[]={0x08,0x1F,0x12,0x0F,0x0A,0x1F,0x02,0x00};//字符年 uchar code table10[]={0x0F,0x09,0x0F,0x09,0x0F,0x09,0x13,0x00};//字符月 uchar code table11[]={0x1F,0x11,0x11,0x1F,0x11,0x11,0x1F,0x00};//字符日 uchar code table12[]={0x04,0x1F,0x0A,0x1F,0x04,0x1F,0x15,0x00};//字符新左半部 uchar code table13[]={0x1F,0x10,0x10,0x1F,0x12,0x12,0x12,0x00};//字符新右半部 主程序: void main() { uchar m; init_LCD(); delayms(10); write_LCD_Command(0x40); //写命令 for(m=0;m<8;m++) write_LCD_data(table1[m]); //将代码写入CGRAM中 write_LCD_Command(0x80); //设定显示位置 write_LCD_data(0); //显示第1个自定义字符 while(1); }

-电子元器件采购网(www.ruidan.com)是本土元器件目录分销商,采用“小批量、现货、样品”销售模式,致力于满足客户多型号、高质量、快速交付的采购需求。 自建高效智能仓储,拥有自营库存超过50,000种,提供一站式正品现货采购、个性化解决方案、选型替代等多元化服务。
锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台