📄 system.ls1
字号:
01B8 900000 F 855 MOV DPTR,#ch?040
01BB EE 856 MOV A,R6
01BC F0 857 MOVX @DPTR,A
01BD A3 858 INC DPTR
01BE EF 859 MOV A,R7
01BF F0 860 MOVX @DPTR,A
861 ; if(ch >= 0)
862 ; SOURCE LINE # 139
01C0 C3 863 CLR C
01C1 EE 864 MOV A,R6
01C2 6480 865 XRL A,#080H
01C4 9480 866 SUBB A,#080H
01C6 4021 867 JC ?C0013
868 ; {
869 ; SOURCE LINE # 140
870 ; CardConfirmTime = (unsigned int)ch * 10;
871 ; SOURCE LINE # 141
01C8 900000 F 872 MOV DPTR,#ch?040
01CB E0 873 MOVX A,@DPTR
01CC FE 874 MOV R6,A
01CD A3 875 INC DPTR
01CE E0 876 MOVX A,@DPTR
01CF FF 877 MOV R7,A
01D0 7C00 878 MOV R4,#00H
01D2 7D0A 879 MOV R5,#0AH
01D4 120000 F 880 LCALL ?C?IMUL
01D7 900000 F 881 MOV DPTR,#CardConfirmTime
01DA EE 882 MOV A,R6
01DB F0 883 MOVX @DPTR,A
01DC A3 884 INC DPTR
01DD EF 885 MOV A,R7
01DE F0 886 MOVX @DPTR,A
887 ; ComWrite("Success rcct.\r\n", 15);
888 ; SOURCE LINE # 142
01DF 7BFF 889 MOV R3,#0FFH
01E1 7A00 F 890 MOV R2,#HIGH (?SC_215)
01E3 7900 F 891 MOV R1,#LOW (?SC_215)
01E5 7D0F 892 MOV R5,#0FH
893 ; }
894 ; SOURCE LINE # 143
01E7 801A 895 SJMP ?C0146
01E9 896 ?C0013:
897 ; else
898 ; {
899 ; SOURCE LINE # 145
900 ; CardConfirmTime = 200;
901 ; SOURCE LINE # 146
01E9 900000 F 902 MOV DPTR,#CardConfirmTime
01EC E4 903 CLR A
01ED F0 904 MOVX @DPTR,A
01EE A3 905 INC DPTR
01EF 74C8 906 MOV A,#0C8H
01F1 F0 907 MOVX @DPTR,A
908 ; ParaWrite(PARA_RFCCT, 20);
909 ; SOURCE LINE # 147
01F2 7D14 910 MOV R5,#014H
01F4 7FF9 911 MOV R7,#0F9H
01F6 120000 F 912 LCALL _ParaWrite
913 ; ComWrite("Failed rcct.\r\n", 14);
914 ; SOURCE LINE # 148
01F9 7BFF 915 MOV R3,#0FFH
01FB 7A00 F 916 MOV R2,#HIGH (?SC_231)
01FD 7900 F 917 MOV R1,#LOW (?SC_231)
A51 MACRO ASSEMBLER SYSTEM 03/13/2009 15:44:57 PAGE 16
01FF 7D0E 918 MOV R5,#0EH
0201 7C00 919 MOV R4,#00H
0203 920 ?C0146:
0203 120000 F 921 LCALL _ComWrite
922 ; }
923 ; SOURCE LINE # 149
0206 924 ?C0014:
925 ;
926 ; ComWrite("\r\n", 2);
927 ; SOURCE LINE # 151
0206 7BFF 928 MOV R3,#0FFH
0208 7A00 F 929 MOV R2,#HIGH (?SC_246)
020A 7900 F 930 MOV R1,#LOW (?SC_246)
020C 7D02 931 MOV R5,#02H
020E 7C00 932 MOV R4,#00H
0210 020000 F 933 LJMP _ComWrite
934 ; END OF SysInit
935
936 ; }
937 ;
938 ; // cardtype: 0: tic, 1: rfc
939 ; // cardin: 0: out, 1: in
940 ; void CardLed(bit cardtype, bit cardin)
941
---- 942 RSEG ?PR?CardLed?SYSTEM
0000 943 CardLed:
944 USING 0
945 ; SOURCE LINE # 156
946 ; {
947 ; SOURCE LINE # 157
948 ; static bit frfc = 0;
949 ; static bit ftic = 0;
950 ;
951 ; if(cardtype) // rfc
952 ; SOURCE LINE # 161
0000 300006 F 953 JNB cardtype?141,?C0016
954 ; frfc = cardin;
955 ; SOURCE LINE # 162
0003 A200 F 956 MOV C,cardin?142
0005 9200 F 957 MOV frfc?143,C
0007 8004 958 SJMP ?C0017
0009 959 ?C0016:
960 ; else
961 ; ftic = cardin;
962 ; SOURCE LINE # 164
0009 A200 F 963 MOV C,cardin?142
000B 9200 F 964 MOV ftic?144,C
000D 965 ?C0017:
966 ;
967 ; if(fLed)
968 ; SOURCE LINE # 166
000D 300023 F 969 JNB fLed,?C0025
970 ; {
971 ; SOURCE LINE # 167
972 ; if(frfc && ftic)
973 ; SOURCE LINE # 168
0010 300008 F 974 JNB frfc?143,?C0019
0013 300005 F 975 JNB ftic?144,?C0019
976 ; {
977 ; SOURCE LINE # 169
978 ; led(lobc);
979 ; SOURCE LINE # 170
0016 900000 F 980 MOV DPTR,#lobc
981 ; }
982 ; SOURCE LINE # 171
0019 8013 983 SJMP ?C0149
A51 MACRO ASSEMBLER SYSTEM 03/13/2009 15:44:57 PAGE 17
001B 984 ?C0019:
985 ; else if(ftic)
986 ; SOURCE LINE # 172
001B 300005 F 987 JNB ftic?144,?C0021
988 ; {
989 ; SOURCE LINE # 173
990 ; led(lotc);
991 ; SOURCE LINE # 174
001E 900000 F 992 MOV DPTR,#lotc
0021 993 ?C0148:
994 ; }
995 ; SOURCE LINE # 175
0021 800B 996 SJMP ?C0149
0023 997 ?C0021:
998 ; else if(frfc)
999 ; SOURCE LINE # 176
0023 300005 F 1000 JNB frfc?143,?C0023
1001 ; {
1002 ; SOURCE LINE # 177
1003 ; led(lorc);
1004 ; SOURCE LINE # 178
0026 900000 F 1005 MOV DPTR,#lorc
1006 ; }
1007 ; SOURCE LINE # 179
0029 8003 1008 SJMP ?C0147
002B 1009 ?C0023:
1010 ; else
1011 ; {
1012 ; SOURCE LINE # 181
1013 ; led(lonc);
1014 ; SOURCE LINE # 182
002B 900000 F 1015 MOV DPTR,#lonc
002E 1016 ?C0147:
002E 1017 ?C0149:
002E E0 1018 MOVX A,@DPTR
002F FF 1019 MOV R7,A
0030 120000 F 1020 LCALL _led
1021 ; }
1022 ; SOURCE LINE # 183
1023 ; }
1024 ; SOURCE LINE # 184
1025 ; }
1026 ; SOURCE LINE # 185
0033 1027 ?C0025:
0033 22 1028 RET
1029 ; END OF CardLed
1030
1031 ;
1032 ; // command on sec
1033 ; unsigned int SecCommand(unsigned char *cmd, int len)
1034
---- 1035 RSEG ?PR?_SecCommand?SYSTEM
0000 1036 _SecCommand:
1037 USING 0
1038 ; SOURCE LINE # 188
0000 900000 F 1039 MOV DPTR,#len?246
0003 EC 1040 MOV A,R4
0004 F0 1041 MOVX @DPTR,A
0005 A3 1042 INC DPTR
0006 ED 1043 MOV A,R5
0007 F0 1044 MOVX @DPTR,A
0008 900000 F 1045 MOV DPTR,#cmd?245
000B EB 1046 MOV A,R3
000C F0 1047 MOVX @DPTR,A
000D A3 1048 INC DPTR
000E EA 1049 MOV A,R2
A51 MACRO ASSEMBLER SYSTEM 03/13/2009 15:44:57 PAGE 18
000F F0 1050 MOVX @DPTR,A
0010 A3 1051 INC DPTR
0011 E9 1052 MOV A,R1
0012 F0 1053 MOVX @DPTR,A
1054 ; {
1055 ; SOURCE LINE # 189
1056 ; int ch;
1057 ;
1058 ; switch(cmd[1])
1059 ; SOURCE LINE # 192
0013 900001 1060 MOV DPTR,#01H
0016 120000 F 1061 LCALL ?C?CLDOPTR
0019 14 1062 DEC A
001A 7003 1063 JNZ $ + 5H
001C 020000 F 1064 LJMP ?C0033
001F 14 1065 DEC A
0020 7003 1066 JNZ $ + 5H
0022 020000 F 1067 LJMP ?C0038
0025 2402 1068 ADD A,#02H
0027 6003 1069 JZ $ + 5H
0029 020000 F 1070 LJMP ?C0044
1071 ; {
1072 ; SOURCE LINE # 193
1073 ; case CMD_RDSEC:
1074 ; SOURCE LINE # 194
002C 1075 ?C0027:
1076 ; if(len != 10)
1077 ; SOURCE LINE # 195
002C 900000 F 1078 MOV DPTR,#len?246
002F E0 1079 MOVX A,@DPTR
0030 7004 1080 JNZ ?C0110
0032 A3 1081 INC DPTR
0033 E0 1082 MOVX A,@DPTR
0034 640A 1083 XRL A,#0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -