|
51单片机-带小数点后一位的一分钟倒计时
这是我在微机实验课上做的一分钟倒计时,这是三位数的,带有一位小数点,用的80C51的晶振是12M的,验收过没问题
单片机源程序如下:
- #include <reg51.h>
- unsigned char shu[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};
- unsigned char xshu[]={0xBF,0x86,0xDB,0xCF,0xE6,0xED,0xFD,0x87,0xFF,0xEF};
- unsigned char count=0x02;
- unsigned char a=0x06,b=0x00,c=0x00;
- void main()
- {
- TMOD=0x10;
- EA=1;
- ET1=1;
- TH1=0x3C;
- TL1=0xB0;
- TR1=1;
- while(1)
- {
- P2=shu[a];
- P0=0x7F;
- P0=0xFF;
- P2=xshu[b];
- P0=0xBF;
- P0=0xFF;
- P2=shu[c];
- P0=0xDF;
- P0=0xFF;
- }
- }
- void timer1() interrupt 3 using 1
- {
- TH1=0x3C;
- TL1=0xB0;
- count--;
- if(count==0x00)
- {
- count=0x02;
- if(c==0x00)
- {
- if(b==0x00)
- {
- if(a==0x00)
- a=0x06;
- a--;
- b=0x0A;
- }
- b--;
- c=0x0A;
- }
- c--;
- }
- }
复制代码
所有资料51hei提供下载:
三位一分钟倒计时.rar
(462 Bytes, 下载次数: 15)
|
|