📄 mcu.lst
字号:
292
293 ScreenStop();
294 CarDirecte=CarDirecte+1;
295 // if(CarDirecte == 3)
296 // LED_GrnOff();
297 temp = 0;
298 }
299 else if(CarDirecte == 3)
300 {
301
302 // i = Read24C16(ep_Seven_Page);
C51 COMPILER V7.06 MCU 12/11/2007 11:28:42 PAGE 6
303 ScreenDown();
304 while((ParTest(temp,0x78))>6)
305 {
306 ScreenDown();
307 temp = AdcCont();
308 temp &=0x7f;
309 CLRWDT = 0x55;
310 }
311 ScreenStop();
312 // Write24C16(ep_Seven_Page,0x00);
313 ScrnCount = 0;
314
315 while((ReadCarStart())!=0)
316 {
317 CarBack();
318 CLRWDT = 0x55;
319 }
320 CarStop();
321 CarDirecte=CarDirecte-1;
322 temp = 0;
323 // if(CarDirecte == 2)
324 // LED_GrnOn();
325 DrivePowOff();
326 return;
327 }
328
329 // }
330 }
331 unsigned char AdcCont()
332 {
333 // unsingned int cycl;
334 unsigned char vel1;
335 ADC_CON=STRT_ADC|EN_ADC0;//|EN_ADC3;
336 // Sleep(1);
337 while(ADC3_REG&CMP_ADC ==0)
338 {
339 CLRWDT = 0x55;
340
341 }
342 vel1=ADC0_REG;
343 printf("ADC0_REG=%c\n",vel1);
344 Sleep(10);
345 // while(vel1 !=46) //(abs(vel1-vel2) >3 )
346 // {
347 // if(CMP_ADC==1)
348 // {
349 // ScreenDown();
350 // vel1=ADC0_REG;
351 // CLRWDT = 0x55;
352 // LED_GrnOff();
353 // }
354 // }
355 // CLRWDT = 0x55;
356 ScrnCount= vel1;
357 // if((vel1 ==46) || (vel1==66) || (vel1==83) || (vel1==71) || (vel1==76) || (vel1==81) || (vel1==5)|| (ve
-l1==10) ||
358 // (vel1==15) || (vel1==20) || (vel1==25) || (vel1==30) || (vel1==35) || (vel1==40))
359 // Write24C16(ep_SevenPage,ScrnCount);
360 // Sleep(20);
361
362 return vel1;
363 }*/
C51 COMPILER V7.06 MCU 12/11/2007 11:28:42 PAGE 7
364 void driver2(void)
365 {
366 1 unsigned char LastTime;
367 1 TimeCount = 0;
368 1 // TCON = 0x44;
369 1 TMOD = 0x06;
370 1 TR0 = 1;
371 1 EA = 0;
372 1 ScrnCount = 1;
373 1 if(CarDirecte == 2)
374 1 {
375 2 TL0 = 232; //0x231;
376 2 TH0 = 232; //0x231;
377 2 EX0 = 1;
378 2 // INTEXT_EN = 0x03;
379 2 EA = 1;
380 2
381 2 while(ScrnCount == 1)
382 2 {
383 3 ScreenDown();
384 3 CLRWDT = 0x55;
385 3 // if(TL0 == 250)
386 3 // {
387 3 // LED_GrnOn();
388 3 // }
389 3 LastTime = TL0;
390 3 if(LastTime == 253)
391 3 {
392 4 Delay2m();
393 4 ScrnCount = 0;
394 4 TimeCount = 1;
395 4 ScreenStop();
396 4 }
397 3 }
398 2 ScreenStop();
399 2 }
400 1 if(CarDirecte == 3)
401 1 {
402 2 TL0 = 232; //0x231;
403 2 TH0 = 232; //0x231;
404 2 EX0 = 1;
405 2 // INTEXT_EN = 0x02;
406 2 EA = 1;
407 2 while(ScrnCount == 1)
408 2 {
409 3 ScreenUp();
410 3 CLRWDT = 0x55;
411 3 LastTime = TL0;
412 3 if(LastTime == 253)
413 3 {
414 4 Delay2m();
415 4 ScrnCount = 0;
416 4 TimeCount = 1;
417 4 ScreenStop();
418 4 }
419 3 }
420 2 ScreenStop();
421 2 }
422 1 // EA = 1;
423 1 }
424
425 unsigned char ParTest(unsigned char k, unsigned m)
C51 COMPILER V7.06 MCU 12/11/2007 11:28:42 PAGE 8
426 {
427 1 unsigned char valu;
428 1 if(k < m)
429 1 {
430 2 valu= m-k;
431 2 }
432 1 else
433 1 {
434 2 valu= k-m;
435 2 }
436 1 return valu;
437 1 }
438 /*
439 void ResetCar()
440 {
441 while((ReadCarStart())!=0)
442 {
443 CarBack();
444 CLRWDT = 0x55;
445 }
446 CarStop();
447 }
448
449 bit ReadCarStart()
450 {
451 bit m;
452 Byte Port;
453 RDPA_REG |=PA6;
454 Port = PTA_REG;
455 if((Port & PA6)!=0)
456 {
457 m=1;
458 }
459 else
460 {
461 m=0;
462 }
463 return m;
464 }
465 bit ReadCarend()
466 {
467 bit m;
468 Byte Port;
469 RDPA_REG |=PA4;
470 Port = PTA_REG;
471 if((Port & PA4)!=0)
472 {
473 m=1;
474 }
475 else
476 {
477 m=0;
478 }
479 return m;
480 }
481
482 void CarBack()
483 {
484 Byte Port;
485 Port = PTA_REG;
486 Port |= RDPA_REG;
487 Port |= PA2;
C51 COMPILER V7.06 MCU 12/11/2007 11:28:42 PAGE 9
488 PTA_REG = Port;
489
490 Port = PTA_REG;
491 Port |= RDPA_REG;
492 Port &= ~PA0;
493 PTA_REG = Port;
494 }
495 void CarStop()
496 {
497 Byte Port;
498 Port = PTA_REG;
499 Port |= RDPA_REG;
500 Port &= ~PA2;
501 PTA_REG = Port;
502
503 Port = PTA_REG;
504 Port |= RDPA_REG;
505 Port &= ~PA0;
506 PTA_REG = Port;
507 }
508 void CarFront()
509 {
510 Byte Port;
511 Port = PTA_REG;
512 Port |= RDPA_REG;
513 Port &= ~PA2;
514 PTA_REG = Port;
515 //
516 Port = PTA_REG;
517 Port |= RDPA_REG;
518 Port |= PA0;
519 PTA_REG = Port;
520 }
521 */
522 void ScreenUp()
523 {
524 1 Byte Port;
525 1 Port = PTA_REG;
526 1 Port |= RDPA_REG;
527 1 Port |= PA1;
528 1 PTA_REG = Port;
529 1
530 1 Port = PTA_REG;
531 1 Port |= RDPA_REG;
532 1 Port &= ~PA0;
533 1 PTA_REG = Port;
534 1 }
535 void ScreenStop()
536 {
537 1 Byte Port;
538 1 Port = PTA_REG;
539 1 Port |= RDPA_REG;
540 1 Port &= ~PA0;
541 1 PTA_REG = Port;
542 1
543 1 Port = PTA_REG;
544 1 Port |= RDPA_REG;
545 1 Port &= ~PA1;
546 1 PTA_REG = Port;
547 1 }
548 void ScreenDown()
549 {
C51 COMPILER V7.06 MCU 12/11/2007 11:28:42 PAGE 10
550 1 Byte Port;
551 1 Port = PTA_REG;
552 1 Port |= RDPA_REG;
553 1 Port &= ~PA1;
554 1 PTA_REG = Port;
555 1
556 1 Port = PTA_REG;
557 1 Port |= RDPA_REG;
558 1 Port |= PA0;
559 1 PTA_REG = Port;
560 1 }
561 //********************************************************
562 //********************************************************
563 //==========================================
564 unsigned char ScanKey()
565 {
566 1 unsigned char i,k=0,j,h,m=0;
567 1
568 1 line1l();
569 1 line2l();
570 1 line3l();
571 1 // Sleep(9);
572 1
573 1 if((Row1() == 0)||(Row2()==0)||(Row3()==0))
574 1 {
575 2 line1h();
576 2 line2h();
577 2 line3h();
578 2 // line4h();
579 2
580 2 for(i=4;i<8;i++)
581 2 {//p2.i=0;
582 3 CLRWDT = 0x55;
583 3 switch(i)
584 3 {
585 4 case 4:{
586 5 line1l();
587 5 break;
588 5 }
589 4 case 5:{
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -