📄 intfun.lst
字号:
C51 COMPILER V8.05a INTFUN 06/05/2007 06:25:15 PAGE 1
C51 COMPILER V8.05a, COMPILATION OF MODULE INTFUN
OBJECT MODULE PLACED IN intfun.OBJ
COMPILER INVOKED BY: D:\syssoft\keil805\C51\BIN\C51.EXE intfun.c BROWSE DEBUG OBJECTEXTEND
line level source
1
2 #include "MATH.H"
3 #include "STC12.H"
4 #include "function.h"
5 #include "pin.h"
6 #include "evariable.h"
7
8 // 空调高压中断
9 void InterruptEx0(void) interrupt 0
10 {
11 1 EX0=0;
12 1 if(k_pw)
13 1 {
14 2 alarm_Hpr=1;
15 2 }
16 1 // speaking();
17 1 }
18
19 // 空调低压中断
20 void InterruptEx1(void) interrupt 2
21 {
22 1 EX1=0;
23 1 if(k_pw)
24 1 {
25 2 alarm_Lpr=1;
26 2 }
27 1 // speaking();
28 1 }
29
30
31 void InterruptTAWA(void) interrupt 6
32 {
33 1 unsigned long da;
34 1 CF=0;
35 1 //use PCA0 internal check relating variable
36 1 //every 2.7ms tiggle PCA0
37 1 if(k_pw)
38 1 {
39 2 if(CCF0) //use PCA0 as time
40 2 {
41 3 CCF0=0;
42 3 da=0;
43 3 da=(unsigned long)(CCAP0H*256)+(unsigned long)CCAP0L;
44 3 da=da+0x4682;
45 3 if(da>0xffff)
46 3 {
47 4 da=da-0xffff;
48 4 }
49 3 CCAP0L=(unsigned char)da;
50 3 CCAP0H=(unsigned char)(da/256);
51 3 CCF0_disp();
52 3 }
53 2 //pca2 interrupt indicate temperature rotary switch
54 2 //turning;and rising edge indicate clockwise direction;
55 2 //and falling edge indicate anti_clockwise;
C51 COMPILER V8.05a INTFUN 06/05/2007 06:25:15 PAGE 2
56 2 if(CCF3==1)
57 2 {
58 3 CCF3=0;
59 3 //avoid with error triggle
60 3 //ECCF2=0
61 3 CCAPM3&=0xfe;
62 3 delay2(200);
63 3 if(!pin_windb)
64 3 {
65 4 CCF3_disp();
66 4 }
67 3 //delaly for 3ms
68 3 // delay2(4750);
69 3 delay2(2000);
70 3 CCF3=0;
71 3 CCAPM3|=0x01;
72 3 }
73 2 //pca3 interrupt indicate wind magnitude rotary switch
74 2 //turning;and rising edge indicate anti_clockwise;
75 2 //and falling edge indicate clockwise direction;
76 2 else if(CCF1)
77 2 {
78 3 CCF1=0;
79 3 //avoid with error triggle
80 3 //ECCF3=0
81 3 CCAPM1&=0xfe;
82 3 delay2(200);
83 3 if(!pin_testb)
84 3 {
85 4 CCF1_disp();
86 4 }
87 3 delay2(2000);
88 3 //delaly for 3ms
89 3 // delay2(4750);
90 3 CCF1=0;
91 3 CCAPM1|=0x01;
92 3 }
93 2 }
94 1 else
95 1 {
96 2 CCF0=0;
97 2 CCF1=0;
98 2 CCF3=0;
99 2 }
100 1 }
101
102
103 void CCF0_disp(void)
104 {
105 1 //time for common
106 1 if(freshair_aut)
107 1 {
108 2 if(state_fa==2)
109 2 {
110 3 cnt_fa++;
111 3 if(cnt_fa>17778)
112 3 {
113 4 F8m2m=1;
114 4 cnt_fa=0;
115 4 }
116 3 }
117 2 else if(state_fa==3)
C51 COMPILER V8.05a INTFUN 06/05/2007 06:25:15 PAGE 3
118 2 {
119 3 cnt_fa++;
120 3 if(cnt_fa>4444)
121 3 {
122 4 F8m2m=1;
123 4 cnt_fa=0;
124 4 }
125 3 }
126 2 }
127 1
128 1 if(((alarm_Hpr==1)&&(state_Hp==1))||(((alarm&0x01)==1)&&(state_Hp==3)))
129 1 {
130 2 cnt_Hp++;
131 2 if(cnt_Hp>185)
132 2 {
133 3 F5sHp=1;
134 3 cnt_Hp=0;
135 3 }
136 2 }
137 1
138 1 if(((alarm_Lpr==1)&&(state_Lp==1))||(((alarm&0x02)==2)&&(state_Lp==3)))
139 1 {
140 2 cnt_Lp++;
141 2 if(cnt_Lp>185)
142 2 {
143 3 F5sLp=1;
144 3 cnt_Lp=0;
145 3 }
146 2 }
147 1
148 1 if((alarm&0x0c)&&(state_Sens==1)) //sensor failure --alarm:bit2 open --00
149 1 { // bit3 short --50
150 2 cnt_Sens++;
151 2 if(cnt_Sens>185)
152 2 {
153 3 F5sSens=1;
154 3 cnt_Sens=0;
155 3 }
156 2 }
157 1
158 1 if((WA_changed)&&(alarm==0))
159 1 {
160 2 cnt_WA++;
161 2 if(cnt_WA>90)
162 2 {
163 3 F2sWA=1;
164 3 cnt_WA=0;
165 3 }
166 2 }
167 1
168 1 if(state_ref==1)
169 1 {
170 2 cnt_Ref++;
171 2 if(cnt_Ref>185)
172 2 {
173 3 F5sRef=1;
174 3 cnt_Ref=0;
175 3 }
176 2 }
177 1
178 1 if((ee_changed==1)&&(state_Ee==1))
179 1 {
C51 COMPILER V8.05a INTFUN 06/05/2007 06:25:15 PAGE 4
180 2 cnt_Ee++;
181 2 if(cnt_Ee>185)
182 2 {
183 3 F5sEe=1;
184 3 cnt_Ee=0;
185 3 }
186 2 }
187 1 if((display_resume==1)&&(state_Resume==1))
188 1 {
189 2 cnt_Resume++;
190 2 if(cnt_Resume>185)
191 2 {
192 3 F5sResume=1;
193 3 cnt_Resume=0;
194 3 }
195 2 }
196 1
197 1 if(alarm)
198 1 {
199 2 cnt_Speaking++;
200 2 }
201 1
202 1 cnt_Display++;
203 1
204 1 }
205
206 void CCF1_disp(void)
207 {
208 1 if(pin_testa==0)//clockwise direction
209 1 {
210 2 if(da_TA>15)
211 2 {
212 3 da_TA--;
213 3 display_TA=1;
214 3 }
215 2 }
216 1 else if(pin_testa==1)//anti_clockwise
217 1 {
218 2 if(da_TA<30)
219 2 {
220 3 da_TA++;
221 3 display_TA=1;
222 3 }
223 2 }
224 1 }
225
226 void CCF3_disp(void)
227 {
228 1 if(pin_winda==1)//anti_clockwise
229 1 {
230 2 if(da_WA<99)
231 2 {
232 3 da_WA++;
233 3 display_WA=1;
234 3 }
235 2 }
236 1 else if(pin_winda==0)//clockwise direction
237 1 {
238 2 if(da_WA>0)
239 2 {
240 3 da_WA--;
241 3 display_WA=1;
C51 COMPILER V8.05a INTFUN 06/05/2007 06:25:15 PAGE 5
242 3 }
243 2 }
244 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 584 ----
CONSTANT SIZE = ---- ----
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 + -