手打完美运行 配套郭天祥51开发板
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned charsbit lcden=P3^4;//位定义LCD使能端
sbit lcdrs=P3^5;//位定义LCD数据命令脚
sbit dula=P2^6;
sbit wela=P2^7;uchar i;
uchar code teble[]="Blue-lover";/******延时函数*****/
void delay(uint z)
{uint x,y;for(x=z;x>0;x--)for(y=114;y>0;y--);
}
/*****发送命令函数*****/
void send_com(uchar com)
{lcdrs=0;//低电平切换接收命令P0=com;//发送命令lcden=1;//高电平准备读取命令delay(1);//延时 数据设置时间lcden=0;//低电平接收命令delay(1);
}
/*****发送数据函数*****/
void send_dat(uchar dat)
{lcdrs=1;//高电平切换接收数据P0=dat;//发送数据lcden=1;//高电平准备接收数据delay(1);//延时 数据设置时间lcden=0;//低电平接收数据
}
/*****LCD初始化*****/
void init()
{dula=0;//关闭段选锁存器wela=0;//关闭位选锁存器lcden=0;//LCD使能清零send_com(0x38);//功能设置:8位总线,两行显示模式send_com(0x0e);//显示开/关控制:开显示,游标显示,游标闪烁send_com(0x06);//设置输入模式:游标右移 AC自动加1,显示不发生移位元send_com(0x01);//清空显示,
}
/*****主函数*****/
void main()
{init();send_com(0x80+0x10);for(i=0;i<10;i++){send_dat(teble[i]);}send_com(0x80+0x50);for(i=0;i<10;i++){send_dat(teble[i]);}for(i=0;i<13;i++){delay(300);send_com(0x18);//内容左移14位,屏幕外移动到屏幕中}while(1);
}