论坛风格切换切换到宽版
  • 4133阅读
  • 6回复

请教LCD1602显示自定义符号 [复制链接]

上一主题 下一主题
离线河马漫步
 
发帖
1498
只看楼主 倒序阅读 0楼 发表于: 2008-07-07
看了半天手册还是没明白怎么显示自定义cgram里面的符号,哪位给个c程序研究一下,谢了。
离线fghlw
发帖
163
只看该作者 1楼 发表于: 2008-07-07
很简单的 就是点阵 想显示什么照着点好 写到自定义ram中 然后调用便是
离线szcharle
发帖
13335
只看该作者 2楼 发表于: 2008-07-07
bascom basic可以自定义的
离线河马漫步
发帖
1498
只看该作者 3楼 发表于: 2008-07-07
'
很简单的 就是点阵 想显示什么照着点好 写到自定义ram中 然后调用便是
'

写入cgram,怎么显示出来呢?
离线fghlw
发帖
163
只看该作者 4楼 发表于: 2008-07-08
[quote=河马漫步]写入cgram,怎么显示出来呢?[/quote]
pdf上写的很明白了 预留了字码的 和调用其他固化的一样..
离线bd7rf
发帖
10148
只看该作者 5楼 发表于: 2008-07-08
没玩过。。
离线小比尔/5
发帖
2582
只看该作者 6楼 发表于: 2008-07-09
把要显示的字模写入cgram,大小是5x7(或8,但是8就不好看了)个bits,每一行5bits前填充三个空bit,共8x8 bits
下列程序需依赖lcd_wrtcmd() 及 lcd_wrtdata() 两个函数,请预先建立好。

例:
void lcd_wrtcgram(uchar a,uchar font[])
{
     uchar i;
     a=a<<3;
     for(i=0;i<8;i++)
     {
           lcd_wrtcmd(0x40+(a&0x3f)+i,1);
           lcd_wrtdata(font);
     }
}

a是写入的cgram地址,font[]是字模。
字模例:
uchar code volfont[8]={0x04,0x06,0x05,0x04,0x04,0x0c,0x1c,0x18};