📄 yt_key.lst
字号:
684 {
685 Int16U a;
686 switch(LCM->Mode)
687 {
688 case C_LCM_ALA_REG0:
689 case C_LCM_ALA_REG1:
690 case C_LCM_ALA_REG2:
691 case C_LCM_ALA_REG3:
692 case C_LCM_ALA_REG4:
693 case C_LCM_ALA_REG5:
694 case C_LCM_ALA_REG6:
695 LCM->FLAG=1;
696
697 CHK_ALAMCREG(&_YT.ALAMCREG,&ALAMCREG_History);
698
699 if(--LCM->Mode>C_LCM_ALA_REG6)
700 {
701 a=(ALAMCREG_History.Unit-1)/3;
702 LCM->Mode=a;
703 }
704 break;
705
706
707 case C_LCM_ALAMC:
708 case C_LCM_TEMRH:
709 case C_LCM_Mode0:
710 case C_LCM_Mode1:
711 case C_LCM_Mode2:
712 case C_LCM_Mode3:
713 case C_LCM_Mode4:
714 case C_LCM_Mode5:
715 case C_LCM_Mode6:
716
717 case C_LCM_Mode7:
718 case C_LCM_Mode8:
719 case C_LCM_Mode9:
720 case C_LCM_Mode10:
721 case C_LCM_Mode11:
722 case C_LCM_Mode12:
723 case C_LCM_Mode13:
724 case C_LCM_Mode14:
725 case C_LCM_Mode15:
726 LCM->FLAG=1;
727 CHK_ALAMCREG(&_YT.ALAMCREG,&ALAMCREG_History);
728
729 LCM->Mode=C_LCM_ALA_REG0;
730 break;
731 case C_LCM_SET:
732 case C_LCM_SET1:
733 case C_LCM_SET2:
734 if(++LCM->Lcd_add>=4)LCM->Lcd_add=0;
735 break;
736 case C_LCM_SET3:
737 if(LCM->Lcd_add==0)LCM->Lcd_add=1;
738 else LCM->Lcd_add=0;
739 break;
740 case C_LCM_SET4:
741 if(++LCM->Lcd_add>=3)LCM->Lcd_add=0;
742 break;
743
744 case C_LCM_SET5:
745 if(++LCM->Lcd_add>=6)LCM->Lcd_add=0;
746 break;
747 case C_LCM_SET6:
748 if(++LCM->Lcd_add>=4)LCM->Lcd_add=0;
749 break;
750 case C_LCM_SET7:
751 if(++LCM->Lcd_add>=12)LCM->Lcd_add=0;
752 break;
753 }
754 return 0;
755 }
756 Int16U key_dec(KEY *KEYA,_LCD *LCM)
757 {
758 Int16U a;
759 switch(LCM->Mode)
760 {
761 case C_LCM_ALA_REG0:
762 case C_LCM_ALA_REG1:
763 case C_LCM_ALA_REG2:
764 case C_LCM_ALA_REG3:
765 case C_LCM_ALA_REG4:
766 case C_LCM_ALA_REG5:
767 case C_LCM_ALA_REG6:
768
769 LCM->FLAG=1;
770
771 if(++LCM->Mode>C_LCM_ALA_REG6)LCM->Mode=C_LCM_ALA_REG0;
772 CHK_ALAMCREG(&_YT.ALAMCREG,&ALAMCREG_History);
773 a=ALAMC_mode_setion(LCM->Mode,ALAMCREG_History.Unit);
774 if(a==C_LCM_TEMRH)LCM->Mode=C_LCM_ALA_REG0;
775 break;
776
777
778 case C_LCM_ALAMC:
779 case C_LCM_TEMRH:
780 case C_LCM_Mode0:
781 case C_LCM_Mode1:
782 case C_LCM_Mode2:
783 case C_LCM_Mode3:
784 case C_LCM_Mode4:
785 case C_LCM_Mode5:
786 case C_LCM_Mode6:
787
788 case C_LCM_Mode7:
789 case C_LCM_Mode8:
790 case C_LCM_Mode9:
791 case C_LCM_Mode10:
792 case C_LCM_Mode11:
793 case C_LCM_Mode12:
794 case C_LCM_Mode13:
795 case C_LCM_Mode14:
796 case C_LCM_Mode15:
797 LCM->FLAG=1;
798
799 CHK_ALAMCREG(&_YT.ALAMCREG,&ALAMCREG_History);
800
801 LCM->Mode=C_LCM_ALA_REG0;
802 break;
803 case C_LCM_SET:
804 case C_LCM_SET1:
805 if(--LCM->Lcd_add>4)LCM->Lcd_add=3;
806 case C_LCM_SET2:
807 break;
808 case C_LCM_SET4:
809 if(--LCM->Lcd_add>=3)LCM->Lcd_add=2;
810 break;
811 case C_LCM_SET5:
812 if(--LCM->Lcd_add>=6)LCM->Lcd_add=5;
813 break;
814 case C_LCM_SET6:
815 if(--LCM->Lcd_add>=6)LCM->Lcd_add=3;
816 break;
817 case C_LCM_SET3:
818 if(LCM->Lcd_add==0)LCM->Lcd_add=1;
819 else LCM->Lcd_add=0;
820 break;
821 case C_LCM_SET7:
822 if(--LCM->Lcd_add>=12)LCM->Lcd_add=11;
823 }
824 return 0;
825 }
826 //***********************************************
827 void Set_HISTORY(Int8U *p)
828 {
829 Int16U a;
830
831 *p=21;
832 *++p=21;
833 *++p=21;
834 *++p=21;
835 *++p=21;
836 *++p=21;
837 *++p=21;
838 *++p=21;
839 *++p=21;
840 *++p=21;
841
842 *++p=22;
843 *++p=22;
844 *++p=22;
845 *++p=22;
846 *++p=22;
847 *++p=22;
848 *++p=22;
849 *++p=22;
850 *++p=22;
851 *++p=22;
852
853 *++p=23;
854 *++p=23;
855 *++p=23;
856 *++p=23;
857 *++p=23;
858 *++p=23;
859 *++p=23;
860 *++p=23;
861 *++p=22;
862
863 *++p=22;
864 *++p=21;
865 *++p=21;
866 *++p=21;
867 *++p=22;
868 *++p=22;
869 *++p=22;
870 *++p=22;
871 *++p=22;
872
873 *++p=23;
874 *++p=23;
875 *++p=23;
876 *++p=24;
877 *++p=24;
878 *++p=25;
879 *++p=25;
880 *++p=26;
881 *++p=26;
882
883 *++p=26;
884 *++p=27;
885 *++p=27;
886 *++p=27;
887 *++p=28;
888 *++p=28;
889 *++p=29;
890 *++p=28;
891 *++p=28;
892
893 *++p=27;
894 *++p=27;
895 *++p=27;
896 *++p=26;
897 *++p=26;
898 *++p=25;
899 *++p=25;
900 *++p=24;
901 *++p=24;
902
903 *++p=23;
904 *++p=23;
905 *++p=23;
906 *++p=23;
907 *++p=23;
908 *++p=23;
909 *++p=23;
910 *++p=23;
911 *++p=22;
912
913 *++p=22;
914 *++p=22;
915 *++p=22;
916 *++p=22;
917 *++p=22;
918 *++p=22;
919 *++p=22;
920 *++p=22;
921 *++p=22;
922
923
924
925 *++p=22;
926 *++p=22;
927 *++p=22;
928 *++p=22;
929 *++p=21;
930 *++p=21;
931 *++p=21;
932 *++p=21;
933 *++p=21;
934 *++p=21;
935 *++p=22;
936 *++p=22;
937 *++p=22;
938 *++p=22;
939 *++p=21;
940 *++p=21;
941 *++p=21;
942 }
943 //***********************************************
944 //
945 //***********************************************
946 Int16U keyserver(KEY *KEYA,_LCD *LCM,_yt *Data)
947 {
948
949 static Int16U BLKCounter=0;
950 if(KEYA->execute!=0)BLKCounter=0;
951 else
952 {
953 if(BLKCounter<2000)BLKCounter++,GPIOB->ODR&=0Xdf;
954 else GPIOB->ODR|=0X20;
955 }
956 if(KEYA->execute==0)return 0;
957
958 switch(KEYA->ID)
959 {
960 case C_keyID1:
961 KEYA->ID=key_setion(KEYA,LCM);
962 if(KEYA->ID==C_FM24C04)WriteFM24C04(0X64,Data);
963 return 0;
964 break;
965 case C_keyID2:
966 KEYA->ID=key_up(KEYA,LCM,Data);
967 break;
968 case C_keyID3:
969 KEYA->ID=key_down(KEYA,LCM,Data);
970 break;
971 case C_keyID4:
972 KEYA->ID=key_add(KEYA,LCM);
973 break;
974 case C_keyID5:
975 KEYA->ID=key_dec(KEYA,LCM);
976 break;
977
978
979 }
980
981 return 0;
982 }
983
984 //////////////////////////////////////////////////
985
986
987
988
989
990
991
992
993
Maximum stack usage in bytes:
Function .cstack
-------- -------
Set_HISTORY 0
Set_UART 32
key_add 16
key_dec 16
key_down 24
key_setion 8
key_up 24
keyserver 16
scankey 16
Section sizes:
Function/Label Bytes
-------------- -----
Year_TAB 28
BAUD_TAB1 8
Set_UART 104
scankey 232
key_setion 110
key_up 1784
key_down 1716
key_add 228
key_dec 240
Set_HISTORY 600
keyserver 196
BLKCounter 2
2 bytes in section .bss
36 bytes in section .rodata
5 210 bytes in section .text
5 210 bytes of CODE memory
36 bytes of CONST memory
2 bytes of DATA memory
Errors: none
Warnings: 7
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -