標(biāo)題:
基于51單片機1602顯示屏的簡單應(yīng)用
[打印本頁]
作者:
6010010
時間:
2019-3-7 23:07
標(biāo)題:
基于51單片機1602顯示屏的簡單應(yīng)用
#include"reg52.h"
#define uint unsigned int
#define uchar unsigned char
uchar code table1[]="I am leedianyi";
uchar code table2[]="A science geek";
uchar code table3[]="Handsome,Humorous";
uchar code table4[]="Height 180CM";
uchar code table5[]="So far single";
uchar code table6[]="No girlfringd";
uchar code table7[]="Tha is all";
uchar code table8[]="Thank you";
sbit lcden=P3^5; //????
sbit lcdrs=P3^7; //????
sbit lcdrw=P3^6; //??д??
sbit beef=P3^4;
void delay();
void write_com();
void write_date();
void init();
void delay(uint z)
{
uint i,j;
for(i=z;i>0;i--)
for(j=110;j>0;j--);
}
void write_com(uchar com)// ???д??????
{
lcdrs=0; //???д??????
lcdrw=0; //
P0=com; //???д?????????????????
delay(5); //????????????
lcden=1; //???
delay(5);
lcden=0;
}
void write_date(uchar date)//???д???????
{
lcdrs=1;
lcdrw=0;
P0=date;
delay(5);
lcden=1;
delay(5);
lcden=0;
}
void init()
{
lcden=0;
write_com(0x38);//????16x2?????5x7????8λ?????
write_com(0x0c);//??????????????????
write_com(0x06);//д??????????????1
write_com(0x01);//?????0?????????
}
void main()
{
uchar i=0;
init();
write_com(0x80);
while(table1[i]!='\0') //ASCLL???0?????????????????????
{
write_date(table1[i]);
delay(65);
i++;
}
i=0;
write_com(0x80+0x40);
while(table2[i]!='\0')
{
write_date(table2[i]);
delay(65);
i++;
}
i=0;
delay(3000);
beef=0;
delay(65);
beef=1;
write_com(0x01);
write_com(0x80);
while(table3[i]!='\0')
{
write_date(table3[i]);
delay(65);
i++;
}
i=0;
write_com(0x80+0x40);
while(table4[i]!='\0')
{
write_date(table4[i]);
delay(65);
i++;
}
i=0;
delay(3000);
beef=0;
delay(65);
beef=1;
write_com(0x01);
write_com(0x80);
while(table5[i]!='\0')
{
write_date(table5[i]);
delay(65);
i++;
}
i=0;
write_com(0x80+0x40);
while(table6[i]!='\0')
{
write_date(table6[i]);
delay(65);
i++;
}
i=0;
delay(3000);
beef=0;
delay(65);
beef=1;
write_com(0x01);
write_com(0x80);
while(table7[i]!='\0')
{
write_date(table7[i]);
delay(65);
i++;
}
i=0;
write_com(0x80+0x40);
while(table8[i]!='\0')
{
write_date(table8[i]);
delay(65);
i++;
}
i=0;
delay(3000);
beef=0;
delay(65);
beef=1;
while(1);
}
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1