📄 +
字号:
C51 COMPILER V7.50 99秒倒计时 05/16/2010 11:29:15 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE 99秒倒计时
OBJECT MODULE PLACED IN 99秒倒计时.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE 99秒倒计时.c BROWSE DEBUG OBJECTEXTEND
line level source
1 /*-----------------------------------------------
2 名称:99秒倒计时器
3 内容:通过定时器倒计时
4 ------------------------------------------------*/
5 #include<reg52.h> //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义
6 code unsigned char tab[]=
7 {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
8 //共阴数码管 0-9
9
10 unsigned char Dis_Shiwei;//定义十位
11 unsigned char Dis_Gewei; //定义个位
12 /******************************************************************/
13 /* 延时函数 */
14 /******************************************************************/
15 void delay(unsigned int cnt)
16 {
17 1 while(--cnt);
18 1 }
19 /******************************************************************/
20 /* 主函数 */
21 /******************************************************************/
22 main()
23 {
24 1
25 1 TMOD |=0x01;//定时器设置 10ms in 12M crystal,工作在模式1,16位定时
26 1 TH0=0xd8;
27 1 TL0=0xf0;
28 1 IE= 0x82; //打开中断
29 1 TR0=1; //打开定时开关
30 1
31 1 while(1)
32 1 {
33 2 P0=Dis_Shiwei;//显示十位
34 2 P2=0;
35 2 delay(300); //短暂延时
36 2 P0=Dis_Gewei; //显示个位
37 2 P2=1;
38 2 delay(300);
39 2 }
40 1
41 1 }
42 /******************************************************************/
43 /* 定时器中断函数 */
44 /******************************************************************/
45 void tim(void) interrupt 1 using 1
46 {
47 1 static unsigned char second=99,count; //初值99
48 1 TH0=0xd8; //重新赋值
49 1 TL0=0xf0;
50 1 count++;
51 1 if (count==100)
52 1 {
53 2 count=0;
54 2 second--;//秒减1
55 2 if(second==0)
C51 COMPILER V7.50 99秒倒计时 05/16/2010 11:29:15 PAGE 2
56 2 { //这里添加定时到0的代码 ,可以是灯电路,继电器吸合等,或者执行一个程序
57 3 second=99; //减到0是重新赋值99
58 3 }
59 2 Dis_Shiwei=tab[second/10];//十位显示值处理
60 2 Dis_Gewei=tab[second%10]; //个位显示处理
61 2
62 2 }
63 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 118 ----
CONSTANT SIZE = 10 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 4 ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -