本帖最后由 后影遁 于 2018-11-13 18:08 编辑
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit rs=P3^5;
sbit lcden=P3^4;
sbit dula=P2^6;
sbit wela=P2^7;
uint num;
uint code table[]={'0','1','2','3','4','5','6','7','8','9'};
void delay(uint x)
{
uint a,b;
for(a=x;a>0;a--)
for(b=10;b>0;b--);
}
void write_com(uchar com)
{
P0=com;
rs=0;
lcden=0;
delay(10);
lcden=1;
delay(10);
lcden=0;
}
void write_date(uchar date)
{
P0=date;
rs=1;
lcden=0;
delay(10);
lcden=1;
delay(10);
lcden=0;
}
void init()
{
dula=0;
wela=0;
write_com(0x38);
delay(20);
write_com(0x0e);
delay(20);
write_com(0x06);
delay(20);
write_com(0x01);
delay(20);
}
void main()
{
uint j;
num=0;#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit rs=P3^5;
sbit lcden=P3^4;
sbit dula=P2^6;
sbit wela=P2^7;
uint num;
uint code table[]={'0','1','2','3','4','5','6','7','8','9'};
void delay(uint x)
{
uint a,b;
for(a=x;a>0;a--)
for(b=10;b>0;b--);
}
void write_com(uchar com)
{
P0=com;
rs=0;
lcden=0;
delay(10);
lcden=1;
delay(10);
lcden=0;
}
void write_date(uchar date)
{
P0=date;
rs=1;
lcden=0;
delay(10);
lcden=1;
delay(10);
lcden=0;
}
void init()
{
dula=0;
wela=0;
write_com(0x38);
delay(20);
write_com(0x0e);
delay(20);
write_com(0x06);
delay(20);
write_com(0x01);
delay(20);
}
void main()
{
uint j;
num=0;
j=0;
init();//液晶管初始化
write_com(0x80+1);//设定第一个显示数字的地址
write_date(table[j]);//显示第一个数字
for( ; j>9; j++)
{ j++;
write_com(0x80+1+j);//设定地址
delay(20);
write_date(table[j]);//显示数字
if(j==9)
while(1);
delay(100);//延时
}
}
j=0;
init();//液晶管初始化
write_com(0x80+1);//设定第一个显示数字的地址
write_date(table[j]);//显示第一个数字
for( ; j>9; j++)
{ j++;
write_com(0x80+1+j);//设定地址
delay(20);
write_date(table[j]);//显示数字
if(j==9)
while(1);
delay(100);//延时
}
}
|