|
#include <reg51.h>
#include <intrins.h>
#include "delay.h"
#define uchar unsigned char
#define uint unsigned int
uchar code dis_duan[10]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};
uint a=0,b=0;
uint counter=0;
unsigned long number=0;
void init();
void main()
{
uchar num[6]={0,0,0,0,0,0};
uchar i;
init();
while(1)
{
num[0]=number/100000;
num[1]=number%100000/10000;
num[2]=number%10000/1000;
num[3]=number%1000/100;
num[4]=number%100/10;
num[5]=number%10;
for(i=0;i<6;i++)
{
P1=_crol_(0xfe,i);
P0=dis_duan[num[i]];
// delay_ms(1);
}
}
}
void init()
{
IE=0X8A;//1000 1010
TMOD=0X25;//0010 0101
TH0=TL0=0;
TH1=256-250;
TL1=256-250;
TR1=TR0=1;
}
void t0() interrupt 1
{
b++;
}
void t1() interrupt 3
{
a++;
if(a==4000)
{
TR1=TR0=0;
a=0;
number=b*65536+TH0*256+TL0;
TH0=TL0=0;
b=0;
TR1=TR0=1;
}
}
|
|