📄 lcd3.lst
字号:
380 1 {if(rbuf[i]=='h'&&rbuf[i+1]=='x')
381 2 {
382 3 find=1;q=i;
383 3 break;}
384 2
385 2 }
386 1 if(find==1)
387 1 {
388 2 y=7;x=6;
389 2 sebuf();}
390 1 }
391
392 void serh4(void)
393 {
394 1 uint i;
395 1 uchar find=0;
396 1
397 1 for(i=h;i<d;i++)
398 1 {if(rbuf[i]=='h'&&rbuf[i+1]=='y')
399 2 {
400 3 find=1;q=i;
401 3 break;}
402 2
403 2 }
404 1 if(find==1)
405 1 {
406 2 y=8;x=6;
407 2 sebuf();}
408 1 }
409
410 void serh5(void)
411 {
412 1 uint i;
413 1 uchar find=0;
414 1 for(i=h;i<d;i++)
415 1 {if(rbuf[i]=='z'&&rbuf[i+1]=='y')
416 2 {
417 3 find=1;q=i;
418 3 break;}
419 2 }
420 1 if(find==1)
421 1 {
422 2 y=9;x=6;
423 2 sebuf();}
424 1 }
425
426 void serh6(void)
C51 COMPILER V7.07 LCD3 09/07/2006 09:21:47 PAGE 8
427 {
428 1 uint i;
429 1 uchar find=0;
430 1
431 1 for(i=h;i<d;i++)
432 1 {if(rbuf[i]=='V'&&rbuf[i+1]=='e')
433 2 {
434 3 find=1;q=i;
435 3 break;}
436 2
437 2 }
438 1 if(find==1)
439 1 {
440 2 y=10;x=6;
441 2 sebuf();}
442 1 }
443
444 void serh7(void)
445 {
446 1 uint i;
447 1 uchar find=0;
448 1 for(i=h;i<d;i++)
449 1 {if(rbuf[i]=='V'&&rbuf[i+1]=='n')
450 2 {
451 3 find=1;q=i;
452 3 break;}
453 2
454 2 }
455 1 if(find==1)
456 1 {
457 2 y=11;x=6;
458 2 sebuf();}
459 1 }
460
461 //七种信息统一显示
462 void serh(void)
463 {
464 1 part();
465 1 serh1();
466 1 serh2();
467 1 serh3();
468 1 serh4();
469 1 serh5();
470 1 serh6();
471 1 serh7();
472 1 }
473
474 //DVL信息
475 void serd1(void)
476 {
477 1 uint i;
478 1 uchar find=0;
479 1 for(i=d;i<g;i++)
480 1 {if(rbuf[i]=='V'&&rbuf[i+1]=='e')
481 2 {
482 3 find=1;q=i;
483 3 break;}
484 2
485 2 }
486 1 if(find==1)
487 1 {
488 2 y=4;x=6;
C51 COMPILER V7.07 LCD3 09/07/2006 09:21:47 PAGE 9
489 2 sebuf();}
490 1 }
491
492 void serd2(void)
493 {
494 1 uint i;
495 1 uchar find=0;
496 1 for(i=d;i<g;i++)
497 1 {if(rbuf[i]=='V'&&rbuf[i+1]=='n')
498 2 {
499 3 find=1;q=i;
500 3 break;}
501 2
502 2 }
503 1 if(find==1)
504 1 {
505 2 y=5;x=6;
506 2 sebuf();}
507 1 }
508 //DVL东北速显示
509 void serd(void)
510 {
511 1 part();
512 1 serd1();
513 1 serd2();
514 1 }
515
516 //GPS信息
517 void serg1(void)
518 {
519 1 uint i;
520 1 uchar find=0;
521 1 for(i=g;i<n;i++)
522 1 {if(rbuf[i]=='j'&&rbuf[i+1]=='d')
523 2 {
524 3 find=1;q=i;
525 3 break;}
526 2
527 2 }
528 1 if(find==1)
529 1 {
530 2 y=10;x=6;
531 2 sebuf();}
532 1 }
533
534 void serg2(void)
535 {
536 1 uint i;
537 1 uchar find=0;
538 1 for(i=g;i<n;i++)
539 1 {if(rbuf[i]=='w'&&rbuf[i+1]=='d')
540 2 {
541 3 find=1;q=i;
542 3 break;}
543 2
544 2 }
545 1 if(find==1)
546 1 {
547 2 y=11;x=6;
548 2 sebuf();}
549 1 }
550 //GPS经纬度显示
C51 COMPILER V7.07 LCD3 09/07/2006 09:21:47 PAGE 10
551 void serg(void)
552 {
553 1 part();
554 1 serg1();
555 1 serg2();
556 1 }
557 //INS信息
558 void sern1(void)
559 {
560 1 uint i;
561 1 uchar find=0;
562 1 for(i=n;i<f;i++)
563 1 {if(rbuf[i]=='j'&&rbuf[i+1]=='d')
564 2 {
565 3 find=1;q=i;
566 3 break;}
567 2
568 2 }
569 1 if(find==1)
570 1 {
571 2 y=5;x=6;
572 2 sebuf();}
573 1 }
574
575 void sern2(void)
576 {
577 1 uint i;
578 1 uchar find=0;
579 1 for(i=n;i<f;i++)
580 1 {if(rbuf[i]=='w'&&rbuf[i+1]=='d')
581 2 {
582 3 find=1;q=i;
583 3 break;}
584 2
585 2 }
586 1 if(find==1)
587 1 {
588 2 y=6;x=6;
589 2 sebuf();}
590 1 }
591
592 void sern3(void)
593 {
594 1 uint i;
595 1 uchar find=0;
596 1 for(i=n;i<f;i++)
597 1 {if(rbuf[i]=='h'&&rbuf[i+1]=='x')
598 2 {
599 3 find=1;q=i;
600 3 break;}
601 2
602 2 }
603 1 if(find==1)
604 1 {
605 2 y=7;x=6;
606 2 sebuf();}
607 1 }
608
609 void sern4(void)
610 {
611 1 uint i;
612 1 uchar find=0;
C51 COMPILER V7.07 LCD3 09/07/2006 09:21:47 PAGE 11
613 1 for(i=n;i<f;i++)
614 1 {if(rbuf[i]=='h'&&rbuf[i+1]=='y')
615 2 {
616 3 find=1;q=i;
617 3 break;}
618 2
619 2 }
620 1 if(find==1)
621 1 {
622 2 y=8;x=6;
623 2 sebuf();}
624 1 }
625
626 void sern5(void)
627 {
628 1 uint i;
629 1 uchar find=0;
630 1 for(i=n;i<f;i++)
631 1 {if(rbuf[i]=='z'&&rbuf[i+1]=='y')
632 2 {
633 3 find=1;q=i;
634 3 break;}
635 2
636 2 }
637 1 if(find==1)
638 1 {
639 2 y=9;x=6;
640 2 sebuf();}
641 1 }
642
643 void sern6(void)
644 {
645 1 uint i;
646 1 uchar find=0;
647 1 for(i=n;i<f;i++)
648 1 {if(rbuf[i]=='V'&&rbuf[i+1]=='e')
649 2 {
650 3 find=1;q=i;
651 3 break;}
652 2
653 2 }
654 1 if(find==1)
655 1 {
656 2 y=10;x=6;
657 2 sebuf();}
658 1 }
659
660 void sern7(void)
661 {
662 1 uint i;
663 1 uchar find=0;
664 1 for(i=n;i<f;i++)
665 1 {if(rbuf[i]=='V'&&rbuf[i+1]=='n')
666 2 {
667 3 find=1;q=i;
668 3 break;}
669 2
670 2 }
671 1 if(find==1)
672 1 {
673 2 y=11;x=6;
674 2 sebuf();}
C51 COMPILER V7.07 LCD3 09/07/2006 09:21:47 PAGE 12
675 1 }
676 //I42惯导信息显示
677 void sern(void)
678 {
679 1 part();
680 1 sern1();
681 1 sern2();
682 1 sern3();
683 1 sern4();
684 1 sern5();
685 1 sern6();
686 1 sern7();}
687
688 //串口发送数据
689 void tserial(void)
690 {uint i;
691 1 for(i=0;i<88;i++)
692 1 {SBUF=tbuf[i];
693 2 while(TI==0);
694 2 TI=0;
695 2
696 2 }
697 1 }
698
699 //按键扫描
700 uchar keyscan(void)
701 {
702 1 uchar readkey,rereadkey;
703 1 uchar x_temp,y_temp;
704 1 key_flag=0;
705 1 do
706 1 {P1=0x0f;
707 2 x_temp=P1&0x0f;
708 2 if(x_temp==0x0f) return(0x0f);
709 2 P1=0xf0;
710 2 y_temp=P1&0xf0;
711 2 readkey=x_temp|y_temp;
712 2
713 2 shortdelay(500);
714 2 P1=0x0f;
715 2 x_temp=P1&0x0f;
716 2 if(x_temp==0x0f) return(0x0f);
717 2 P1=0xf0;
718 2 y_temp=P1&0xf0;
719 2 rereadkey=x_temp|y_temp;
720 2
721 2
722 2 if(readkey==rereadkey)
723 2 {
724 3 key_flag=1;
725 3 shortdelay(500);
726 3 return(readkey);}
727 2 } while(1);
728 1 }
729
730 //欢迎使用
731 void welcom(void)
732 {
733 1 dhz(5,2,"欢迎使用激光陀螺");
734 1 dhz(7,3,"捷联惯导系统");}
735
736 //菜单选择
C51 COMPILER V7.07 LCD3 09/07/2006 09:21:47 PAGE 13
737 void menu(void)
738 {
739 1 fnPR1(LC_GRH_STP,0x80,0x07);
740 1 dstring(4,6,"1.");
741 1 dhz(6,6,"设定初始值");
742 1 dstring(4,7,"2.");
743 1 dhz(6,7,"组合模式选择");
744 1 dstring(4,8,"3.");
745 1 dhz(6,8,"显示实时导航信息");
746 1 }
747 //模式选择
748 void mode(void)
749 {fnPR1(LC_GRH_STP,0xE0,0x10);
750 1 Text_Curser(4,7);
751 1 dhz(7,10,"组合模式选择");
752 1 dstring(4,12,"1.I42");
753 1 dhz(9,12,"惯导");
754 1 dstring(4,13,"2.I42 /GPS");
755 1 dhz(9,13,"惯导");
756 1 dstring(4,14,"3.I42 /DVL");
757 1 dhz(9,14,"惯导");
758 1 dstring(4,15,"4.I42 /GPS/DVL");
759 1 dhz(9,15,"惯导");
760 1
761 1 }
762 //实时导航信息
763 void infor(void)
764 { fnPR1(LC_GRH_STP,0x80,0x07);
765 1 Text_Curser(6,3);
766 1 dhz(7,4,"实时导航信息");
767 1 dhz(1,5,"经度");
768 1 dstring(5,5,": ~"); //~代替度
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -