?? 800.lst
字號:
215 1 }
216 /*************************************************************
217 充電控制
218 **************************************************************/
219 void charge(void)
220 {
221 1 if((DC42==1)&&(DC34==0))
222 1 {
223 2 delay_ms(80);
224 2 if((DC42==1)&&(DC34==0))
225 2 {
226 3 DC_IO=1;
227 3 }
228 2 }
229 1 else if((DC42==0)&&(DC34==1))
230 1 {
231 2 delay_ms(80);
232 2 if((DC42==0)&&(DC34==1))
233 2 {
234 3 DC_IO=0;
235 3 }
236 2 }
237 1 // else if((DC42==0)&&(DC34==0))
238 1 // {
C51 COMPILER V7.00 800 08/08/2006 18:57:28 PAGE 5
239 1 // DC_IO=1;
240 1 // }
241 1 }
242 /*************************************************************
243 串口發(fā)送一Byte
244 8bit 數(shù)據(jù)位,無奇偶校驗,1bit 停止位,硬件數(shù)據(jù)流控制。
245 dat: 8bit 數(shù)據(jù).
246 *************************************************************/
247 void Send_one_Byte(uchar dat)
248 {
249 1 ES=0;
250 1 TI=0;
251 1 // do
252 1 // for(;TI!=1;)
253 1 // {
254 1 SBUF=dat;
255 1 // }
256 1 while(TI==0);
257 1 // ES=1;
258 1 }
259 /************************************************************
260 發(fā)送數(shù)據(jù)流
261 AT[]
262 *************************************************************/
263 /*
264 void Send_AT(void)
265 {
266 uchar dat;
267 pointer=0;
268 do
269 {
270 dat=buffer[pointer];
271 Send_one_Byte(dat);
272 pointer++;
273 }
274 while(pointer!=comdat);
275 pointer=0;
276 //ES=1;
277 }
278 */
279 /*****************************************************
280 發(fā)送前l(fā)en個字符;
281 ******************************************************/
282 void Send_AA(uchar *dat,uchar len)
283 {
284 1 uchar i;
285 1 for(i=0;i<len;i++)
286 1 {
287 2 Send_one_Byte(*(dat+i));
288 2 delay_us(4000);
289 2 }
290 1 }
291 /***************************************************
292 接收中斷服務(wù)函數(shù)
293 ****************************************************/
294 void receive(void) interrupt 4
295 {
296 1 if(RI==1)
297 1 {
298 2 RI=0;
299 2 ES=0;
300 2 buffer[pointer++]=SBUF; //
C51 COMPILER V7.00 800 08/08/2006 18:57:28 PAGE 6
301 2 if((SBUF==0x0A)&&(pointer>2))
302 2 {
303 3 pointer=0;
304 3 ES=0;
305 3 comgnd=1;
306 3 }
307 2 else
308 2 {
309 3 initial_UART(); //處始化串口
310 3 }
311 2 }
312 1 }
313
314 /****************************************************
315 *****************************************************/
316 void input(void)
317 {
318 1 // uchar i;
319 1 /*切斷車輛蓄電池,車載終端向用戶設(shè)置的報警電話發(fā)出報警信息*/
320 1
321 1 if(ON_OFF==1)
322 1 {
323 2 delay_ms(5);
324 2 if(ON_OFF==1)
325 2 {
326 3 if(SNS==1)
327 3 {
328 4 // Send_Alarm();
329 4 Send_AA(AT_RESET,10);
330 4 Send_num=1;
331 4 SNS=0;
332 4 initial_UART();
333 4 }
334 3 }
335 2 }
336 1 else
337 1 {
338 2 SNS=1;
339 2 }
340 1
341 1 /*按下報警按鈕二秒鐘以上,車載終端向用戶設(shè)置的報警電話發(fā)出報警信息*/
342 1 if((Alarm1==0)||(Alarm2==0)) //P2.0 /*非法開啟車門 ,車載終端向用戶設(shè)置的報警電話發(fā)出報警信息*
-/
343 1 {
344 2 key_delay++;
345 2 delay_ms(8);
346 2 if(key_delay>key_num)
347 2 {
348 3 if(WING==1)
349 3 {
350 4 //Send_D001();
351 4 if(Alarm1==0)
352 4 {
353 5 Send_num=2;
354 5 }
355 4 else if(Alarm2==0)
356 4 {
357 5 Send_num=3;
358 5 }
359 4 LED=0;
360 4 Send_AA(AT_RESET,10);
361 4 // Send_num=2;
C51 COMPILER V7.00 800 08/08/2006 18:57:28 PAGE 7
362 4 WING=0;
363 4 initial_UART();
364 4 }
365 3 }
366 2 }
367 1 else
368 1 {
369 2 key_delay=0;
370 2 WING=1;
371 2 }
372 1 /*非法開啟車門 ,車載終端向用戶設(shè)置的報警電話發(fā)出報警信息*/
373 1 /*
374 1 if(Alarm2==0)
375 1 {
376 1 delay_ms(20);
377 1 if(Alarm2==0)
378 1 {
379 1 Send_D001();
380 1 initial_UART();
381 1 }
382 1 }
383 1 */
384 1 }
385 /*********************************************************
386 ***********************************************************/
387 void Send_D001(void)
388 {
389 1 uchar i;
390 1 Send_AA(AT_CMGS_,10);
391 1 delay_us(5000);
392 1 for(i=0;i<11;i++)
393 1 {
394 2 Send_one_Byte(byte_read(0x2C00+i));
395 2 delay_us(5000);
396 2 }
397 1 delay_us(5000);
398 1 Send_AA(D001,17);
399 1 delay_ms(11000);
400 1 Send_AA(AT_CMGS_,10);
401 1 delay_us(5000);
402 1 for(i=0;i<11;i++)
403 1 {
404 2 Send_one_Byte(byte_read(0x2E00+i));
405 2 delay_us(5000);
406 2 }
407 1 delay_us(5000);
408 1 Send_AA(D001,17);
409 1 delay_ms(5);
410 1 }
411 /*********************************************************
412 ***********************************************************/
413
414 void Send_E001(void)
415 {
416 1 uchar i;
417 1 Send_AA(AT_CMGS_,10);
418 1 delay_us(5000);
419 1 for(i=0;i<11;i++)
420 1 {
421 2 Send_one_Byte(byte_read(0x2C00+i));
422 2 delay_us(5000);
423 2 }
C51 COMPILER V7.00 800 08/08/2006 18:57:28 PAGE 8
424 1 delay_us(5000);
425 1 Send_AA(E001,17);
426 1 delay_ms(11000);
427 1 Send_AA(AT_CMGS_,10);
428 1 delay_us(5000);
429 1 for(i=0;i<11;i++)
430 1 {
431 2 Send_one_Byte(byte_read(0x2E00+i));
432 2 delay_us(5000);
433 2 }
434 1 delay_us(5000);
435 1 Send_AA(E001,17);
436 1 delay_ms(5);
437 1 }
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -