能把带字库12864液晶显现汉字了,程序如下,以供参阅
显现三屏汉字,每屏显现三秒,来回循环显现
#include
#defineucharunsignedchar
#defineuintunsignedint
#definelcd_data P0
uchar code table1[]=”钟山风雨起苍黄毛””百万雄师过大江泽””亦将剩勇追穷寇东””不行沽论理学霸王七”;
uchar code table2[]=”学习技能天天向上””尽力学习才有进步””总结经验不断前进””电子设计一路领先”;
uchar code table3[]=”爱一个人难却还爱””交结朋友可路更宽””诚笃守信加油尽力””成功做人成功干事”;
sbit lcden=P2^7;
sbit rd=P2^6;
sbit wr=P2^5;
sbit psb=P3^2;//并/串方法挑选
voiddelay(uint z)//推迟函数
{
uint x,y;
for(x=z;x>0;x–)
for(y=110;y>0;y–)
;
}
voidwrite_com(uchar com)//写指令
{
rd=0;
wr=0;
lcden=0;
P0=com;
delay(5);//这个推迟函数有必要要有,由于读数据时当E为高时,数据有必要保持稳定
lcden=1;
lcden=0;
}
voidwrite_date(uchar date)//写数据
{
rd=1;
wr=0;
lcden=0;
P0=date;
delay(5);//这个推迟有必要要有
lcden=1;
lcden=0;;
}
voidwrite_word(uchar *add)//用指针
{
uchar i;
write_com(0x80);//从榜首行开端显现
for(i=0;i<64;i++)//一个汉字占两个字节
{
write_date(*add);
add++;//指针加,指向下一个字节
}
}
voidinit()//初始化
{
psb=1;//设置并口方法
write_com(0x 0c);//显现状况 全体显现开
write_com(0x01);//游标左移
write_com(0x30);//功用设定根本指令操作
write_com(0x10);//游标左移
}
voidmain()
{
init();
while(1)
{
write_word(table1);
delay(3000);//每一屏显现秒钟
write_word(table2);
delay(3000);
write_word(table3);
delay(3000);
}
}
声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/fangan/fpga/256228.html