/*
write by cjdsn
时间计算
1/22.1184=0.0000005425
1/0.5425=1843317
1843317/40=46083
//我的是阳极显示,0开1关
*/
#include<reg52.h>
unsigned char code Tab[12]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x7f,0xff};
//数码管显示0~9的段码表
unsigned char int_time; //记录中断次数
unsigned char second; //储存秒
unsigned char t,h;
sbit pd=P2^0;
sbit pc=P2^1;
sbit pb=P2^2;
sbit pa=P2^3;
sbit p27=P2^7;
/***********************************************************************
函数功能:快速动态扫描延时,延时约0.6毫秒
************************************************************************/
void delay(void)
{
unsigned char i;
for(i=0;i<200;i++)
;
}
/***********************************************************************
函数功能:显示秒
入口参数:k
出口参数:无
************************************************************************/
void DisplaySecond(unsigned char k)
{
pb=0; //P2.1引脚输出低电平
P0=Tab[k/10]; //显示十位
delay();
delay();
delay();
delay();
delay();
delay();
delay();
delay();
pb=1;
pa=0; //P2.0引脚输出低电平
P0=Tab[k%10]; //显示个位
delay();
delay();
delay();
delay();
delay();
delay();
delay();
delay();
pa=1;
pd=0;
P0=Tab[t/10]; //分 十位