📄 main.lst
字号:
C51 COMPILER V7.09 MAIN 06/29/2006 11:56:21 PAGE 1
C51 COMPILER V7.09, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND
line level source
1 /*
2 main.c
3 CAT1021看门狗实验程序
4 */
5
6
7 #include <reg51.h>
8
9
10 //定义I/O端口
11 sbit LED = P0^0;
12 sbit SCL = P3^4;
13 sbit SDA = P3^5;
14
15
16 /*
17 函数:Delay()
18 功能:延时0.001~65.536s
19 参数:
20 t>0时,延时(t*0.001)s
21 t=0时,延时65.536s
22 */
23 void Delay(unsigned int t)
24 {
25 1 do
26 1 {
27 2 TH0 = 0xFC;
28 2 TL0 = 0x66+17;
29 2 TR0 = 1;
30 2 while ( !TF0 );
31 2 TR0 = 0;
32 2 TF0 = 0;
33 2 } while ( --t != 0 );
34 1 }
35
36
37 /*
38 函数:Feed()
39 功能:清除CAT1021内部WDT定时器(喂狗)
40 说明:如果没有在1.6秒(典型值)内喂狗,则CAT1021会输出复位信号
41 */
42 void Feed()
43 {
44 1 SDA = 0;
45 1 Delay(1);
46 1 SDA = 1;
47 1 }
48
49
50 /*
51 函数:SysInit()
52 功能:系统初始化
53 */
54 void SysInit()
55 {
C51 COMPILER V7.09 MAIN 06/29/2006 11:56:21 PAGE 2
56 1 LED = 0; //点亮LED。如果CPU被看门狗复位,则能看到LED闪亮
57 1 SCL = 1;
58 1 SDA = 1;
59 1 TMOD &= 0xF0;
60 1 TMOD |= 0x01;
61 1 Delay(250); //上电后必须先延时200ms以上才能对CAT1021进行操作
62 1 }
63
64
65 void main()
66 {
67 1 SysInit();
68 1 for (;;)
69 1 {
70 2 Feed(); //喂狗
71 2 Delay(800); //延时
72 2 }
73 1 }
74
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 71 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
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 + -