郁闷很长时间的数码管左移问题!!!求助高手啊

2019-07-16 06:05发布

以下是我的程序
#include<reg52.h>

#define DatePort P0

sbit DuanMa=P2^2;
sbit WeiMa=P2^3;

unsigned char code Date_Duan[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
unsigned char code Date_Wei[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
unsigned char TempDate[8];

void Delay(unsigned int t);
void Display(unsigned char FirstBit,unsigned char Num);

main()
{
unsigned int j,i,k,s;
while(1)
{
  j++;
  if(j==20)
  {
   j=0;
   if(k==0)
   {
    for(s=0;s<8;s++)
    TempDate[s]=0;
   }
   
   TempDate[8-i]=Date_Duan[k];
   TempDate[9-i]=0;
   if(i==8-k)//变数
   {
    i=0;
    k++;
    if(k==8)
    k=0;
   }
   i++;
  }
  Display(0,8);
}
}

void Delay(unsigned int t)
{
while(--t);
}

//数码管冬动态扫描
void Display(unsigned char FirstBit,unsigned char Num)
{
unsigned char i;

for(i=0;i<Num;i++)
{
  DatePort=0;
  DuanMa=1;
  DuanMa=0;
  DatePort=Date_Wei[i+FirstBit];
  WeiMa=1;
  WeiMa=0;
  DatePort=TempDate[i];
  DuanMa=1;
  DuanMa=0;
  Delay(200);
}
}

很想知道 为什么数码管莫有反应啊!!!!!!  求高手!!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。