?? spi.lst
字號:
172 4 // transfer_ad=(transfer2-canmodify_package[0])*(canmodify_package[3]*1000)/65536;
173 4
174 4 // if(transfer2>=(canmodify_package[0])+12752)
175 4 /*----------------------------------------It is temporary-------------------------------------------------
-------*/
176 4 //if(transfer2>=(canmodify_package[0]*52368/(canmodify_package[3]*1000))+12752)
177 4 if(transfer2>=((long)canmodify_package[0]*(canmodify_package[17]-canmodify_package[15])/(c
C51 COMPILER V6.12 SPI 06/09/2003 19:14:26 PAGE 4
-anmodify_package[3]*1000))+canmodify_package[15])
178 4 /*--------------------------------------------------------------------------------------------------------
-----------*/
179 4 {
180 5 cycle_times=1;
181 5 //transfer_ad=((transfer2-canmodify_package[0]-12752)*(canmodify_package[3]*1000
-))/52368;
182 5 /*----------------------------------------It is temporary-------------------------------------------------
-------*/
183 5 //transfer_ad=(((transfer2-12752)*(canmodify_package[3]*1000))/52368)-canmodify_package[0];
184 5 //transfer3=transfer_ad*4095/(canmodify_package[3]*1000);
-
185 5 transfer_ad=(((transfer2-canmodify_package[15])*(canmodify_package[3]*1000))/(can
-modify_package[17]-canmodify_package[15]))-canmodify_package[0];
186 5 transfer3=transfer_ad*4095/(canmodify_package[3]*1000);
187 5 /*--------------------------------------------------------------------------------------------------------
-----------*/
188 5 //transfer3=((transfer2-canmodify_package[0]-12752)*4095)/52368;
189 5
190 5 if (transfer3>=4095)
191 5 DAC0=4095;
192 5 else
193 5 {DAC0=transfer3;}
194 5 }
195 4 else
196 4 {
197 5 cycle_times=-8;
198 5 //transfer_ad=((canmodify_package[0]+12752-transfer1)*(canmodify_package[3]*1000)
-)/52368;
199 5 /*----------------------------------------It is temporary-------------------------------------------------
-------*/
200 5 //transfer_ad=((canmodify_package[0]*52368/(canmodify_package[3]*1000)+12752)-transfer2)*(ca
-nmodify_package[3]*1000)/52368;
201 5 transfer_ad=(((long)canmodify_package[0]*(canmodify_package[17]-canmodify_pac
-kage[15])/(canmodify_package[3]*1000)+canmodify_package[15])-transfer2)*(canmodify_package[3]*1000)/(canmodify_package[1
-7]-canmodify_package[15]);
202 5 /*--------------------------------------------------------------------------------------------------------
-----------*/
203 5 DAC0=0;
204 5 }
205 4 }
206 3
207 3 if(canmodify_package[6]==3)
208 3 {
209 4 // if(transfer2>=canmodify_package[0]+127)
210 4 /*----------------------------------------It is temporary-------------------------------------------------
-------*/
211 4 //if(transfer2>=canmodify_package[0]*65404/(canmodify_package[3]*1000)+127)
212 4 if(transfer2>=(long)canmodify_package[0]*(canmodify_package[18]-canmodify_package[16])/(canmod
-ify_package[3]*1000)+canmodify_package[16])
213 4 /*--------------------------------------------------------------------------------------------------------
-----------*/
214 4 {
215 5 cycle_times=1;
216 5 // transfer_ad=(transfer2-canmodify_package[0]-127)*(canmodify_package[3]*1000)/65404;
217 5 /*----------------------------------------It is temporary-------------------------------------------------
-------*/
218 5 // transfer_ad=(transfer2-127)*(canmodify_package[3]*1000)/65404-canmodify_package[0];
219 5 // DAC0=transfer_ad*4095/(canmodify_package[3]*1000);
220 5 transfer_ad=(transfer2-canmodify_package[16])*(canmodify_package[3]*1000)/(canmodify_pac
-kage[18]-canmodify_package[16])-canmodify_package[0];
221 5 DAC0=transfer_ad*4095/(canmodify_package[3]*1000);
C51 COMPILER V6.12 SPI 06/09/2003 19:14:26 PAGE 5
222 5 /*--------------------------------------------------------------------------------------------------------
-----------*/
223 5 //DAC0=(transfer2-canmodify_package[0])*4095/65536;
224 5 if(transfer2>=65404)DAC0=4095;
225 5 }
226 4 else
227 4 {
228 5 cycle_times=-8;
229 5 //transfer_ad=(canmodify_package[0]+127-transfer2)*(canmodify_package[3]*1000)/65404;
230 5 /*----------------------------------------It is temporary-------------------------------------------------
-------*/
231 5 //transfer_ad=((canmodify_package[0])*65404/(canmodify_package[3]*1000)+127-transfer2)*(canmodify
-_package[3]*1000)/65404;
232 5 transfer_ad=((long)canmodify_package[0]*(canmodify_package[18]-canmodify_package[16])/(c
-anmodify_package[3]*1000)+canmodify_package[16]-transfer2)*(canmodify_package[3]*1000)/(canmodify_package[18]-canmodify_
-package[16]);
233 5 /*--------------------------------------------------------------------------------------------------------
-----------*/
234 5 DAC0=0;
235 5
236 5 }
237 4 }
238 3 //transfer_ad=transfer2;
239 3 dec=5;
240 3 total=0;
241 3 }
242 2
243 2 } /*reset the pointer of the last ADC result */
244 1 }
245
246 /* -----------------------------------------------------------------------------------------------
247 Function: uchar readByte (void)
248 PURPOSE:
249 PARAMETERS:
250 RETURN:
251 COMMENTS:
252 HISTORY:
253 Date: 2002-7-23
254 Author: xiaolan
255 Comment: Wrote it
256 ------------------------------------------------------------------------------------------------*/
257 uchar readByte (void)
258 {
259 1 xdata uchar i, ucReturn = 0x00;
260 1
261 1 /* AD_CS = 0; */
262 1 AD_DOUT = 1;
263 1 AD_SCLK = 1;
264 1
265 1 for (i = 0; i < 8; i ++)
266 1 {
267 2 AD_SCLK = 0;
268 2 ucReturn <<= 1;
269 2 if (AD_DOUT)
270 2 ucReturn |= 0x01;
271 2 AD_SCLK = 1;
272 2 }
273 1
274 1 /* AD_CS = 1; */
275 1 AD_DOUT = 1;
276 1 AD_SCLK = 1;
277 1
C51 COMPILER V6.12 SPI 06/09/2003 19:14:26 PAGE 6
278 1 return (ucReturn);
279 1 }
280
281 /* -----------------------------------------------------------------------------------------------
282 Function: void delayMS (uchar)
283 PURPOSE: delay certain time
284 PARAMETERS:
285 RETURN:
286 COMMENTS:
287 HISTORY:
288 Date: 2002-7-1
289 Author: xiaolan
290 Comment: Wrote it
291 ------------------------------------------------------------------------------------------------*/
292 void delayMS (uchar MS)
293 {
294 1 xdata uchar us,usn;
295 1 while (MS!=0)
296 1 {WDTCN=0xa5;
297 2 usn = 4;
298 2 while (usn!=0)
299 2 {WDTCN=0xa5;
300 3 us = 0xf0;
301 3 while (us!=0)
302 3 {WDTCN=0xa5;
303 4 us--;
304 4 }
305 3 usn--;
306 3 }
307 2 MS--;
308 2 }
309 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 2000 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = 16 25
PDATA SIZE = ---- ----
DATA SIZE = 11 ----
IDATA SIZE = 12 ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -