📄 timer0_1ms.lst
字号:
C51 COMPILER V7.06 TIMER0_1MS 09/14/2012 23:36:51 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE TIMER0_1MS
OBJECT MODULE PLACED IN .\obj\Timer0_1ms.obj
COMPILER INVOKED BY: D:\Program Files (x86)\keil\C51\BIN\C51.EXE Timer0_1ms.c BROWSE DEBUG OBJECTEXTEND PRINT(.\lis\Time
-r0_1ms.lst) OBJECT(.\obj\Timer0_1ms.obj)
stmt level source
1 //
2 // 名称:
3 // 编写:niechao
4 // 日期:2012.08
5 // 修改:无
6 // 内容:1 Ms 延时子程序
7 #include<reg52.h>
8 #include"key.h"
9 #include"led.h"
10
11 bit Timer0_1msflag = 0; //1ms时标
12 unsigned char OUT = 0; //20ms时标
13 unsigned char OUT1 = 0; //40ms时标
14 unsigned char OUT2 = 0; //1s时标
15 //
16 //
17 unsigned char Tflag = 0; //20ms计数
18 unsigned char Tflag1 = 0; //40ms计数
19 unsigned char Tflag2 = 0; //1s时标
20
21 //------------------------------------------------
22 // 1ms延时初始化函数
23 //------------------------------------------------
24 //注意总中断用主程序打开 EA = 1 用来增加灵活性
25 void Timer0Init(void)
26 {
27 1 TMOD &= 0xf0 ; //定时器1通过外中断打开实
28 1 //际不用
29 1 TMOD |= 0x01 ; //定时器0工作方式1
30 1 TH0 = 0xfc ; //定时器初始值12MHz晶振
31 1 TL0 = 0x17 ;
32 1 TR0 = 1 ;
33 1 ET0 = 1 ;
34 1
35 1 }
36
37
38
39 //------------------------------------------------
40 // 1ms延时中断
41 //------------------------------------------------
42
43
44 void Time0Isr(void) interrupt 1
45 {
46 1
47 1 TR0 = 0;
48 1 TH0 = 0xfc ; //定时器重新赋初值
49 1 TL0 = 0x17 ;
50 1
51 1
52 1 Tflag++;
53 1 Timer0_1msflag = 1; //1MS时标标志位置位
54 1
C51 COMPILER V7.06 TIMER0_1MS 09/14/2012 23:36:51 PAGE 2
55 1 if(Tflag == 20)
56 1
57 1 {
58 2
59 2 Tflag=0;
60 2 Tflag1++;
61 2 Tflag2++;
62 2 OUT=1; //20MS时标标志位
63 2
64 2
65 2 led_show(); //50HZ显示刷新速度
66 2
67 2 }
68 1
69 1 if(Tflag1 == 8)
70 1
71 1 {
72 2
73 2 Tflag1=0;
74 2 OUT1=1; //120MS时标标志位
75 2 getkey();
76 2
77 2 }
78 1
79 1
80 1 if(Tflag2 == 100)
81 1
82 1 {
83 2
84 2 Tflag2=0;
85 2 OUT2=1; //2S时标标志位
86 2
87 2 }
88 1
89 1 Display(0,8);
90 1 TR0=1;
91 1
92 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 137 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 6 ----
IDATA SIZE = ---- ----
BIT SIZE = 1 ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -