我这个程序应该没什么问题吧,为什么在仿真软件PROTUS上LCD1602显视不出来,但是有明显的数据输入信号,管脚上显示
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
uchar code table[]="I LIKE MCU!";
uchar code table1[]="WWW.TXMCU.COM";
sbit lcden="P0"^3;
sbit lcdrs="P0"^0;
uchar num;
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void write_com(uchar com)
{
lcdrs=0;
P2=com;
delay(5);
lcden=1;
delay(5);
lcden=0;
}
void write_data(uchar date)
{
lcdrs=1;
P2=date;
delay(5);
lcden=1;
delay(5);
lcden=0;
}
void init()
{
lcden=0;
write_com(0x38);
write_com(0x0e);
write_com(0x06);
write_com(0x01);
write_com(0x80+0x10);
}
void main()
{
init();
for(num=0;num<11;num++)
{
write_data(table[num]);
delay(20);
}
// write_com(1);
write_com(0x80+0x53);
for(num=0;num<13;num++)
{
write_data(table1[num]);
delay(20);
}
for(num=0;num<16;num++)
{
write_com(0x18);
delay(20);
}
while(1);
}
文章评论(0条评论)
登录后参与讨论