?? a.lst
字號:
C51 COMPILER V8.01 A 08/22/2007 10:16:19 PAGE 1
C51 COMPILER V8.01, COMPILATION OF MODULE A
OBJECT MODULE PLACED IN a.OBJ
COMPILER INVOKED BY: C:\Program Files\keil\C51\BIN\C51.EXE a.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <reg51.h>
2 #include <stdio.h>
3 #include <string.h>
4 #include <intrins.h>
5 #include <absacc.h>
6 #include "1602.h"
7 #include "18B20.h"
*** WARNING C235 IN LINE 159 OF 18B20.H: parameter 1: different types
8
9
10 #define uchar unsigned char
11 #define uint unsigned int
12 sbit buzzer=P2^0;
13 sbit relay=P3^6;
14 sbit sub=P2^1;
15 sbit add=P2^2;
16 sbit esc=P2^3;
17 sbit ok=P2^4;
18
19 /*****************全局變量的定義******************/
20 uchar data time[]="Time:21:24:30";
21 //uchar data tmpr[]="Tmpr: . C";
22 uchar data j=0; //計算循環次數
23 //uint data t=0; //讀出的溫度數據
24 uchar dp=0x80; //記錄光標位置
25 //uchar neg=0; //零下溫度標志
26
27
28
29
30 //阻塞函數
31 void Wait(uchar i) //i=0時等待松開,i為1時等待按下
32 {
33 1 TR0=0;
34 1 if(i==0)
35 1 {
36 2 while((sub==0)||(add==0)||(esc==0)||(ok==0)) //等待按鍵松開
37 2 {
38 3 TR0=1;
39 3 Delay5Ms();
40 3 TR0=0;
41 3 }
42 2 }
43 1 else
44 1 {
45 2 while((sub==1)||(add==1)||(esc==1)||(ok==1)) //等待按鍵按下
46 2 {
47 3 TR0=1;
48 3 Delay5Ms();
49 3 TR0=0;
50 3 }
51 2 }
52 1 }
53
54
C51 COMPILER V8.01 A 08/22/2007 10:16:19 PAGE 2
55 Timer() interrupt 1 //定時器0溢出
56 {
57 1 uint i;
58 1 TH0=0x4c;
59 1 TL0=0x5a;
60 1 j++;
61 1 if(j==20) //T1每50ms溢出1次,20次后為1秒
62 1 {
63 2 time[12]++;
64 2 if(time[12]==':')
65 2 {
66 3 time[12]='0';
67 3 time[11]++;
68 3 if(time[11]=='6')
69 3 {
70 4 time[11]='0';
71 4 time[9]++;
72 4 if(time[9]==':')
73 4 {
74 5 time[9]='0';
75 5 time[8]++;
76 5 if(time[8]=='6')
77 5 {
78 6 time[8]='0';
79 6 time[6]++;
80 6 if((time[5]=='2')&&(time[6]=='4'))
81 6 for(i=5;i<13;i++)
82 6 {
83 7 if((i!=7)&&(i!=10))
84 7 time[i]='0';
85 7 }
86 6 else if(time[6]==':')
87 6 {
88 7 time[6]='0';
89 7 time[5]++;
90 7 }
91 6 }
92 5 }
93 4 }
94 3 }
95 2 j=0;
96 2 DisplayListChar(0,0,time);
97 2 }
98 1 ReadTemperature();
99 1 DisplayTemperature(t);
100 1 }
101
102 /**************************主函數定義****************************/
103 void main(void)
104 {
105 1 buzzer=1;
106 1 relay=1;
107 1 sub=1;
108 1 add=1;
109 1 esc=1;
110 1 ok=1;
111 1 // buzzer=0;
112 1
113 1 IE=0x82;
114 1 TMOD=0x01;
115 1 TF0=0;
116 1 TH0=0x3c;
C51 COMPILER V8.01 A 08/22/2007 10:16:19 PAGE 3
117 1 TL0=0xb0; //T0初值設置
118 1 LCMInit(); //LCM初始化
119 1 DisplayListChar(0, 0, time);
120 1 TR0=1;
121 1 while(1)
122 1 {
123 2 if(sub==0)
124 2 {
125 3 buzzer=0;
126 3 Delay(5000);
127 3 buzzer=1;
128 3 Wait(0);
129 3 Wait(1);
130 3 }
131 2 if(add==0)
132 2 {
133 3 buzzer=0;
134 3 Delay(5000);
135 3 buzzer=1;
136 3 Wait(0);
137 3 Wait(1);
138 3 }
139 2 if(esc==0)
140 2 {
141 3 buzzer=0;
142 3 Delay(5000);
143 3 buzzer=1;
144 3 Wait(0);
145 3 Wait(1);
146 3 }
147 2 if(ok==0)
148 2 {
149 3 buzzer=0;
150 3 Delay(5000);
151 3 buzzer=1;
152 3 Wait(0);
153 3 Wait(1);
154 3 }
155 2 }
156 1 }
157
158
159
160
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 997 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 32 10
IDATA SIZE = ---- ----
BIT SIZE = ---- 1
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 1 WARNING(S), 0 ERROR(S)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -