记录案例:
#include <reg52.h>#include <intrins.h>#define uchar unsigned char#define uint unsigned intsbit dula=P2^6;sbit wela=P2^7;void delayms(uint);void display(uint,uint);uchar aa,num0,num1,num,bai,shi,ge;uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};void main(){TMOD=0x11;TH0=(65536-45872)/256;TL0=(65536-45872)%256;TH1=(65536-45872)/256;TL1=(65536-45872)%256;EA=1;ET0=1;TR0=1;ET1=1;TR1=1;aa=0xfe;while(1){P1=aa;display(shi,ge);}}void display(uint shi,uint ge){dula=1;P0=table[shi];dula=0;P0=0xff;wela=1;P0=0xfe;delayms(5);dula=1;P0=table[ge];dula=0;P0=0xff;wela=1;P0=0xfd;delayms(5);}void delayms(uint xms){uint i,j;for(i=xms;i>0;i--)for(j=110;j>0;j--);}void T0_time0()interrupt 1{TH0=(65536-45872)/256;TL0=(65536-45872)%256;num0++;if(num0==5){num0=0;aa=_crol_(aa,1);}}void T1_time1()interrupt 3{TH1=(65536-45872)/256;TL1=(65536-45872)%256;num1++;if(num1==5){num1=0;num++;if(num==99)num=0;shi=num/10;ge=num%10;}}