📄 key.lst
字号:
766 061F 390F andlw 15
767 0620 3A03 xorlw 3
768 0621 1D03 btfss 3,2
769 0622 2E2B goto l47
770 ;key.c: 288: {
771 0623 01A2 clrf _KeyValue^(0+256) ;volatile
772 0624 L5
773 ;key.c: 290: KeyValueTempBuf[0].allbits = 0;
774 0624 01BF clrf F476^(0+256)
775 0625 01C0 clrf (F476+1)^(0+256)
776 ;key.c: 291: KeyValueTempBuf[1].allbits = 0;
777 0626 01C1 clrf (F476+2)^(0+256)
778 0627 01C2 clrf (F476+3)^(0+256)
779 ;key.c: 292: KeyValueTempBuf[2].allbits = 0;
780 0628 01C3 clrf (F476+4)^(0+256)
781 0629 01C4 clrf (F476+5)^(0+256)
782 ;key.c: 293: }
783 062A 2E2C goto l38
784 062B l47
785 062B 0000 nop ;#
786 ;key.c: 297: }
787 062C l38
788 062C 1303 bcf 3,6 ;carry unused
789 062D 0008 return
790
791 psect rdata_2
792 ;key.c: 230: bank2 static KEYVALUESTRUCT KeyVal
+ ueTempBuf[3]={0,0,0};
793 013F F476
794 013F ds 1
795 0140 ds 1
796 0141 ds 4
797
798 psect idata_2
799 07FA 3400 retlw 0
800 07FB 3400 retlw 0
801 07FC 3400 retlw 0
802 07FD 3400 retlw 0
803 07FE 3400 retlw 0
804 07FF 3400 retlw 0
805
806 psect text3
807 ;key.c: 306: void Keybit_Manage(void)
808 ;key.c: 307: {
809 0E42 _Keybit_Manage
810 ;key.c: 308: static uchar KeyValueBufMap;
811 0E42 1283 bcf 3,5
812 0E43 1703 bsf 3,6
813 0E44 01B4 clrf _KeyValueBuf^(0+256)
814 ;key.c: 316: KeyValueBuf = KeyValue;
815 0E45 0822 movf _KeyValue^(0+256),w ;volatile
816 0E46 00B4 movwf _KeyValueBuf^(0+256)
817 ;key.c: 318: KeyValue = 0;
818 0E47 01A2 clrf _KeyValue^(0+256) ;volatile
819 ;key.c: 321: if( (KeyValueBuf&0b10000000)==0 )
820 0E48 1FB4 btfss _KeyValueBuf^(0+256),7
821 0E49 2EAA goto l49
822 ;key.c: 322: return;
823 ;key.c: 324: KeyValueBuf -= 128;
824 0E4A 3080 movlw -128
825 0E4B 07B4 addwf _KeyValueBuf^(0+256)
826 ;key.c: 326: KeyValueBufMap = KeyValMap[KeyValu
+ eBuf];
827 0E4C 3008 movlw _KeyValMap shr (0+8)
828 0E4D 008A movwf 10
829 0E4E 0834 movf _KeyValueBuf^(0+256),w
830 0E4F 2000 call ((_KeyValMap+-1)& (0+2047))| (($)& (0+-20
+ 48))
831 0E50 158A pagesel $
832 0E51 1303 bcf 3,6 ;carry unused
833 0E52 00C4 movwf F479
834 ;key.c: 327: KeyValueBuf = 0;
835 0E53 1703 bsf 3,6
836 0E54 01B4 clrf _KeyValueBuf^(0+256)
837 ;key.c: 345: if (KeyValueBufMap == 0)
838 0E55 1303 bcf 3,6 ;carry unused
839 0E56 08C4 movf F479
840 0E57 1D03 btfss 3,2
841 0E58 2E5B goto l51
842 ;key.c: 346: {
843 0E59 30FF movlw -1
844 0E5A 00C5 movwf F480
845 0E5B l51
846 ;key.c: 348: }
847 0E5B 08C4 movf F479
848 0E5C 1903 btfsc 3,2
849 0E5D 2EAA goto l49
850 ;key.c: 351: return;
851 ;key.c: 353: if (KeyValueZeroTag == 0)
852 0E5E 08C5 movf F480
853 0E5F 1903 btfsc 3,2
854 0E60 2EAA goto l49
855 ;key.c: 354: return;
856 ;key.c: 355: KeyValueZeroTag = 0;
857 0E61 01C5 clrf F480
858 ;key.c: 360: if(KeyValueBufMap != 0)
859 0E62 08C4 movf F479
860 0E63 1903 btfsc 3,2
861 0E64 2E69 goto l54
862 ;key.c: 361: {
863 0E65 0844 movf F479,w
864 0E66 1703 bsf 3,6
865 0E67 00B5 movwf _KeyValueBufBuf^(0+256)
866 ;key.c: 363: }
867 0E68 2E73 goto l55
868 0E69 l54
869 ;key.c: 365: {
870 0E69 1703 bsf 3,6
871 0E6A 08B5 movf _KeyValueBufBuf^(0+256)
872 0E6B 1D03 btfss 3,2
873 0E6C 2E72 goto l56
874 ;key.c: 367: {
875 0E6D 1303 bcf 3,6 ;carry unused
876 0E6E 0844 movf F479,w
877 0E6F 1703 bsf 3,6
878 0E70 00B5 movwf _KeyValueBufBuf^(0+256)
879 ;key.c: 369: return;
880 0E71 2EAA goto l49
881 0E72 l56
882 ;key.c: 372: {
883 0E72 0000 nop ;#
884 ;key.c: 374: }
885 0E73 l55
886 ;key.c: 375: }
887 ;key.c: 380: if((KeyValueBufBuf&0b01000000)==0)
888 0E73 1B35 btfsc _KeyValueBufBuf^(0+256),6
889 0E74 2E77 goto l58
890 ;key.c: 381: {
891 0E75 1423 bsf _Key^(0+256),0 ;volatile
892 ;key.c: 383: }
893 0E76 2E78 goto l59
894 0E77 l58
895 ;key.c: 385: {
896 0E77 1023 bcf _Key^(0+256),0 ;volatile
897 0E78 l59
898 ;key.c: 387: }
899 ;key.c: 397: if( KeyValueBufBuf==65 )
900 0E78 0835 movf _KeyValueBufBuf^(0+256),w
901 0E79 3A41 xorlw 65
902 0E7A 1903 btfsc 3,2
903 ;key.c: 398: {
904 0E7B 15A3 bsf _Key^(0+256),3 ;volatile
905 ;key.c: 400: }
906 0E7C 0835 movf _KeyValueBufBuf^(0+256),w
907 0E7D 3A42 xorlw 66
908 0E7E 1D03 btfss 3,2
909 0E7F 2E88 goto l61
910 ;key.c: 404: {
911 0E80 1FA3 btfss _Key^(0+256),7 ;volatile
912 0E81 2E87 goto l62
913 ;key.c: 406: {
914 0E82 1623 bsf _Key^(0+256),4 ;volatile
915 ;key.c: 408: twoSecCou = 0;
916 0E83 01B1 clrf _twoSecCou^(0+256) ;volatile
917 0E84 01B2 clrf (_twoSecCou+1)^(0+256) ;volatile
918 ;key.c: 409: Key.bits.MultiKeyTwoCouTag = 0;
919 0E85 13A3 bcf _Key^(0+256),7 ;volatile
920 ;key.c: 410: }
921 0E86 2E88 goto l61
922 0E87 l62
923 ;key.c: 412: {
924 0E87 17A3 bsf _Key^(0+256),7 ;volatile
925 ;key.c: 414: }
926 0E88 l61
927 ;key.c: 415: }
928 0E88 0835 movf _KeyValueBufBuf^(0+256),w
929 0E89 3A43 xorlw 67
930 0E8A 1D03 btfss 3,2
931 0E8B 2EAA goto l49
932 ;key.c: 419: {
933 0E8C 0824 movf (_Key+1)^(0+256),w ;volatile
934 0E8D 3907 andlw 7
935 0E8E 1903 btfsc 3,2
936 0E8F 2EA6 goto l65
937 ;key.c: 421: {
938 0E90 0824 movf (_Key+1)^(0+256),w ;volatile
939 0E91 3907 andlw 7
940 0E92 00F0 movwf btemp
941 0E93 0AF0 incf btemp
942 0E94 0824 movf (_Key+1)^(0+256),w ;volatile
943 0E95 0670 xorwf btemp,w
944 0E96 39F8 andlw -8
945 0E97 0670 xorwf btemp,w
946 0E98 00A4 movwf (_Key+1)^(0+256) ;volatile
947 ;key.c: 423: if(Key.bits.MultiKeyThreeCouTag >=
+ 3)
948 0E99 0824 movf (_Key+1)^(0+256),w ;volatile
949 0E9A 3907 andlw 7
950 0E9B 00F0 movwf btemp
951 0E9C 3003 movlw 3
952 0E9D 0270 subwf btemp,w
953 0E9E 1C03 btfss 3,0
954 0E9F 2EAA goto l49
955 ;key.c: 424: {
956 0EA0 16A3 bsf _Key^(0+256),5 ;volatile
957 ;key.c: 426: oneSecCou = 0;
958 0EA1 01AF clrf _oneSecCou^(0+256) ;volatile
959 0EA2 01B0 clrf (_oneSecCou+1)^(0+256) ;volatile
960 ;key.c: 427: Key.bits.MultiKeyThreeCouTag = 0;
961 0EA3 0824 movf (_Key+1)^(0+256),w ;volatile
962 0EA4 39F8 andlw -8
963 0EA5 2EA9 goto L9
964 ;key.c: 428: }
965 ;key.c: 430: else
966 0EA6 l65
967 ;key.c: 431: {
968 0EA6 0824 movf (_Key+1)^(0+256),w ;volatile
969 0EA7 39F8 andlw -8
970 0EA8 3801 iorlw 1
971 0EA9 L9
972 0EA9 00A4 movwf (_Key+1)^(0+256) ;volatile
973 ;key.c: 433: }
974 ;key.c: 434: }
975 0EAA l49
976 0EAA 1303 bcf 3,6 ;carry unused
977 0EAB 0008 return
978
979 psect text4
980 ;key.c: 444: void Key_Manage(void)
981 ;key.c: 445: {
982 0CF0 _Key_Manage
983 ;key.c: 475: if(Key.bits.UnitaryKey)
984 0CF0 1283 bcf 3,5
985 0CF1 1703 bsf 3,6
986 0CF2 1C23 btfss _Key^(0+256),0 ;volatile
987 0CF3 2D03 goto l69
988 ;key.c: 476: {
989 0CF4 1023 bcf _Key^(0+256),0 ;volatile
990 ;key.c: 478: UartStruct.bits.singleKeyTag = 1;
991 0CF5 1683 bsf 3,5
992 0CF6 1303 bcf 3,6 ;carry unused
993 0CF7 1724 bsf _UartStruct^(0+128),6 ;volatile
994 ;key.c: 479: if(KeyValueBufBuf != 0)
995 0CF8 1283 bcf 3,5
996 0CF9 1703 bsf 3,6
997 0CFA 08B5 movf _KeyValueBufBuf^(0+256)
998 0CFB 1903 btfsc 3,2
999 0CFC 2D00 goto l70
1000 ;key.c: 480: LedShowLink = KeyValueBufBuf;
1001 0CFD 0835 movf _KeyValueBufBuf^(0+256),w
1002 0CFE 00AB movwf _LedShowLink^(0+256) ;volatile
1003 0CFF 01AC clrf (_LedShowLink+1)^(0+256) ;volatile
1004 0D00 l70
1005 ;key.c: 481: Key_V = (uint) KeyValueBufBuf;
1006 0D00 0835 movf _KeyValueBufBuf^(0+256),w
1007 0D01 00A7 movwf _Key_V^(0+256) ;volatile
1008 0D02 01A8 clrf (_Key_V+1)^(0+256) ;volatile
1009 0D03 l69
1010 ;key.c: 482: }
1011 0D03 1DA3 btfss _Key^(0+256),3 ;volatile
1012 0D04 2D09 goto l71
1013 ;key.c: 485: {
1014 0D05 11A3 bcf _Key^(0+256),3 ;volatile
1015 ;key.c: 487: LedShowLink = 165;
1016 0D06 30A5 movlw 165
1017 0D07 00AB movwf _LedShowLink^(0+256) ;volatile
1018 0D08 01AC clrf (_LedShowLink+1)^(0+256) ;volatile
1019 0D09 l71
1020 ;key.c: 488: }
1021 0D09 1E23 btfss _Key^(0+256),4 ;volatile
1022 0D0A 2D0F goto l72
1023 ;key.c: 491: {
1024 0D0B 1223 bcf _Key^(0+256),4 ;volatile
1025 ;key.c: 493: LedShowLink = 166;
1026 0D0C 30A6 movlw 166
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -