📄 main.lst
字号:
367 3 break;}
368 2
369 2
370 2
371 2 case 3:
372 2
373 2 {
374 3
375 3 dis_one_char(3,0,'4',0); //4. SOW版本信息
376 3
377 3 dis_one_char(3,1,'.',0);
378 3
379 3 dis_one_char(3,2,' ',0);
380 3
381 3 dis_one_char(3,3,'S',0);
382 3
383 3 dis_one_char(3,4,'O',0);
384 3
385 3 dis_one_char(3,5,'W',0);
386 3
387 3 dis_one_zi(3,3,x21,0,1);
388 3
389 3 dis_one_zi(3,4,x22,0,1);
390 3
391 3 dis_one_zi(3,5,x23,0,1);
392 3
393 3 dis_one_zi(3,6,x24,0,1);
394 3
395 3
396 3
397 3 dis_one_char(3,14,0x7f,1);
398 3
399 3 dis_one_char(3,15,0x7f,1);
400 3
401 3 break;}
402 2
403 2
404 2
405 2 }
406 1
407 1 }
408
409 //--------------------------------------------------------------------
410
411 void d0(void)
412
413 {
414 1
415 1 d0_3(0);
416 1
417 1
418 1
419 1 }
420
421 //--------------------------------------------------------------------
422
423 void d1(void)
C51 COMPILER V7.50 MAIN 08/24/2007 11:21:58 PAGE 8
424
425 {
426 1
427 1 d0_3(1);
428 1
429 1 }
430
431 //--------------------------------------------------------------------
432
433 void d2(void)
434
435 {
436 1
437 1 d0_3(2);
438 1
439 1 }
440
441 //--------------------------------------------------------------------
442
443 void d3()
444
445 {
446 1
447 1 d0_3(3);
448 1
449 1 }
450
451 //--------------------------------------------------------------------
452
453 void d4()
454
455 {
456 1
457 1 dis_cls();
458 1
459 1 pwm();
460 1
461 1 }
462
463 //--------------------------------------------------------------------
464
465 void d5()
466
467 {
468 1
469 1 dis_cls();
470 1
471 1 dis_one_zi(0,0,x19,1,1);
472 1
473 1 dis_one_zi(0,1,x20,1,1);
474 1
475 1 dis_one_char(0,4,':',1);
476 1
477 1 dis_one_char(0,5,' ',1);
478 1
479 1 dis_one_char(0,6,'V',1);
480 1
481 1 dis_one_char(0,7,'1',1);
482 1
483 1 dis_one_char(0,8,'.',1);
484 1
485 1 dis_one_char(0,9,'0',1);
C51 COMPILER V7.50 MAIN 08/24/2007 11:21:58 PAGE 9
486 1
487 1 dis_one_char(0,10,'.',1);
488 1
489 1 dis_one_char(0,11,'0',1);
490 1
491 1
492 1
493 1 dis_one_zi(1,0,x25,1,1);
494 1
495 1 dis_one_zi(1,1,x26,1,1);
496 1
497 1 dis_one_zi(1,2,x27,1,1);
498 1
499 1 dis_one_zi(1,3,x28,1,1);
500 1
501 1 dis_one_char(1,8,':',1);
502 1
503 1 dis_one_zi(2,4,x32,1,1);
504 1
505 1 dis_one_zi(2,5,x33,1,1);
506 1
507 1 dis_one_zi(2,6,x34,1,1);
508 1
509 1 dis_one_zi(2,7,x35,1,1);
510 1
511 1
512 1
513 1 dis_one_zi(3,4,x29,1,1);
514 1
515 1 dis_one_zi(3,5,x30,1,1);
516 1
517 1 dis_one_zi(3,6,x31,1,1);
518 1
519 1
520 1
521 1 }
522
523 //--------------------------------------------------------------------
524
525 void d6()
526
527 {
528 1
529 1 dis_cls();
530 1
531 1 freq();
532 1
533 1 }
534
535 //--------------------------------------------------------------------
536
537 void d7()
538
539 {
540 1
541 1 dis_cls();
542 1
543 1 wave();
544 1
545 1 }
546
547 //--------------------------------------------------------------------
C51 COMPILER V7.50 MAIN 08/24/2007 11:21:58 PAGE 10
548
549 typedef struct
550
551 {
552
553 uchar keystateindex;
554
555 uchar keydnstate;
556
557 uchar keyupstate;
558
559 uchar keycrstate;
560
561 void(*currentoperate)();
562
563 } kbdtabstruct;
564
565 //--------------------------------------------------------------------
566
567 kbdtabstruct code keytab[size_of_keybd_menu]=
568
569 { //第一行表示在0级菜单时按下向下键则转到1级菜单
570
571 //按下向上键则转1级菜单,按下回车键则转5级菜单
572
573 // 下 上 回车
574
575
576
577 { 0, 1, 3, 6, (* d0)},
578
579 { 1, 2, 0, 7, (* d1)},
580
581 { 2, 3, 1, 4, (* d2)},
582
583 { 3, 0, 2, 5, (* d3)},
584
585
586
587 { 4, 2, 2, 2, (* d4)},//PWM分析子程序
588
589 { 5, 3, 3, 3, (* d5)},//版本信息
590
591 { 6, 0, 0, 0, (* d6)},//频率计子程序
592
593 { 7, 0, 1, 1, (* d7)},//示波器子程序
594
595 };
596
597 //--------------------------------------------------------------------
598
599 void getkeyinput(void)
600
601 {
602 1
603 1
604 1
605 1 uchar key_value,temp;
606 1
607 1 re: temp=P3;
608 1
609 1 temp|=0x03;
C51 COMPILER V7.50 MAIN 08/24/2007 11:21:58 PAGE 11
610 1
611 1 P3=temp;
612 1
613 1 key_value=P3&0x03;
614 1
615 1 delay(50000);
616 1
617 1 //0:下键 2:中键 1:上键
618 1
619 1 switch(key_value)
620 1
621 1 {
622 2
623 2 case 1:
624 2
625 2 {
626 3
627 3 keyfuncindex=keytab[keyfuncindex].keycrstate;
628 3
629 3 beep(6500);
630 3
631 3 break;
632 3
633 3 }
634 2
635 2 case 2:
636 2
637 2 {
638 3
639 3 keyfuncindex=keytab[keyfuncindex].keyupstate;
640 3
641 3 beep(6500);
642 3
643 3 break;
644 3
645 3 }
646 2
647 2 case 0:
648 2
649 2 {
650 3
651 3 keyfuncindex=keytab[keyfuncindex].keydnstate;
652 3
653 3 beep(6500);
654 3
655 3 break;
656 3
657 3 }
658 2
659 2 default:
660 2
661 2 goto re;
662 2
663 2 }
664 1
665 1
666 1
667 1 keyfuncptr=keytab[keyfuncindex].currentoperate;
668 1
669 1 (*keyfuncptr)();
670 1
671 1 delay(65535);
C51 COMPILER V7.50 MAIN 08/24/2007 11:21:58 PAGE 12
672 1
673 1 delay(65535);
674 1
675 1 }
676
677 //--------------------------------------------------------------------
678
679 void beep(uint time)
680
681 {
682 1
683 1 beep_port=0;
684 1
685 1 delay(time);
686 1
687 1 delay(time);
688 1
689 1 delay(time);
690 1
691 1 delay(time);
692 1
693 1 beep_port=1;
694 1
695 1 }
696
697 //--------------------------------------------------------------------
698
699 void sys_auto_check(void)
700
701 {
702 1
703 1 uchar xx,c=3;
704 1
705 1
706 1
707 1 dis_one_zi(0,2,x36,1,1);
708 1
709 1 dis_one_zi(0,3,x37,1,1);
710 1
711 1 dis_one_zi(0,4,x38,1,1);
712 1
713 1 dis_one_zi(0,5,x39,1,1);
714 1
715 1 dis_one_zi(1,1,x40,1,1);
716 1
717 1 dis_one_zi(1,2,x41,1,1);
718 1
719 1 dis_one_zi(1,3,x42,1,1);
720 1
721 1 dis_one_zi(1,4,x7,1,1);
722 1
723 1 dis_one_zi(1,5,x8,1,1);
724 1
725 1 dis_one_zi(1,6,x9,1,1);
726 1
727 1 while(--c!=0)
728 1
729 1 {
730 2
731 2 for(xx=3;xx<13;xx++)
732 2
733 2 {
C51 COMPILER V7.50 MAIN 08/24/2007 11:21:58 PAGE 13
734 3
735 3 dis_one_char(2,xx-1,'>',1);
736 3
737 3 dis_one_char(2,xx ,'>',1);
738 3
739 3 dis_one_char(2,xx+1,'>',1);
740 3
741 3 delay(50000);
742 3
743 3 delay(50000);
744 3
745 3
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -