?? driver.lst
字號:
C51 COMPILER V7.20 DRIVER 10/13/2008 13:13:44 PAGE 1
C51 COMPILER V7.20, COMPILATION OF MODULE DRIVER
OBJECT MODULE PLACED IN Driver.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE Driver.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include "Main.h"
2 #include "AT89X51.h"
3 #include <intrins.h>
4 #include <absacc.h>
5
6 extern bit timerHap; //定時器到時
7
8 BYTE bdata sensor; //光電傳感器狀態保存, 用于去抖
9 sbit CoinDoor = sensor^0; //投幣口 開/關到位否
10 sbit CoinBox = sensor^1; //大錢箱 到位否
11 sbit RmbOut = sensor^2; //紙幣出 到位否
12 sbit Coiner = sensor^3; //硬幣機 到位否
13 sbit RmbIn = sensor^4; //紙幣進 到位否
14 sbit Provider = sensor^5; //刮票機 到位否
15 sbit Door = sensor^6; //后門 到位否
16 sbit AAA = sensor^7; // 保留
17
18 BYTE bdata lock; //光電傳感器狀態保存, 用于去抖
19 sbit CoinDoorCtl = lock^0; //硬幣投幣口 開關
20 sbit MainLampCtl = lock^1; //維修照明燈 嵊州忠歐 0575-83218520 13967418522
21 sbit CardLampCtl = lock^2; //出卡處照明燈
22 sbit Fan1Ctl = lock^3; //排風扇1
23 sbit Fan2Ctl = lock^4; //排風扇2
24 sbit CoinBoxCtl = lock^5; //加硬幣門鎖上否?
25 sbit BigBoxDoor = lock^6; //錢箱門鎖上否?
26 sbit DoorLock = lock^7; //后門鎖上否?
27
28 BYTE bdata inputByte1; //XBYTE[0x0000];
29 sbit GDG10 = inputByte1 ^ 0; //投幣口 開/關 傳感器
30 sbit GDG11 = inputByte1 ^ 1;
31 sbit GDG12 = inputByte1 ^ 2;
32 sbit GDG13 = inputByte1 ^ 3;
33 sbit GDG14 = inputByte1 ^ 4; //
34 sbit GDG15 = inputByte1 ^ 5; //
35 sbit GDG16 = inputByte1 ^ 6; //
36 sbit GDG17 = inputByte1 ^ 7; //
37
38 BYTE bdata inputByte2; //XBYTE[0x1000];
39 sbit GDG20 = inputByte2 ^ 0; //
40 sbit GDG21 = inputByte2 ^ 1; //
41 sbit GDG22 = inputByte2 ^ 2; //
42 sbit GDG23 = inputByte2 ^ 3; //
43 sbit GDG24 = inputByte2 ^ 4; //
44 sbit GDG25 = inputByte2 ^ 5; //
45 sbit GDG26 = inputByte2 ^ 6; //
46 sbit GDG27 = inputByte2 ^ 7; //
47
48 BYTE bdata inputByte3; //XBYTE[0x2000];
49 sbit GDG30 = inputByte3 ^ 0; //
50 sbit GDG31 = inputByte3 ^ 1; //
51 sbit GDG32 = inputByte3 ^ 2; //
52 sbit GDG33 = inputByte3 ^ 3; //
53 sbit GDG34 = inputByte3 ^ 4; //
54 sbit GDG35 = inputByte3 ^ 5; //
55 sbit GDG36 = inputByte3 ^ 6; //
C51 COMPILER V7.20 DRIVER 10/13/2008 13:13:44 PAGE 2
56 sbit GDG37 = inputByte3 ^ 7; //
57
58 BYTE bdata outputByte1 = 0; //XBYTE[0x0000];
59 sbit OLT0 = outputByte1 ^ 0; //
60 sbit OLT1 = outputByte1 ^ 1; //
61 sbit OLT2 = outputByte1 ^ 2; //
62 sbit OLT3 = outputByte1 ^ 3; //
63 sbit OLT4 = outputByte1 ^ 4; //
64 sbit OLT5 = outputByte1 ^ 5; //
65 sbit OLT6 = outputByte1 ^ 6; //
66 sbit OLT7 = outputByte1 ^ 7; //
67
68 BYTE bdata outputByte2 = 0; //XBYTE[0x1000];
69 sbit OLT8 = outputByte2 ^ 0; //控制投幣口 開 關
70 sbit OLT9 = outputByte2 ^ 1; //控制維修燈 亮 滅
71 sbit OLTA = outputByte2 ^ 2; //控制出卡處燈 亮 滅
72 sbit OLTB = outputByte2 ^ 3; //
73
74 //sbit OLTC = outputByte2 ^ 4;
75 //sbit OLTD = outputByte2 ^ 5;
76 sbit OLTE = outputByte2 ^ 6; //控制fan1 亮 滅
77 sbit OLTF = outputByte2 ^ 7; //控制fan2 亮 滅
78
79 sbit LED_E = P3 ^ 2; //指示燈
80
81 sbit RELAY = P3 ^ 4; //
82
83
84
85 ////////////////////////////////////
86 /*BYTE INPUT1()//for test
87 {
88 inputByte2 = XBYTE[0x1000];
89 return inputByte2;
90 }*/
91
92 /*********************************************************************
93 BYTE INPUT()//for test
94 {
95 inputByte1 = XBYTE[0x0000];
96 return inputByte1;
97 }
98 *********************************************************************/
99 //RELAY
100 void control24V(BOOL relay)
101 {
102 1 OLT8=1; //
103 1 OLT9=1;
104 1 OLTA=1;
105 1 OLTB=1;
106 1 XBYTE[0x1000]=outputByte2; //for test
107 1 if (relay==OPEN) RELAY=0; //低電平控制24V有電
108 1 else RELAY=1;
109 1 }
110 //
111 void InCoinDoor(BOOL OpenClose) //test
112 {
113 1 if (OpenClose==OPEN)
114 1 {
115 2 OLT8=0;
116 2 XBYTE[0x1000] = outputByte2;
117 2 }//低電平控制門開
C51 COMPILER V7.20 DRIVER 10/13/2008 13:13:44 PAGE 3
118 1 else
119 1 {
120 2 OLT8=1;
121 2 XBYTE[0x1000] = outputByte2;
122 2 }
123 1 }
124
125 /*
126 void OutCardLamp(BOOL OpenClose) //出卡處燈 亮滅
127 {
128 if (OpenClose==OPEN)
129 {
130 OLTA=0;
131 XBYTE[0x1000] = outputByte2;
132 }//低電平控制門開
133 else
134 {
135 OLTA=1;
136 XBYTE[0x1000] = outputByte2;
137 }
138 }
139 void MaintainLamp(BOOL OpenClose) //維修燈
140 {
141 OLTE = OpenClose;
142 OLTF = 0;
143 XBYTE[0x1000] = outputByte2;
144 }*/
145 /*********************開關到位情況 0--6****************XBYTE[0x0000]**************************/
146 //GDG10 //0 硬幣進口處 開關情況
147 BOOL isInCoinDoor() //// 1門關 //0 門開 //1門完全開
148 {
149 1 inputByte1 = XBYTE[0x0000];
150 1
151 1 if( GDG10 == 1)
152 1 {
153 2 delay_1ms(1);
154 2 inputByte1 = XBYTE[0x0000];
155 2 if( GDG10 == 1) //延時后 還是原來情況
156 2 {
157 3 CoinDoor = 1; //接受新情況
158 3 }
159 2 }
160 1 if( GDG10 == 0)
161 1 {
162 2 delay_1ms(1);
163 2 inputByte1 = XBYTE[0x0000];
164 2 if( GDG10 == 0) //延時后 還是原來情況
165 2 {
166 3 CoinDoor = 0; //接受新情況
167 3 }
168 2 }
169 1 return CoinDoor;
170 1 }
171
172 /******************************************************************/
173 //GDG14 //1 硬幣機錢箱是否到位
174 BOOL isCoinBox() // 有幣 出高電平
175 {
176 1 inputByte1 = XBYTE[0x0000];
177 1
178 1 if( GDG14 == 1) //有幣
179 1 {
C51 COMPILER V7.20 DRIVER 10/13/2008 13:13:44 PAGE 4
180 2 //delay_1ms(1);
181 2 inputByte1 = XBYTE[0x0000];
182 2 if( GDG14 == 1) //延時后 還是原來情況
183 2 {
184 3 CoinBox= 1; //接受新情況
185 3 }
186 2 }
187 1 else//( GDG14 == 0)
188 1 {
189 2 //delay_1ms(1);
190 2 inputByte1 = XBYTE[0x0000];
191 2 if( GDG14 == 0) //延時后 還是原來情況
192 2 {
193 3 CoinBox= 0; //接受新情況
194 3 }
195 2 }
196 1 return CoinBox;
197 1 }
198 //GDG15 //2 紙幣出幣機到位否
199 BOOL isRmbOut() // 有幣 出高電平
200 {
201 1 inputByte1 = XBYTE[0x0000];
202 1
203 1 if( GDG15 == 1) //有幣
204 1 {
205 2 //delay_1ms(1);
206 2 inputByte1 = XBYTE[0x0000];
207 2 if( GDG15 == 1) //延時后 還是原來情況
208 2 {
209 3 RmbOut=1; //接受新情況
210 3 }
211 2 }
212 1 else//( GDG15 == 0)
213 1 {
214 2 //delay_1ms(1);
215 2 inputByte1 = XBYTE[0x0000];
216 2 if( GDG15 == 0) //延時后 還是原來情況
217 2 {
218 3 RmbOut=0; //接受新情況
219 3 }
220 2 }
221 1 return RmbOut;
222 1 }
223 //GDG16 //3 硬幣機到位否
224 BOOL isCoiner() // 有幣 出高電平
225 {
226 1 inputByte1 = XBYTE[0x0000];
227 1
228 1 if( GDG16 == 1) //有幣
229 1 {
230 2 //delay_1ms(1);
231 2 inputByte1 = XBYTE[0x0000];
232 2 if( GDG16 == 1) //延時后 還是原來情況
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -