以下程序是一个四位定时显示程序
a【9】是显示0-9是的代码,c【3】是1-4位数码管点亮代码,b【0】-b【3】用来记录各位的状态,b【4】用来扫描各个数码管
我用的是 stc89c52 要求是从低位开是0123456789......向高位进位是高位点亮,请教各位大侠下面这个程序有什么问题
#include<reg52.h>
int a[9];
int c[3];
delay()//延时函数
{
int i;
for(i=0;i<3340;i++)
;
}
int jishu(int i)//数据显示表格
{
return a;
}
int dingwei(int i)//位置表格
{
return c;
}
main()
{
int b[4];
c[0]=0xfe;
c[1]=0xfd;
c[2]=0xfb;
c[3]=0xf7;
a[0]=0xff;
a[1]=0xf9;
a[2]=0xa4;
a[3]=0xb0;
a[4]=0x99;
a[5]=0x92;
a[6]=0x82;
a[7]=0xf8;
a[8]=0x80;
a[9]=0x90;
for(b[0]=0;b[0]<=9;b[0]++)//最高位
for(b[1]=0;b[1]<=9;b[1]++)//次高位
for(b[2]=0;b[2]<=9;b[2]++)//次低位
for(b[3]=0;b[3]<=9;b[3]++)//低位
for(b[4]=0;b[4]<=3;b[4]++)//定位计数函数
{
P3=dingwei(b[4]);
P0=jishu(b[b[4]]);
delay();
}
} |