|
\\控制第二个数码管从0显示到f\\
#include<reg52.h>
#define uchar unsigned char
sbit wela1=P2^2;
sbit wela2=P2^3;
sbit wela3=P2^4;
uchar num;
uchar code table[]={
0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,
0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71
};
void delay(int z);
void delay(int z)
{
int i;
uchar j;
for(i=z;i>0;i--)
for(j=150;j>0;j--);
}
void main()
{
wela1=0;
wela2=1;
wela3=1;
while(1)
{
for(num=0;0<16;num++)
{
P0=table[num];
delay(1000);
}
}
}
为啥我的代码烧入之后,循环到f之后就是数字显示不完整,然后就以这种不完整状态走着走着就跳到8然后就一直处于段码全显示状态,
过了很久才又以一样的情况循环,以此反复。
有哪位兄弟有遇到一样的情况吗?
|
|