找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1159|回复: 2
收起左侧

关于单片机+lcd自定义字符的原理

[复制链接]
ID:724177 发表于 2020-5-16 23:31 | 显示全部楼层 |阅读模式
lcd自定义字符的原理是什么啊?有大神解答一下么,或者相关资料


void Lcd_User_Chr(void)
{ //第一个自定义字符
LCD_Write_Com(0x40); //"01 000 000"  第1行地址 (D7D6为地址设定命令形式D5D4D3为字符存放位置(0--7),D2D1D0为字符行地址(0--7))
LCD_Write_Data(0x00); //"XXX 11111" 第1行数据(D7D6D5为XXX,表示为任意数(一般用000),D4D3D2D1D0为字符行数据(1-点亮,0-熄灭)
LCD_Write_Com(0x41); //"01 000 001"  第2行地址
LCD_Write_Data(0x04); //"XXX 10001" 第2行数据
LCD_Write_Com(0x42); //"01 000 010"  第3行地址
LCD_Write_Data(0x0e); //"XXX 10101" 第3行数据
LCD_Write_Com(0x43); //"01 000 011"  第4行地址
LCD_Write_Data(0x0e); //"XXX 10001" 第4行数据
LCD_Write_Com(0x44); //"01 000 100"  第5行地址
LCD_Write_Data(0x0e); //"XXX 11111" 第5行数据
LCD_Write_Com(0x45); //"01 000 101"  第6行地址
LCD_Write_Data(0x1f); //"XXX 01010" 第6行数据
LCD_Write_Com(0x46); //"01 000 110"  第7行地址
LCD_Write_Data(0x04); //"XXX 11111" 第7行数据
LCD_Write_Com(0x47); //"01 000 111"  第8行地址
   LCD_Write_Data(0x00); //"XXX 00000" 第8行数据
//第二个自定义字符

LCD_Write_Com(0x48); //"01 001 000"  第1行地址  
LCD_Write_Data(0x03); //"XXX 00001" 第1行数据
LCD_Write_Com(0x49); //"01 001 001"  第2行地址
LCD_Write_Data(0x03); //"XXX 11011" 第2行数据
LCD_Write_Com(0x4a); //"01 001 010"  第3行地址
LCD_Write_Data(0x00); //"XXX 11101" 第3行数据
LCD_Write_Com(0x4b); //"01 001 011"  第4行地址
LCD_Write_Data(0x00); //"XXX 11001" 第4行数据
LCD_Write_Com(0x4c); //"01 001 100"  第5行地址
LCD_Write_Data(0x00); //"XXX 11101" 第5行数据
LCD_Write_Com(0x4d); //"01 001 101"  第6行地址
LCD_Write_Data(0x00); //"XXX 11011" 第6行数据
LCD_Write_Com(0x4e); //"01 001 110"  第7行地址
LCD_Write_Data(0x00); //"XXX 00001" 第7行数据
LCD_Write_Com(0x4f); //"01 001 111"  第8行地址
LCD_Write_Data(0x00); //"XXX 00000" 第8行数据
}



回复

使用道具 举报

ID:213173 发表于 2020-5-17 08:17 | 显示全部楼层
LCD1602的字符库容量有限,固定保存了160个字符(含空白)。为解决特殊符号显示,LCD1602留有用户自定义字符区。用户根据自身需求编辑好字符保存在自定义字符区,以供程序调用。例如LCD1602万年历中的汉字 “年、月、日” 的编码写入指定地址。//年、月、日汉字代码数组
unsigned char character0[24] = {
0x08,0x0f,0x12,0x0f,0x0a,0x1f,0x02,0x02,  //"年"地址代码 0x00
0x0F,0x09,0x0F,0x09,0x0F,0x09,0x13,0x00,  //"月"地址代码 0x01
0x0F,0x09,0x09,0x0F,0x09,0x09,0x0F,0x00,  //"日"地址代码 0x02
};
无标题.jpg



回复

使用道具 举报

ID:724177 发表于 2020-5-20 14:33 | 显示全部楼层
wulin 发表于 2020-5-17 08:17
LCD1602的字符库容量有限,固定保存了160个字符(含空白)。为解决特殊符号显示,LCD1602留有用户自定义字 ...

谢谢前辈
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表