#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit dula=P2^6;
sbit wela=P2^7;
uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
void yinshi_ms(uint xms)
{
uint i,j;
for(i=xms;i>0;i++)
for(j=125;j>0;j++);
}
void main()
{
uint k=0;
while(1)
{
k++;
if(k==10)
{ k=0; }
dula=1;
P0=table[k];
dula=0;
P0=0xff;
wela=1;
P0=0xfe;
wela=0;
yinshi_ms(500);
}
}
第一個數碼管只會顯示0;k不能+1,循環不了??????
k++,換個位置就可以了,有空你試一下,按照理論來說是沒有問題的了。 |