微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > lcd1602,8位总线导入程序后在右边显示0

lcd1602,8位总线导入程序后在右边显示0

时间:10-02 整理:3721RD 点击:
程序如下,求大神指点
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit rs=P2^6;
sbit rw=P2^5;
sbit en=P2^7;
uchar code table0[]="I LOVE YOU !";
uchar code table1[]="I LOVE YOU !";
void delay(uchar z)
{
  uchar x,y;
  for(x=z;x>0;x--)
    for(y=110;y>0;y--);
}
void write_com(uchar com)
{
  rs=0;
  rw=0;
  P0=com;
  delay(2);
  en=1;
  delay(4);
  en=0;
}
void write_data(uchar date)
{
  rs=1;
  rw=0;
  P0=date;
  delay(2);
  en=1;
  delay(2);
  en=0;
}
void initial()
{
  en=0;
  write_com(0x38);
  write_com(0x0c);
  write_com(0x06);
  write_com(0x01);
}
void main()
{
  uchar i;
  initial();
  write_com(0x80);
  for(i=0;i<12;i++)
    {
      write_data(table0[i]);
      delay(1);  
    }
  write_com(0x80+0x40);
  for(i=0;i<12;i++)
    {
      write_data(table1[i]);
      delay(1);  
    }
        while(1);
}

望高人指点啦,我看了几天也不知道是什么原因

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top