#include
#define uchar unsigned char //无符号字符型数据预定义为uchar
uchar code led[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e}; //定义0~F显示码
***it a2=P0^2; //可寻址位定义
***it a3=P0^3;
***it a6=P0^6;
***it a7=P0^7;
void sepr(unsigned char i); //把形式参数i的高低位分开,分别存 //放在全局变量chh,ch1中
void disp(); //显示chh,ch1中数据(两位)
uchar chh,ch1; //全局变量定义
void main()
{
uchar a;
unsigned char i;
while(1){
a2=1;
for(a=0;a<50;a++); //延时
a2=0; //在P0.2引脚产生下降沿,START和 //ALE引脚产生上升沿锁存通道地址 //,所有内部寄存器清零
for(a=0;a<50;a++);
a2=1;
while(3==0); 这是什么意思??
a2=0;
P1=0xff;
i=P1;
sepr(i);
disp();
}
}
void sepr(unsigned char i)
{
uchar ch;
ch=i;
chh=ch/51;
ch=ch%51;
ch1=ch*10/51;
}
void disp()
{
uchar j;
P2=led[ch1];
a6=1;
a7=0;
for(j=0;j<100;j++);
P2=led[chh];
a6=0;
a7=1;
for(j=0;j<100;j++);
}
你这程序挺乱的,先把显示调好,再来调AD,然后再做到一起调试
#include
#define uchar unsigned char //无符号字符型数据预定义为uchar
uchar code led[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e}; //定义0~F显示码
***it a2=P0^2; //可寻址位定义
***it a3=P0^3;
***it a6=P0^6;
***it a7=P0^7;
void sepr(unsigned char i); //把形式参数i的高低位分开,分别存 //放在全局变量chh,ch1中
void disp(); //显示chh,ch1中数据(两位)
uchar chh,ch1; //全局变量定义
void main()
{
uchar a;
unsigned char i;
while(1){
a2=1;
for(a=0;a<50;a++); //延时
a2=0; //在P0.2引脚产生下降沿,START和 //ALE引脚产生上升沿锁存通道地址 //,所有内部寄存器清零
for(a=0;a<50;a++);
a2=1;
while(3==0); 这是什么意思??
a2=0;
P1=0xff;
i=P1;
sepr(i);
disp();
}
}
void sepr(unsigned char i)
{
uchar ch;
ch=i;
chh=ch/51;
ch=ch%51;
ch1=ch*10/51;
}
void disp()
{
uchar j;
P2=led[ch1];
a6=1;
a7=0;
for(j=0;j<100;j++);
P2=led[chh];
a6=0;
a7=1;
for(j=0;j<100;j++);
}
你这程序挺乱的,先把显示调好,再来调AD,然后再做到一起调试
举报