导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→LCD1602的问题,第一行正常显示,第二行不显示,大家帮忙

* 102690: LCD1602的问题,第一行正常显示,第二行不显示,大家帮忙看看程序有什么问题吗?谢谢啦

   carlrex 
carlrex发表的帖子 

 LCD1602的问题,第一行正常显示,第二行不显示,大家帮忙看看程序有什么问题吗?谢谢啦
LCD1602的问题,第一行正常显示,第二行不显示,大家帮忙看看程序有什么问题吗?谢谢啦
#include   <reg51.h>  
#include   <intrins.h>  
#include   <stdio.h>  

typedef unsigned char BYTE;
typedef unsigned int WORD;
typedef bit BOOL ; 

sbit rs = P1^4; 
sbit rw = P1^5;
sbit ep = P1^3;

BYTE code dis1[] = {"welcome!"};
BYTE code dis2[] = {""};

delay(BYTE ms)
{       // 延时子程序
 BYTE i;
 while(ms--)
 {
  for(i = 0; i  <250; i++)
  {
   _nop_();
   _nop_();
   _nop_();
   _nop_();
  }
 }
}

lcd_wcmd(BYTE cmd)
{       // 写入指令数据到LCD
    delay(1);
 rs = 0;
 rw = 0;
 ep = 0;
 _nop_();
 _nop_(); 
 P0 = cmd;
    _nop_();
 _nop_();
 _nop_();
 _nop_();
 ep = 1;
 _nop_();
 _nop_();
 _nop_();
 _nop_();
 ep = 0; 

}

lcd_pos(BYTE pos)
{ //pos=0x40;      //设定显示位置
 lcd_wcmd(pos|0x80);
    //lcd_wcmd(pos);
   
}

lcd_wdat(BYTE dat) 
{       //写入字符显示数据到LCD
   delay(1);
 rs = 1;
 rw = 0;
 ep = 0;
 _nop_();
 _nop_();
 P0 = dat;
 _nop_();
 _nop_();
 _nop_();
 _nop_();
 ep = 1;
 _nop_();
 _nop_();
 _nop_();
 _nop_();
 ep = 0; 
 
}

lcd_init()

 
   delay(1);    //LCD初始化设定
 lcd_wcmd(0x34);      //显示模式设置:单行,8字符,5x7点阵
    delay(1);
 delay(1);
 lcd_wcmd(0x06);   //开显示,关光标,不闪烁
    delay(1);
 delay(1);
 lcd_wcmd(0x0e);   //设置输入模式:光标增量移动,显示不移位
 delay(1);
 delay(1);
 //lcd_wcmd(0x08);
 //delay(1);
 //delay(1);
 lcd_wcmd(0x01);   //清除LCD显示的内容
    delay(1);

}

void main()
{
 lcd_init();     // 初始化LCD
 while(1)
 {
 BYTE i;
        
    delay(10);
 lcd_pos(0x05);    // 设置显示位置为第一行的第5个字符
 i = 0;
 while(dis1[i]!='\0')
 {      // 显示字符"welcome!"
  lcd_wdat(dis1[i]);
  delay(100);
  i++;
 }
  }
delay(200);


 lcd_init();
 while(1)
 {
    BYTE i;
 delay(10);
 lcd_pos(0x40);   // 设置显示位置为第二行第二个字符
 //delay(10);
 i = 0;
 while(dis2[i]!='\0')
 {
  lcd_wdat(dis2[i]); // 显示字符"    "
  delay(30);
  i++;
 }
 
   delay(40);
}
}

发表时间:2007年2月7日21:41:47

  
回复该帖

本主题共有 2 帖,分页:>>>>>该主题的所有内容[2]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

  102708.[详细]你的地址找对了没啊?
摘要:两行的地址是不同的,只要地址找对了,显示就没问题的啊!   ......(61字)
- [ningling_21][863次] 2007年2月8日

[上一篇帖子]:[求助]新手弱弱地问,为什么51的仿真cpu用的都是sst的如题,这个问题搞不清楚,大虾指教!
[下一篇帖子]:同问是不是用ASM()函数啊?我也不清楚,也想问问