test.lst
来自「校园打铃系统」· LST 代码 · 共 1,256 行 · 第 1/4 页
LST
1,256 行
599 1 sp=31;
600 1 }
601
602 /***************************************
603 ****************************************/
604
605 void manage_key7(uchar keycode)
606 {
607 1 do{cd[sp]='6';
608 2 xp(sp);
609 2 delay_nms(100);
610 2 if(KEY==~keycode)
C51 COMPILER V7.06 TEST 06/07/2007 21:23:10 PAGE 11
611 2 {cd[sp]='m';
612 3 xp(sp);
613 3 delay_nms(100);
614 3 if(KEY==~keycode)
615 3 {cd[sp]='n';
616 4 xp(sp);
617 4 delay_nms(100);
618 4 if(KEY==~keycode)
619 4 {cd[sp]='o';
620 5 xp(sp);
621 5 delay_nms(100);
622 5 }
623 4 }
624 3 }
625 2 }while(KEY==~keycode);
626 1
627 1 sp++;
628 1 if(sp==32)
629 1 sp=31;
630 1 }
631 /***************************************
632 ****************************************/
633 void manage_key8()
634 {if(sp==0)
635 1 sp=0;
636 1 else
637 1 if(sp==31)
638 1 {cd[sp]=' ';
639 2 xp(sp);
640 2 cd[--sp]=' ';
641 2 xp(sp);
642 2 delay_nms(50);
643 2 }
644 1 else
645 1 {sp--;
646 2 cd[sp]=' ';
647 2 xp(sp);
648 2 delay_nms(50);
649 2
650 2
651 2 }
652 1 }
653 /***************************************
654 ****************************************/
655
656 void manage_key9(uchar keycode)
657 {
658 1 do{cd[sp]='7';
659 2 xp(sp);
660 2 delay_nms(100);
661 2 if(KEY==~keycode)
662 2 {cd[sp]='p';
663 3 xp(sp);
664 3 delay_nms(100);
665 3 if(KEY==~keycode)
666 3 {cd[sp]='q';
667 4 xp(sp);
668 4 delay_nms(100);
669 4 if(KEY==~keycode)
670 4 {cd[sp]='r';
671 5 xp(sp);
672 5 delay_nms(100);
C51 COMPILER V7.06 TEST 06/07/2007 21:23:10 PAGE 12
673 5 if(KEY==~keycode)
674 5 {cd[sp]='s';
675 6 xp(sp);
676 6 delay_nms(100);
677 6 }
678 5 }
679 4 }
680 3 }
681 2 }while(KEY==~keycode) ;
682 1
683 1 sp++;
684 1 if(sp==32)
685 1 sp=31;
686 1 }
687
688 /***************************************
689 ****************************************/
690
691 void manage_key10(uchar keycode)
692 {
693 1 do{cd[sp]='8';
694 2 xp(sp);
695 2 delay_nms(100);
696 2 if(KEY==~keycode)
697 2 {cd[sp]='t';
698 3 xp(sp);
699 3 delay_nms(100);
700 3 if(KEY==~keycode)
701 3 {cd[sp]='u';
702 4 xp(sp);
703 4 delay_nms(100);
704 4 if(KEY==~keycode)
705 4 {cd[sp]='v';
706 5 xp(sp);
707 5 delay_nms(100);
708 5 }
709 4 }
710 3 }
711 2 }while(KEY==~keycode) ;
712 1
713 1 sp++;
714 1 if(sp==32)
715 1 sp=31;
716 1 }
717
718 /***************************************
719 ****************************************/
720
721 void manage_key11(uchar keycode)
722 {
723 1 do{cd[sp]='9';
724 2 xp(sp);
725 2 delay_nms(100);
726 2 if(KEY==~keycode)
727 2 {cd[sp]='w';
728 3 xp(sp);
729 3 delay_nms(100);
730 3 if(KEY==~keycode)
731 3 {cd[sp]='x';
732 4 xp(sp);
733 4 delay_nms(100);
734 4 if(KEY==~keycode)
C51 COMPILER V7.06 TEST 06/07/2007 21:23:10 PAGE 13
735 4 {cd[sp]='y';
736 5 xp(sp);
737 5 delay_nms(100);
738 5 if(KEY==~keycode)
739 5 {cd[sp]='z';
740 6 xp(sp);
741 6 delay_nms(100);
742 6 }
743 5 }
744 4 }
745 3 }
746 2 }while(KEY==~keycode);
747 1 sp++;
748 1 if(sp==32)
749 1 sp=31;
750 1 }
751 /********************************************
752 *********************************************/
753 //void manage_key12(void)
754 //{zhuye();
755 //}
756 /***************************************
757 ****************************************/
758
759 void manage_key13(uchar keycode)
760 {
761 1 do{cd[sp]='*';
762 2 xp(sp);
763 2 delay_nms(100);
764 2 if(KEY==~keycode)
765 2 {cd[sp]=',';
766 3 xp(sp);
767 3 delay_nms(100);
768 3 if(KEY==~keycode)
769 3 {cd[sp]='.';
770 4 xp(sp);
771 4 delay_nms(100);
772 4 if(KEY==~keycode)
773 4 {cd[sp]='?';
774 5 xp(sp);
775 5 delay_nms(100);
776 5 }
777 4 }
778 3 }
779 2 }while(KEY==~keycode) ;
780 1
781 1 sp++;
782 1 if(sp==32)
783 1 sp=31;
784 1 }
785 /***************************************
786 ****************************************/
787
788 void manage_key14(uchar keycode)
789 {
790 1 do{cd[sp]='0';
791 2 xp(sp);
792 2 delay_nms(100);
793 2 if(KEY==~keycode)
794 2 {cd[sp]=' ';
795 3 xp(sp);
796 3 delay_nms(100);
C51 COMPILER V7.06 TEST 06/07/2007 21:23:10 PAGE 14
797 3
798 3 }
799 2 }while(KEY==~keycode) ;
800 1
801 1 sp++;
802 1 if(sp==32)
803 1 sp=31;
804 1 }
805 /***************************************
806 ****************************************/
807 void manage_key15(uchar keycode)
808 {do{cd[sp]='#';
809 2 xp(sp);
810 2 delay_nms(100);
811 2 if(KEY==~keycode)
812 2 {cd[sp]='!';
813 3 xp(sp);
814 3 delay_nms(100);
815 3
816 3 }
817 2 }while(KEY==~keycode);
818 1
819 1 sp++;
820 1 if(sp==32)
821 1 sp=31;
822 1 }
823
824 void xp(uchar d)
825 {
826 1 xx=d;
827 1 yy=d;
828 1 date0=cd[d];
829 1 yy=(int)yy/16;
830 1 xx=(int)xx%16;
831 1 LCD_write_char(xx,yy,date0);
832 1
833 1 }
834
835 void send_message()
836 {
837 1 /*SCON=0x40;//设置串行方式1,REN=0
838 1 EA=1;
839 1 ES=0;
840 1 PCON=0x00;//波特率不增倍
841 1 TMOD=0x20;//定时1工作2
842 1 TL1=0x00;//波特率
843 1 TH1=0x00;
844 1 TR1=1; */
845 1
846 1 SBUF=0x0aa;//修改控制字段
847 1 delay_nms(10);
848 1 SBUF=0x5a;
849 1 delay_nms(100);
850 1
851 1 LCD_init();
852 1 delay_nms(200);
853 1 //LCD_write_string(0,0,cd);
854 1 for(xx=0;xx<32;xx++)
855 1 {cd[xx]=' ';
856 2 }
857 1 sp=0;
858 1 while(scan_key()!=0x48)
C51 COMPILER V7.06 TEST 06/07/2007 21:23:10 PAGE 15
859 1 {
860 2 while(!judge_hitkey());//有键按下转下步
861 2 key_manage(scan_key());
862 2 }
863 1 }
864
865 /***************send_message over**************************/
866
867
868 /**************************led********************/
869 void led()
870 {SBUF=0x0fa;//修改控制字段
871 1 delay_nms(10);
872 1 SBUF=0x55;
873 1 delay_nms(100);
874 1
875 1 led_en=0;
876 1 while(scan_key()!=0x28)
877 1 {
878 2 SBUF=0x55;
879 2 delay_nms(10);
880 2 SBUF=led_in;
881 2 delay_nms(100);
882 2 }
883 1 led_en=1;
884 1 }
885 /*****************************************************/
886
887 /********************************set_frequency***************************************/
888 sbit CLK=P2^7;
889 sbit Din=P2^6;
890 sbit ADin=P2^5;
891 sbit ENB=P2^4;
892 void MC145162_Reset(unsigned int,unsigned long int,unsigned int,unsigned int);
893 void MC145162_Reset(unsigned int Ctrl_Data,unsigned long int Ref_Data,unsigned int Tx_Count,unsigned int R
-x_Count)
894 {
895 1 unsigned int i;
896 1 unsigned long int mask;
897 1 ENB=0;
898 1 CLK=0;
899 1 ADin=0;
900 1 Din=0;
901 1 ENB=1;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?