独立键盘控制LCD显示
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
/*写命令函数*/
void write_com(uchar com)
{
lcdrs=0;
P0=com;
delay(5);
lcden=1;
delay(5);
lcden=0;
}
/*写数据函数*/
void write_data(uchar date)
{
lcdrs=1;
P0=date;
delay(5);
lcden=1;
delay(5);
lcden=0;
}
void init()
{
dula=0; //关段码
wela=0; //关位码
lcden=0;
lcdrw=0;
write_com(0x38); //设置16*2显示,5*7点阵,8位数据接口
write_com(0x0e); //设置开显示,显示光标
/*本程序实现独立键盘控制LCD显示字符串*/
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
uchar code table1[]="HELL0";
uchar code table2[]="YOU ARE WELCOME";
{
write_data(table2[i]);
delay(100);
}
}
while(!key2);
delay(5);
write_com(0x01);//显示清零,数据指针清零
}
}
}
{
write_data(table1[i]);
delay(100);
}
}
while(!key1);
delay(5);
}
write_com(0x01); //显示清零,数据指针清零
if(key2==0)
{
delay(5);
write_com(0x80+0x40);
if(key2==0)
{
for(i=0;i<15;i++)
sbit lcdrs=P1^0;
sbit lcd来自百度文库w=P1^1;
sbit lcden=P2^5;
sbit dula=P2^6;
sbit wela=P2^7;
sbit key1=P3^4;
sbit key2=P3^5;
uint i;
/*延时函数*/
void delay(uint z)
{
uint x,y;
write_com(0x06); //写一个字符后地址指针加1
write_com(0x01); //显示清零,数据指针清零
}
void main()
{
init();
while(1)
{
if(key1==0)
{
write_com(0x80);
delay(5);
if(key1==0)
{
for(i=0;i<5;i++)
for(y=110;y>0;y--);
}
/*写命令函数*/
void write_com(uchar com)
{
lcdrs=0;
P0=com;
delay(5);
lcden=1;
delay(5);
lcden=0;
}
/*写数据函数*/
void write_data(uchar date)
{
lcdrs=1;
P0=date;
delay(5);
lcden=1;
delay(5);
lcden=0;
}
void init()
{
dula=0; //关段码
wela=0; //关位码
lcden=0;
lcdrw=0;
write_com(0x38); //设置16*2显示,5*7点阵,8位数据接口
write_com(0x0e); //设置开显示,显示光标
/*本程序实现独立键盘控制LCD显示字符串*/
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
uchar code table1[]="HELL0";
uchar code table2[]="YOU ARE WELCOME";
{
write_data(table2[i]);
delay(100);
}
}
while(!key2);
delay(5);
write_com(0x01);//显示清零,数据指针清零
}
}
}
{
write_data(table1[i]);
delay(100);
}
}
while(!key1);
delay(5);
}
write_com(0x01); //显示清零,数据指针清零
if(key2==0)
{
delay(5);
write_com(0x80+0x40);
if(key2==0)
{
for(i=0;i<15;i++)
sbit lcdrs=P1^0;
sbit lcd来自百度文库w=P1^1;
sbit lcden=P2^5;
sbit dula=P2^6;
sbit wela=P2^7;
sbit key1=P3^4;
sbit key2=P3^5;
uint i;
/*延时函数*/
void delay(uint z)
{
uint x,y;
write_com(0x06); //写一个字符后地址指针加1
write_com(0x01); //显示清零,数据指针清零
}
void main()
{
init();
while(1)
{
if(key1==0)
{
write_com(0x80);
delay(5);
if(key1==0)
{
for(i=0;i<5;i++)