本帖最后由 tugboy 于 2013-3-8 02:36 编辑
做了一个控制板,用STC89C52rc控制这个RT0802a液晶,让液晶显示ICR Test,结果出来的错乱,特意大小写全部测试了一下,晕了,不知道怎么回事了。
输入ICR TEST (全大写)
输入icr test(全小写)
下面这张显示英文是没错了,可大小写不分了,空格还是乱码了,下面一行是特意填的0
下面把显示代码截图附上
uchar code table[]="icr test";
uchar code table1[]="00000000";
void delay(uint z) //延时子程序(带参数子函数),
void write_com(uchar com)//液晶写指令函数
{
rs=0; //RS低选择,命令选择
lcden=0; //
P2=com; //
delay(5);
lcden=1; //
delay(5);
lcden=0;
}
void write_date(uchar date) //液晶写数据函数
{
rs=1;
lcden=0;
P2=date;
delay(5);
lcden=1;
delay(5);
lcden=0;
}
void init() //初始化函数
{
uchar num; //num数字变量
// dula=0; //数码管锁存端关闭
// wela=0;
lcden=0;
rw=0;
write_com(0x38); //初始化液晶,写指令,显示模式,设置16*2显示,5*7点阵,8位数据接口
write_com(0x0c); //显示开关及光标设置,开显示,不显示光标,光标不闪烁
write_com(0x06); //每写1整屏+1
write_com(0x01); //屏幕清0
// write_com(0x0e);
write_com(0x80); //
for(num=0;num<8;num++)
{
write_date(table[num]);//写数据,num中取数
delay(1);
}
write_com(0xc0); // 第二行起始位置定义
for(num=0;num<8;num++)
{
write_date(table1[num]);
delay(1);
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>