0
问答首页 最新问题 热门问题 等待回答标签广场
我要提问

LCD1602的问题

也清屏了!然后送的数,但是就是不能够显示,就是图片的这种情况,谁能帮我解决一下呀   在线等!!!!QQ83379246

提问者:南山铝业13 地点:- 浏览次数:3870 提问时间:04-20 13:31
我有更好的答案
提 交
9条回答
60user105 04-25 05:06
通常出现这种情况的原因是:你的指令不对
imchenjin 04-22 15:22
你用的什么控制器 可以把代码贴上来 大家帮你看一下
guotong1984 04-26 17:10
/********************************************************************/
//上电复位
/********************************************************************/
void LCD_Reset(void)
{      
    _delay_ms(120);// Delay_Nms(120); // Delay_Nus 120ms 等待上电复位
    PORTD =(1<    //PORTD =0xff;//lcd_control = 0xff; // LCD_RS/WR/RD/CS1/CS2 normal - skeep high.
    _delay_ms(120);
    ClrLCD_RS;
   // _delay_ms(120);
}

/********************************************************************/
//LCD初始化
/********************************************************************/
void LCD_Initial(void)
{
  ClrLCD_E;//e=0;
  wr_lcd (comm,0x01);  /*清屏,地址指针指向00H*/
  wr_lcd (comm,0x06);  /*光标的移动方向*/
  wr_lcd (comm,0x0c);  /*开显示,关光标*/
  wr_lcd (comm,0x38);  /*8位接口两行显示模式*/
}



void wr_lcd (unsigned char dat_comm,unsigned char content)
{
  if(dat_comm)
   {
    SetLCD_RS;//rs=1;   //data
    ClrLCD_WR;//rw=0;   //write
   }
  else  
   {
    ClrLCD_RS;//rs=0;   //command
    ClrLCD_WR;//rw=0;   //write
   }
  PORTC = content;   //output data or comm
  SetLCD_E;//e=1;
  _delay_ms(1);//delay(1);
  ClrLCD_E;//e=0;
}

void chrt_disp (unsigned char *chrt)
{
  uchar i,j;
  wr_lcd (comm,0x80);
  for (j=0;j<2;j++)
  {
    for (i=0;i<16;i++)
    wr_lcd (dat,chrt[j*16+i]);
    wr_lcd (comm,0xc0);
  }
}
qq674957113 04-20 23:00
将延时加长一点看看,用示波器测测相关时序。

yeshard 04-25 02:44
你用的单片机主频是多大的,估计是你的单片速度快,所以别人用着没问题的代码,在你那里就不能用了,因为LCD1602的反应速度有限。

在基础指令里面,每个读写操作之后加上延时试试
60user61 04-26 07:23
GPIO_Mode_Out_PP 试试。把读写 的延时提高下试试!
esgss 04-29 15:56
哈哈 不小心把ST-LINK搞挂了 看来今天帮不上你了
有几个地方
你的 void LCD_dat(u8 dat)
dat << 8 移位完成之后 dat 里应该只剩0了吧
没有看到你的LCD_Busy()函数的具体实现,你应该用的STM32吧,管脚方向读数据的时候是要改变的
LCD1602的初始化操作和我看到的推荐操作也是有出入的
总之 你再好好检查下吧 这个还是需要自己去调试
jdjfuwegs 04-22 04:36
调下调节对比度的电位器试试.
60user123 04-30 13:07
你这个黑框是复位完就有还是送显示命令后出的?
话说很多复位不正常的就出这个现象
撰写答案
提 交
1 / 3
1 / 3