想利用简单循环设计一个秒表,求大神指导

2019-07-15 18:04发布

本帖最后由 YOUWOTA 于 2014-12-7 19:10 编辑

#include<reg51.h>
#define uint unsigned int
sbit LSA=P2^2;
sbit LSB=P2^3;
sbit LSC=P2^4;
void delayms(uint);
unsigned char code table[]={
0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
//0、1、2、3、4、5、6、7、8、9、A、b、C、d、E、F的显示码
void main()
{
uint i=0;
for(i=0;i<60;i++)

{ if(i<10)
         {         
         LSA=0;LSB=0;LSC=0;P0=table;delayms(1000);
         }
   else
     {
        
         LSA=0;LSB=0;LSC=0;P0=table[i%10];
          LSA=1;LSB=0;LSC=0;P0=table[i/10]; delayms(10);
          delayms(1000);
         }
}
}
                                 
void delayms(uint a)
{ int x,y;
   for(x=a;x>0;x--)
           for(y=110;y>0;y--);

}
这个程序个位和十位显示乱,怎么延时?



友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。