标题: 关于单片机+Proteus仿真时1602不显示的问题 求帮助 [打印本页]

作者: 奕情    时间: 2019-5-12 20:17
标题: 关于单片机+Proteus仿真时1602不显示的问题 求帮助
在弄完程序(keil编译没有错误,没有警告),弄完电路图进行仿真的时候我的1602只亮就是不显示东西
这是小弟关于1602部分的函数,在小弟的设想当中是调用init1602函数后分别在显示屏上下两行显示HELLO DRIVER和Distance:  000CM
sbit RS = P3^5;                                
sbit RW = P3^6;                              

sbit EN = P3^4;                              
#define LCD_data  P1                                 
#define uchar unsigned char                        
#define uint unsigned int
void LCDdelay(uint z)
{
    uint x,y;
    for(x=z;x>0;x--)
    for(y=10;y>0;y--);
}
void write_com(uchar com)
{
    RS=0;
    P0=com;
    LCDdelay(5);
    EN=1;
    LCDdelay(5);
    EN=0;
}
void write_data(uchar date)
{
    RS=1;
    P0=date;
    LCDdelay(5);
    EN=1;
    LCDdelay(5);
    EN=0;
}
bit LCD_Check_Busy(void)
{
    DataPort= 0xFF;
    RS_CLR;
    RW_SET;
    EN_CLR;
    _nop_();
    EN_SET;
    return (bit)(DataPort & 0x80);
}
void LCD_Write_String(uchar x,uchar y,uchar *s)
{   
    while(LCD_Check_Busy());
    if (y == 0)
    {     
        write_com(0x80 + x);  
    }
    else
    {      
        write_com(0xC0 + x);   
    }        
    while (*s)
    {     
        write_data( *s);     
        s ++;     
    }
}
void Init1602()
{
    uchar i=0;
    write_com(0x38);                        
    write_com(0x0C);                        
    write_com(0x06);                           
    write_com(0x01);                       
    LCD_Write_String(1,0,"  HELLO DRIVER  ");
    LCD_Write_String(1,1,"Distance:  000CM");
}



作者: xuyaqi    时间: 2019-5-13 10:20
先让1602显示固定数据看成功否,再查SR-04工作正常与否。
作者: 奕情    时间: 2019-5-13 11:29
xuyaqi 发表于 2019-5-13 10:20
先让1602显示固定数据看成功否,再查SR-04工作正常与否。

固定数据的话也不行,还是只亮,什么也没有。调整对比度也是没有显示
作者: w1179benp    时间: 2019-5-13 20:27
你仿真图示是P1口,可程序里是P0口,不知你实物有时那个口。再仔细看看..................
作者: w1179benp    时间: 2019-5-13 20:52
程序问题多!
作者: xuyaqi    时间: 2019-5-13 20:56
奕情 发表于 2019-5-13 11:29
固定数据的话也不行,还是只亮,什么也没有。调整对比度也是没有显示

那就先在网上找一个能正常显示的例程,再加其他部分。
作者: 奕情    时间: 2019-5-14 12:54
xuyaqi 发表于 2019-5-13 20:56
那就先在网上找一个能正常显示的例程,再加其他部分。

感谢大佬,是我的程序问题
作者: 奕情    时间: 2019-5-14 12:55
w1179benp 发表于 2019-5-13 20:27
你仿真图示是P1口,可程序里是P0口,不知你实物有时那个口。再仔细看看..................

先给汗一个,弟弟我这编程废😓谢谢大佬
作者: 电子追求者    时间: 2019-5-14 14:58
程序和你接线IO口不一致
作者: 奕情    时间: 2019-5-14 18:20
电子追求者 发表于 2019-5-14 14:58
程序和你接线IO口不一致

尴尬。。谢谢大佬




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1