51单片机语言
发布网友
发布时间:2022-04-21 14:50
我来回答
共1个回答
热心网友
时间:2022-07-10 08:24
void Delay_ms(unsigned int t) //一个延时ms的程序,t是延时的数量,即是tms
{
unsigned int i,j;
for(i=0;i<t;i++)
for(j=0;j<120;j++)
;
}
void Delay(uint x) //延时时间
{
while(--x);
}
//---------------1602--------------------------------------
void delayms(uint z) //延时N ms
{
uint x,y;
for(x=z;x>0;x--)
for(y=120;y>0;y--);
}
void write_com(uchar com) //1602液晶写指令
{
rs=0;
lcden=0;
LCDDATA=com; //命令送端口
delayms(1); //延时1Ms
lcden=1;
delayms(2); //延时2Ms
lcden=0;
}
void write_date(uchar date) //1602液晶写数据
{
rs=1;
lcden=0;
LCDDATA=date; //数据送端口
delayms(1);
lcden=1;
delayms(2);
lcden=0;
}
void init_lcd(void) //初始化液晶,及画面初始化
{
uchar num;
wela=0;
lcden=0;
write_com(0x38); //16*2显示,5*7点阵,8位数据
write_com(0x0c); //显示开,关光标
write_com(0x06); //移动光标
write_com(0x01); //清除LCD的显示内容
write_com(0x80); //第一行的第一个字符位置。
for(num=0;num<13;num++) // " temper: ";
{
write_date(table[num]); //把table数组中定义的字符串显示出来。。。" temper: ";
Delay(10);
}