#include <reg51.h>
typedef unsigned char u8;
typedef unsigned int u16;
sbit RS=P1^0;
sbit RW=P1^1;
sbit EN=P2^5;
sbit STA7=P0^7;
sbit DU=P2^6;
sbit WE=P2^7;
sbit CS88=P2^2;
u8 word1[]={"13839346560"};
u8 word2[]={"www.hjmcu.com"};
//判忙
void wait()
{
P0=0xFF;
do
{
RS=0;
RW=1;
EN=0;
EN=1;
}
while(STA7==1);
EN=0;
}
//写数据
void w_dat(u8 dat)
{
wait();
EN=0;
P0=dat;
RS=1;
RW=0;
EN=1;
EN=0;
}
//写命令
void w_cmd(u8 cmd)
{
wait();
EN=0;
P0=cmd;
RS=0;
RW=0;
EN=1;
EN=0;
}
//发送字符串到lcd
void w_string(u8 addr_start,u8 *p)
{
w_cmd(addr_start);
while(*p !='\0')
{
w_dat(*p++);
}
}
void Init_LCD1602()
{
w_cmd(0x38);
w_cmd(0x0c);
w_cmd(0x06);
w_cmd(0x01);
}
void hjc52_init()
{
DU=1;
P0=0X00;
DU=0;
}
void main()
{
hjc52_init();
Init_LCD1602();
w_string(0x80,word1);
w_string(0xC0,word2);
while(1);
}
|