📄 d12ci.lst
字号:
00D4 850082 F 889 MOV DPL,D12_DATA+1
890
00D7 891 WRITE_PDATA1:
892 ; for(i=0; i<j; i++)
893 ; *(buf+i) = D12_DATA;
894 ; SOURCE LINE # 219
895
00D7 E0 896 MOVX A,@DPTR
00D8 F3 897 MOVX @R1,A
00D9 09 898 INC R1
00DA DEFB 899 DJNZ R6,WRITE_PDATA1
900
00DC 901 WRITEDAT_END:
902
00DC 903 ?C0042:
904 ;
905 ; outportb(D12_COMMAND, 0xF2);
906 ; SOURCE LINE # 203
00DC 850083 F 907 MOV DPH,D12_COMMAND
00DF 850082 F 908 MOV DPL,D12_COMMAND+01H
00E2 74F2 909 MOV A,#0F2H
00E4 F0 910 MOVX @DPTR,A
911 ;
912 ; if(bEPPflags.bits.in_isr == 0)
913 ; SOURCE LINE # 205
00E5 E500 F 914 MOV A,bEPPflags
00E7 20E502 915 JB ACC.5,?C0044
A51 MACRO ASSEMBLER D12CI 06/23/2003 11:17:01 PAGE 15
916 ; ENABLE;
917 ; SOURCE LINE # 206
00EA D2AF 918 SETB EA
00EC 919 ?C0044:
920 ;
921 ; return j;
922 ; SOURCE LINE # 208
00EC AF00 F 923 MOV R7,j?1059
924 ; }
925 ; SOURCE LINE # 209
00EE 926 ?C0039:
00EE 22 927 RET
928 ; END OF _D12_ReadEndpoint
929
930
931 ;
932 ; unsigned char D12_WriteEndpoint(unsigned char endp, unsigned char len, unsigned char * bu
f)
933
---- 934 RSEG ?PR?_D12_WriteEndpoint?D12CI
0000 935 _D12_WriteEndpoint:
936 USING 0
937 ; SOURCE LINE # 211
0000 8F00 F 938 MOV endp?1160,R7
0002 8D00 F 939 MOV len?1161,R5
0004 8B00 F 940 MOV buf?1162,R3
0006 8A00 F 941 MOV buf?1162+01H,R2
0008 8900 F 942 MOV buf?1162+02H,R1
943 ; {
944 ; SOURCE LINE # 212
945 ; unsigned char i;
946 ;
947 ; if(bEPPflags.bits.in_isr == 0)
948 ; SOURCE LINE # 215
000A E500 F 949 MOV A,bEPPflags
000C 20E502 950 JB ACC.5,?C0045
951 ; DISABLE;
952 ; SOURCE LINE # 216
000F C2AF 953 CLR EA
0011 954 ?C0045:
955 ;
956 ; outportb(D12_COMMAND, endp);
957 ; SOURCE LINE # 218
0011 850083 F 958 MOV DPH,D12_COMMAND
0014 850082 F 959 MOV DPL,D12_COMMAND+01H
0017 E500 F 960 MOV A,endp?1160
0019 F0 961 MOVX @DPTR,A
962 ; i = inportb(D12_DATA);
963 ; SOURCE LINE # 219
001A 850083 F 964 MOV DPH,D12_DATA
001D 850082 F 965 MOV DPL,D12_DATA+01H
0020 E0 966 MOVX A,@DPTR
0021 FF 967 MOV R7,A
0022 8F00 F 968 MOV i?1163,R7
969 ;
970 ; outportb(D12_COMMAND, 0xF0);
971 ; SOURCE LINE # 221
0024 850083 F 972 MOV DPH,D12_COMMAND
0027 850082 F 973 MOV DPL,D12_COMMAND+01H
002A 74F0 974 MOV A,#0F0H
002C F0 975 MOVX @DPTR,A
976 ; outportb(D12_DATA, 0);
977 ; SOURCE LINE # 222
002D 850083 F 978 MOV DPH,D12_DATA
0030 850082 F 979 MOV DPL,D12_DATA+01H
0033 E4 980 CLR A
A51 MACRO ASSEMBLER D12CI 06/23/2003 11:17:01 PAGE 16
0034 F0 981 MOVX @DPTR,A
982 ; outportb(D12_DATA, len);
983 ; SOURCE LINE # 223
0035 850083 F 984 MOV DPH,D12_DATA
0038 850082 F 985 MOV DPL,D12_DATA+01H
003B E500 F 986 MOV A,len?1161
003D F0 987 MOVX @DPTR,A
988 ;
989 ; for(i=0; i<len; i++)
990 ; SOURCE LINE # 225
991 ; outportb(D12_DATA, *(buf+i));
992 ; SOURCE LINE # 226
003E FF 993 MOV R7,A
003F 6060 994 JZ READDAT_END
0041 AB00 F 995 MOV R3,buf?1162
0043 BB002D 996 CJNE R3,#00H,READ_PDATA
0046 A900 F 997 MOV R1,buf?1162+02H
998 ;
999 ; for(i=0; i<len; i++)
1000 ; SOURCE LINE # 243
0048 850083 F 1001 MOV DPH,D12_DATA
004B 850082 F 1002 MOV DPL,D12_DATA+1
1003
004E 1004 READ_DATA1:
004E E7 1005 MOV A,@R1
004F 09 1006 INC R1
1007 ; D12_DATA = *(buf+i);
1008 ; SOURCE LINE # 244
0050 F0 1009 MOVX @DPTR,A
0051 DDFB 1010 DJNZ R5,READ_DATA1
0053 804C 1011 SJMP READDAT_END
1012
0055 1013 READ_XDATA:
0055 BB011B 1014 CJNE R3,#01,READ_PDATA
0058 850083 F 1015 MOV DPH,buf?1162+01H
005B 850082 F 1016 MOV DPL,buf?1162+02H
1017 ;
1018 ; for(i=0; i<len; i++)
1019 ; SOURCE LINE # 243
005E 1020 READ_XDATA1:
005E E0 1021 MOVX A,@DPTR
005F A3 1022 INC DPTR
0060 C083 1023 PUSH DPH
0062 C082 1024 PUSH DPL
1025 ; D12_DATA = *(buf+i);
1026 ; SOURCE LINE # 244
1027 ; MOV DPTR,#0FF02H
0064 850083 F 1028 MOV DPH,D12_DATA
0067 850082 F 1029 MOV DPL,D12_DATA+1
006A F0 1030 MOVX @DPTR,A
006B D082 1031 POP DPL
006D D083 1032 POP DPH
006F DDED 1033 DJNZ R5,READ_XDATA1
0071 802E 1034 SJMP READDAT_END
0073 1035 READ_PDATA:
0073 BBFE0F 1036 CJNE R3,#0FEH,READ_CODE
0076 A900 F 1037 MOV R1,buf?1162+02H
0078 850083 F 1038 MOV DPH,D12_DATA
007B 850082 F 1039 MOV DPL,D12_DATA+1
1040 ;
1041 ; for(i=0; i<len; i++)
1042 ; SOURCE LINE # 243
007E 1043 READ_PDATA1:
007E E3 1044 MOVX A,@R1
007F 09 1045 INC R1
1046 ; D12_DATA = *(buf+i);
A51 MACRO ASSEMBLER D12CI 06/23/2003 11:17:01 PAGE 17
1047 ; SOURCE LINE # 244
0080 F0 1048 MOVX @DPTR,A
0081 DDFB 1049 DJNZ R5,READ_PDATA1
0083 801C 1050 SJMP READDAT_END
0085 1051 READ_CODE:
0085 401A 1052 JC READDAT_END
0087 850083 F 1053 MOV DPH,buf?1162+01H
008A 850082 F 1054 MOV DPL,buf?1162+02H
1055 ;
1056 ; for(i=0; i<len; i++)
1057 ; SOURCE LINE # 243
008D 1058 READ_CODE1:
008D E4 1059 CLR A
008E 93 1060 MOVC A,@A+DPTR
008F A3 1061 INC DPTR
0090 C083 1062 PUSH DPH
0092 C082 1063 PUSH DPL
1064 ; D12_DATA = *(buf+i);
1065 ; SOURCE LINE # 244
0094 850083 F 1066 MOV DPH,D12_DATA
0097 850082 F 1067 MOV DPL,D12_DATA+1
009A F0 1068 MOVX @DPTR,A
009B D082 1069 POP DPL
009D D083 1070 POP DPH
009F DDEC 1071 DJNZ R5,READ_CODE1
1072
00A1 1073 READDAT_END:
00A1 1074 ?C0047:
1075 ;
1076 ; outportb(D12_COMMAND, 0xFA);
1077 ; SOURCE LINE # 228
00A1 850083 F 1078 MOV DPH,D12_COMMAND
00A4 850082 F 1079 MOV DPL,D12_COMMAND+01H
00A7 74FA 1080 MOV A,#0FAH
00A9 F0 1081 MOVX @DPTR,A
1082 ;
1083 ; if(bEPPflags.bits.in_isr == 0)
1084 ; SOURCE LINE # 230
00AA E500 F 1085 MOV A,bEPPflags
00AC 20E502 1086 JB ACC.5,?C0049
1087 ; ENABLE;
1088 ; SOURCE LINE # 231
00AF D2AF 1089 SETB EA
00B1 1090 ?C0049:
1091 ;
1092 ; return len;
1093 ; SOURCE LINE # 233
00B1 AF00 F 1094 MOV R7,len?1161
1095 ; }
1096 ; SOURCE LINE # 234
00B3 1097 ?C0050:
00B3 22 1098 RET
1099 ; END OF _D12_WriteEndpoint
1100
1101 ;
1102 ; void D12_AcknowledgeEndpoint(unsigned char endp)
1103
---- 1104 RSEG ?PR?_D12_AcknowledgeEndpoint?D12CI
0000 1105 _D12_AcknowledgeEndpoint:
1106 USING 0
1107 ; SOURCE LINE # 236
0000 8F00 F 1108 MOV endp?1264,R7
1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -