关于单片机、LCD1602显示的问题

我用AT89C51、DS1302和LCD1602做了一个电子钟,仿真完全可以实现。但是电路焊出来以后,1602不能正常显示,只显示第一行16个黑格。我已经把程序烧进芯片里... 我用AT89C51、DS1302和LCD1602做了一个电子钟,仿真完全可以实现。
但是电路焊出来以后,1602不能正常显示,只显示第一行16个黑格。
我已经把程序烧进芯片里了,但是还是不行。
焊的没有问题,我检查过好几遍了。
另外,我想问一下,我之前的LCD烧坏了,重新买了一个,看起来不太一样。
是不是所有的1602显示器都一样用?
麻烦各位高手告诉我是什么问题。拜托大家了!!
展开
 我来答
xiaobin0602
2011-05-30 · 超过31用户采纳过TA的回答
知道答主
回答量:159
采纳率:0%
帮助的人:104万
展开全部
软件问题 你把延时调高一点 我以前也是这样 延时一点要充足 尤其是闭做初始化 先轿歼衡调成特别慢1秒左右然后改掘再慢慢往快调 边调边试 呵呵 不行M我
追问
我把延时调到1s,两行都有显示,只是都是黑格。
不能正常显示结果,是不是就说明我的程序有问题?
追答
这个。。。
只是把初始化的延时改一下就好了 其他不用改 如果还是出不来就去网上找个驱动程序试试 再不行就是硬件的事了
yuan198203
2011-05-30 · TA获得超过799个赞
知道小有建树答主
回答量:237
采纳率:0%
帮助的人:190万
展开全部
这个现象是1602没驱动起来。
1602除了数据端口外,备祥
还有3个控制端,E,RW,RS。都接好了吗控制好颤码了吗?
仿真跟现实不太一样,
现在你需仿洞搏要编一个能简单驱动1602的程序,先把1602驱动起来。
然后再改你的程序。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
scott_lele
2011-06-08
知道答主
回答量:1
采纳率:0%
帮助的人:0
展开全部
你要检测液晶是否处于忙碌昌尺衡状态
BOOL lcd_bz()
{ // 测试LCD忙碌状态
BOOL result;
lcdrs=0;
lcdrw=1;
lcden=1;
_nop_();
_nop_();
_nop_();
_nop_();
result=(BOOL)(P0 & 0x80);
lcden=0;
return result;
}

void write_com(uchar com)
{
while(lcd_bz());
lcdrs=0;
lcdrw=0;
lcden=0;
_nop_();
_nop_();
P0=com;
_nop_();
_nop_();
_nop_();
_nop_();
lcden=1;
_nop_();
_nop_();
_nop_();
_nop_();
lcden=0;
}

void write_data(uchar dat)
{
while(lcd_bz());
lcdrs=1;
lcdrw=0;
lcden=0;
_nop_();
_nop_();
P0=dat;
_nop_();
_nop_();
_nop_();
_nop_();
lcden=1;
_nop_();
_nop_();
_nop_();
_nop_();
lcden=0;
}

void lcd_init()
{
write_com(0x38); //16*2显示 5*7点阵 8位数据接口
write_com(0x0c); /困镇/开显示,耐做不显示光标
write_com(0x06); //写一个字符后数据指针加1
write_com(0x01); //显示清零,数据指针清零
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
永恒之念lbx
2011-06-01 · 超过11用户采纳过TA的回答
知道答主
回答量:38
采纳率:0%
帮助的人:32万
展开全部
都是黑格的话你再调一下背光灯,我以前也出现过这种情况,你试试!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
duyin2011
2011-05-30 · TA获得超过2398个赞
知道大有可为答主
回答量:1723
采纳率:100%
帮助的人:661万
展开全部
3VL,15BLA,16BLK 可能没没接好
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式