📄 show_window.lst
字号:
452 3 }
453 2 if(Bhour/10==0)
454 2 {
455 3 Display_Char(3,3,0);
456 3 }
457 2 else
458 2 {
459 3 Display_Char(3,3,Bhour/10);
460 3 }
461 2 Display_Char(4,3,Bhour%10);
462 2 Display_Char(5,3,62); // :
463 2 Display_Char(6,3,time[2]-0x30);
464 2 Display_Char(7,3,time[3]-0x30);
465 2 Display_Char(8,3,62);
466 2 Display_Char(9,3,time[4]-0x30);
467 2 Display_Char(10,3,time[5]-0x30);
468 2 /*
469 2 Display_Char(9,1,Bhour%10-0x30);
470 2 Display_Char(10,1,10);
471 2 Display_Char(11,1,time[2]-0x30);
472 2 Display_Char(12,1,time[3]-0x30);
473 2 Display_Char(13,1,10);
474 2 Display_Char(14,1,time[4]-0x30);
475 2 Display_Char(15,1,time[5]-0x30);
476 2 */
477 2 buf_full&=~0x08;
478 2 dsp_count=0;
479 2 }
480 1 }
481
482 /*****************************************************************/
483 /* 窗口显示函数:基本信息 :第三屏 : */
484 /* 窗口模式: 00000 */
485 /*
C51 COMPILER V8.02 SHOW_WINDOW 05/25/2008 15:06:03 PAGE 9
486 / ----------------------- ------- ------------------------\
487 | 水平定位误差 3 单位为“米” |
488 | ----------------------- ------- ------------------------ |
489 | 高度符号 1 '+' 或 '-' |
490 | ----------------------- ------- ------------------------ |
491
492
493 */
494 /*****************************************************************/
495 void show_menu_GaoDu()
496 {
497 1
498 1 Display_Char(0,5,43); // H
499 1 Display_Char(1,5,62); // :
500 1 if((((use_sat[0]-0x30)*10+(use_sat[1]-0x30))>=4)&&(((use_sat[0]-0x30)*10+(use_sat[1]-0x30))<=12))
501 1 {
502 2 Display_Char(2,5,Height[0]-0x30); // 0
503 2 Display_Char(3,5,Height[1]-0x30); // 1
504 2 Display_Char(4,5,Height[2]-0x30); // 2
505 2
506 2 Display_Char(5,5,66); // .
507 2
508 2 Display_Char(6,5,Height[4]-0x30); // 4
509 2 // Display_Char(7,5,Height[5]-0x30); // 5
510 2 }
511 1 else
512 1 {
513 2 Display_Char(2,5,0); // 0
514 2 Display_Char(3,5,0); // 1
515 2 Display_Char(4,5,0); // 2
516 2
517 2 Display_Char(5,5,66); // .
518 2
519 2 Display_Char(6,5,0); // 4
520 2 Display_Char(7,5,0); // 5
521 2 }
522 1 }
523 /*****************************************************************/
524 /* 窗口显示函数:基本信息 :第三屏 : */
525 /* 窗口模式: */
526 /*
527
528 ----------------------- ------- ------------------------
529 /东/西 速度方向 1 'E' 或 'W'
530 | ----------------------- ------- ------------------------
531 | 东/西速度 4 单位是“米/秒”,在第三位后省略了一个小数点,
532 | ("1234" = 123.4 m/s)
533 V | ----------------------- ------- ------------------------
534 e | 南/北 速度方向 1 'S' 或 'N'
535 l |
536 o | ----------------------- ------- ------------------------
537 c | 南/北 速度 4 单位是“米/秒”,在第三位后省略了一个小数点,
538 i | ("1234" = 123.4 m/s )
539 t | ----------------------- ------- ------------------------
540
541 */
542 /*****************************************************************/
543 void show_menu_SuDu()
544 {
545 1
546 1
547 1 Display_Char(1,1,57); // V
C51 COMPILER V8.02 SHOW_WINDOW 05/25/2008 15:06:03 PAGE 10
548 1 Display_Char(2,1,62); // :
549 1
550 1 if((((use_sat[0]-0x30)*10+(use_sat[1]-0x30))>=4)&&(((use_sat[0]-0x30)*10+(use_sat[1]-0x30))<=12))
551 1 {
552 2 Display_Char(4,1,speed[0]-0x30); // 0
553 2 Display_Char(5,1,66);
554 2 Display_Char(6,1,speed[2]-0x30); // 1
555 2 Display_Char(7,1,speed[3]-0x30); // 2
556 2 Display_Char(8,1,speed[4]-0x30); // 3
557 2 }
558 1 else
559 1 {
560 2
561 2 Display_Char(4,1,0); // 0
562 2 Display_Char(5,1,66);
563 2 Display_Char(6,1,0); // 1
564 2 Display_Char(7,1,0); // 2
565 2 Display_Char(8,1,0); // 3
566 2
567 2 }
568 1 }
569 void show_menu_sat()
570 {
571 1 unsigned char usesat=0;
572 1 unsigned char use_n=0;
573 1
574 1 Display_Char(1,3,use_sat[0]-0x30); // 0
575 1 Display_Char(2,3,use_sat[1]-0x30); // 1
576 1 usesat=(use_sat[0]-0x30)*10+(use_sat[1]-0x30);
577 1
578 1
579 1 if((((use_sat[0]-0x30)*10+(use_sat[1]-0x30))>=4)&&(((use_sat[0]-0x30)*10+(use_sat[1]-0x30))<=12))
580 1 {
581 2 switch(usesat)
582 2 {
583 3 case 0: break;
584 3 // 无卫星
585 3 case 1: Display_Char(4,3,69);
586 3 break;
587 3 // 一颗卫星
588 3 case 2: for(use_n=0;use_n<2;use_n++)
589 3 {
590 4 Display_Char(4+use_n,3,69);
591 4 }
592 3 break;
593 3 // 二颗卫星
594 3 case 3: for(use_n=0;use_n<3;use_n++)
595 3 {
596 4 Display_Char(4+use_n,3,69);
597 4 }
598 3 break;
599 3 // 三颗卫星
600 3 case 4: for(use_n=0;use_n<4;use_n++)
601 3 {
602 4 Display_Char(4+use_n,3,69);
603 4 }
604 3 break;
605 3 // 四颗卫星
606 3 case 5: for(use_n=0;use_n<5;use_n++)
607 3 {
608 4 Display_Char(4+use_n,3,69);
609 4 }
C51 COMPILER V8.02 SHOW_WINDOW 05/25/2008 15:06:03 PAGE 11
610 3 break;
611 3 // 五颗卫星
612 3 case 6: for(use_n=0;use_n<6;use_n++)
613 3 {
614 4 Display_Char(4+use_n,3,69);
615 4 }
616 3 break;
617 3 // 六颗卫星
618 3 case 7: for(use_n=0;use_n<7;use_n++)
619 3 {
620 4 Display_Char(4+use_n,3,69);
621 4 }
622 3 break;
623 3 // 七颗卫星
624 3 case 8: for(use_n=0;use_n<8;use_n++)
625 3 {
626 4 Display_Char(4+use_n,3,69);
627 4 }
628 3 break;
629 3 // 八颗卫星
630 3 default:break;
631 3
632 3 }
633 2 }
634 1 else
635 1 {
636 2 for(use_n=0;use_n<8;use_n++)
637 2 {
638 3 Display_Char(2+use_n,3,64);
639 3 }
640 2 }
641 1 }
642 void show_sum_sat()
643 {
644 1
645 1 unsigned char sum_sat=0;
646 1 unsigned char sum_n=0;
647 1
648 1 Display_Char(1,5,total_sat[0]-0x30); // 0
649 1 Display_Char(2,5,total_sat[1]-0x30); // 1
650 1 sum_sat=(total_sat[0]-48)*10+(total_sat[1]-48);
651 1
652 1 if(sum_sat>12)sum_sat=12;
653 1 for(sum_n=0;sum_n<sum_sat;sum_n++)
654 1 {
655 2
656 2 Display_Char(4+sum_n,5,69);
657 2 }
658 1
659 1 }
660
661
662 //计算星期
663 unsigned char week(unsigned char year, unsigned char mon, unsigned char day)
664 {
665 1 unsigned char Weekdays[12] = {0,3,3,6,1,4,6,2,5,0,3,5}; // 31 28 31 30 31 30 31 31 30 31 30
666 1
667 1 return (6-1 + (year>>2) + year + Weekdays[mon-1] + day + (((year & 3) || mon > 2)? 1 : 0)) % 7;
668 1 //完整的计算星期的公式:
669 1 //(year>>2) - (year / 100) + (year/400) + year +
670 1 // Weekdays[mon-1] + day + ((!isLeap(year) || mon > 2)? 1 : 0)) % 7;
671 1 }
C51 COMPILER V8.02 SHOW_WINDOW 05/25/2008 15:06:03 PAGE 12
672 /*****************************************************************/
673
674
675 /*****************************************************************/
676 /*函数名称: Navigation_End_ConstrolWord.c */
677 /*函数功能: 终点地址的确定 */
678 /*有无返回: 无 */
679 /*修改记录: 无修改记录 */
680 /*编写作者: t483-4-19chenyong */
681 /*编写日期: 2008-3-12 */
682 /*****************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -