标题: 仿真时LCD1602的检测读忙信号 [打印本页]

作者: Narcissus101    时间: 2025-9-13 18:37
标题: 仿真时LCD1602的检测读忙信号
仿真时LCD1602_E的电平一直跳,是因为一直在执行do while循环?所以一直都是忙的状态吗,这还怎么显示啊

mmexport1757759658700.png (97 KB, 下载次数: 0)

mmexport1757759658700.png

作者: songxia8013    时间: 2025-9-14 08:34
Lcd1602不检测忙状态也是可以的。
#define LCD_DATA P0                                //液晶看数据口定义
sbit LCD_RS=P3^2;                                 //LCD1602数据/命令选择引脚,H:数据,L:命令
sbit LCD_RW=P3^3;                                 //LCD1602读写引脚,H:数据寄存器,L:指令寄存器
sbit LCD_EN=P3^4;                                 //LCD1602使能引脚,下降沿触发
void Delay(uint i)                                //延时函数               
{
        while(i--);
}
void Delay_MS(uint z)                         //z*1MS延时函数
{
        uint x,y;
        for(x=z;x>0;x--)
                for(y=110;y>0;y--);
}
void Lcd_W_Com(uchar com)                //液晶写指令函数
{
        LCD_RS=0;
        LCD_RW=0;
        LCD_DATA=com;
        Delay(20);
        LCD_EN=1;
        Delay(20);
        LCD_EN=0;
}
void Lcd_W_Dat(uchar dat)                //液晶写数据函数
{
        LCD_RS=1;
        LCD_RW=0;
        LCD_DATA=dat;
        Delay(20);
        LCD_EN=1;
        Delay(20);
        LCD_EN=0;       
}
void Lcd_Show_Str(uchar hang,add,uchar *p)//液晶写字符串函数
{
        if(hang==1)                                   //液晶第一行
                Lcd_W_Com(0x80+add);
        else                                                  //液晶第二行
                Lcd_W_Com(0x80+0x40+add);
        while(1)
        {
                if(*p=='\0')
                        break;
                Lcd_W_Dat(*p);                         //写入数据
                p++;
        }       
}
void Lcd_Init()                                        //液晶初始化
{
        Lcd_W_Com(0x38);                        //数据总线为8位,显示2行,5x7点阵
        Lcd_W_Com(0x0c);                        //开显示,有光标,光标闪烁
        Lcd_W_Com(0x06);                        //光标自动右移
        Delay(1000);                                //等待设置完成
}
作者: man1234567    时间: 2025-9-14 10:53
实际使用仅显示时不需要这个读忙,注释掉就可以。
作者: rundstedt    时间: 2025-9-14 15:59
很可能是仿真模型不完备,忽略这个信号试试。




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