|
OLED12864源代码分享 IIC协议http://www.51hei.com/bbs/dpj-204281-1.html LCD12864中文资料包 容易看明白 http://www.51hei.com/bbs/dpj-200462-1.html |
名字不是重点 发表于 2021-6-29 12:01 嗯,确实很轻松 ![]() |
| 单片机,刷新屏幕,还是需要效率,能快则快,重复性代码还是需要精简,不是随便写写就好了。 |
|
比如这样:/* 1602模块的4线接口方式写入一个字节的数据 utype:数据类型,0为命令数据,1为显示数据 udat: 一字节数据 */ void Lcd_1602_write(uchar utype,uchar udat) { uchar i; lcdrs=utype; //写入指令或数据 for(i=0;i<2;i++) //8Bit分开2次写入,高低半字节 { lcden=1; //LCD使能开 P0=(P0&0x0f)|(udat&0xf0); //写入高4位:即P04-P07,低位是P00-P03 //如果写入的是低4位则:P0=(P0&0xf0)|((date>>4)&0x0f); delay(3); //简单延时 lcden=0; //LCD使能关 udat<<=4; //低4位上移到高4位 } } 轻轻松松。。。 |
|
脱KZ放P了! 既然有了2 个函数WRITE_COM和WRITE_DAT,就不用再传个参数bit i,且整个LCM_W_TEST()都可以不要,直接分别调用就行了,省的跳来跳去,CPU不累吗 ![]() |
既然看了别人的一个程序进行学习研究,为何不多看几个?只要再看两个人的程序包你可以自己确定答案的![]() |
| 各人喜欢。这个用判断的也行,分别用写命令和数据的函数也行。 |