我用普中的单片机开发板做液晶1602的实验显示不出来,求助各位高手帮帮忙解答。 电路图和代码如下。

这是实验室的现象

下图是液晶和cpu连接图

下面是代码

#include<reg51.h>
#define uint unsigned int
#define uchar unsigned char
uchar code table[]="I LOVE MCU!";
uchar code table1[]="www.TXMCU.COM";
sbit rs=P2^6;
sbit rw=P2^5;
sbit lcde=P2^7;
uint num;
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=250;y>0;y--);
}
void write_com(uchar com)
{
rs=0;
P0=com;
delay(1);
lcde=1;
delay(1);
lcde=0;
}
void write_data(uchar date)
{
rs=1;
P0=date;
delay(1);
lcde=1;
delay(1);
lcde=0;
}
void init()
{
write_com(0x38);
delay(1);
write_com(0x0c);
delay(1);
write_com(0x06);
delay(1);
write_com(0x01);
delay(1);
}
void main()
{
init();
write_com(0x08);
for(num=0;num<11;num++)
{
write_data(table[num]);
delay(5);
}
write_com(0x40);
for(num=0;num<13;num++)
{
write_data(table1[num]);
delay(5);
}
while(1);
}

第1个回答  2013-03-07
你把 while(1);放到主函数开始,然后再调试,从你程序上看,就算你前面是对的,等主函数执行完后,关闭液晶显示后,就停留在 while(1);里面,也就不会显示什么内容了。
第2个回答  2013-03-07
调一调第三脚的电压就可以了。
第3个回答  2013-03-07
/*********************************************************************************************************

LCD1602液晶驱动程序是你自己写的,还是教程里面带的程序,R/W读写怎么

没有,设置的啊,你是对LCD1602液晶写操作R/W不行拉低电平啊。

唉,把LCD1602液晶data仔细看看在写程序。

**********************************************************************************************************/追问

给R/W置位了还是不行的。

追答

你怎么置位的啊,你把程序发我看看

本回答被网友采纳
第4个回答  推荐于2018-04-09
板子插反了!!!我前两天买的普中,也这么设置的,也是一堆方块,就是因为放反了!!!!!

光盘里有例程的连接图,你看一眼就知道了……本回答被网友采纳
相似回答