shenming420 发表于 2015-2-13 16:08:27

STC单片机,关于12864显示。。。

本帖最后由 shenming420 于 2015-2-13 16:13 编辑

想用printf向液晶12864显示。。。目前是用lcddisp(),在显示每个字符或汉字,都要调用一次,感觉太占内存,而且STC的FLASH较小,我选的IAP15W413AS,只有13KB,本来想做多个页面之间相互切换,刚做3,4个页面发现程序已14KB,各种无力。。。

shenming420 发表于 2015-2-13 16:09:24

本帖最后由 shenming420 于 2015-2-13 16:11 编辑

这是液晶底层驱动。。。

shenming420 发表于 2015-2-13 16:10:54

本帖最后由 shenming420 于 2015-2-13 16:12 编辑

截图如下:

lcw_swust 发表于 2015-2-14 09:04:59

本帖最后由 lcw_swust 于 2015-2-14 09:12 编辑

看起来不占内存呀
这个函数还可以略微简化:
{
...
unsigmed int x;
BYTE y;
LCDScs=area;
LCDMcs=area^1;
x=(type+1)*8;
y=0xff*color;
for(i=0;i<x;i++)
{
write_com...
write_com...
write_data(hzk^y);
}
}
再补充一下,LCD的列地址应该是可以自动加一的,不用每写一个data又再写列地址,
所以那两个write_com可以提到for之前去,这样更能节省时间。
write_com...
write_com...
for(i=0;i<x;i++)
{
write_data(hzk^y);
}

shenming420 发表于 2015-2-15 09:38:19

lcw_swust 发表于 2015-2-14 09:04
看起来不占内存呀
这个函数还可以略微简化:
{


感谢您的解答,新年愉快。。。
页: [1]
查看完整版本: STC单片机,关于12864显示。。。