📄 d12ci.lst
字号:
256 1 // A0=0;
257 1 // j = D12_DATA;
258 1 // j = D12_DATA;
259 1 outportb(D12_COMMAND,0xF0);
260 1 j=inportb(D12_DATA);
261 1 j=inportb(D12_DATA);
262 1
263 1 if(j > len)
264 1 j = len;
265 1
266 1 for(i=0; i<j; i++)
267 1 *(buf+i) = inportb(D12_DATA);
268 1 //A0=1;
269 1 //D12_COMMAND = 0xF2;
270 1 outportb(D12_COMMAND,0xF2);
271 1
272 1 if(bEPPflags.bits.in_isr == 0)
273 1 ENABLE;
274 1
275 1 return j;
276 1 }
277
278
279
280 unsigned char D12_WriteEndpoint(unsigned char endp, unsigned char len,unsigned char * buf) //reentrant
281 {
282 1 unsigned char i;
283 1
284 1 if(bEPPflags.bits.in_isr == 0)
285 1 DISABLE;
286 1 // A0=1;
287 1 // D12_COMMAND = endp;
288 1 outportb(D12_COMMAND,endp);
289 1 //A0=0;
290 1 //D12_DATA;
291 1 inportb(D12_DATA);
292 1 //A0=1;
293 1 //D12_COMMAND = 0xF0;
294 1 outportb(D12_COMMAND,0xF0);
295 1 //A0=0;
296 1 //D12_DATA = 0;
297 1 //D12_DATA = len;
298 1 outportb(D12_DATA,0);
299 1 outportb(D12_DATA,len);
300 1 for(i=0; i<len; i++)
301 1 outportb(D12_DATA, *(buf+i));
302 1 //A0=1;
303 1 //D12_COMMAND = 0xFA;
C51 COMPILER V6.12 D12CI 12/16/2004 15:21:56 PAGE 6
304 1 outportb(D12_COMMAND,0xFA);
305 1
306 1 if(bEPPflags.bits.in_isr == 0)
307 1 ENABLE;
308 1
309 1 return len;
310 1 }
311
312
313 unsigned char D12_WriteEndpoint_ISR(unsigned char endp, unsigned char len,unsigned char * buf) //reentrant
314 {
315 1 unsigned char i;
316 1
317 1 if(bEPPflags.bits.in_isr == 0)
318 1 DISABLE;
319 1 // A0=1;
320 1 // D12_COMMAND = endp;
321 1 outportb(D12_COMMAND,endp);
322 1 //A0=0;
323 1 //D12_DATA;
324 1 inportb(D12_DATA);
325 1 //A0=1;
326 1 //D12_COMMAND = 0xF0;
327 1 outportb(D12_COMMAND,0xF0);
328 1 //A0=0;
329 1 //D12_DATA = 0;
330 1 //D12_DATA = len;
331 1 outportb(D12_DATA,0);
332 1 outportb(D12_DATA,len);
333 1 for(i=0; i<len; i++)
334 1 outportb(D12_DATA, *(buf+i));
335 1 //A0=1;
336 1 //D12_COMMAND = 0xFA;
337 1 outportb(D12_COMMAND,0xFA);
338 1
339 1 if(bEPPflags.bits.in_isr == 0)
340 1 ENABLE;
341 1
342 1 return len;
343 1 }
344
345
346
347 void D12_AcknowledgeEndpoint(unsigned char endp)
348 {
349 1 // A0=1;
350 1 // D12_COMMAND = endp;
351 1 outportb(D12_COMMAND,endp);
352 1 outportb(D12_COMMAND,0xF1);
353 1 // D12_COMMAND = 0xF1;
354 1 if(endp == 0)
355 1 // D12_COMMAND = 0xF2;
356 1 outportb(D12_COMMAND,0xF2);
357 1 }
358
359
360
361
C51 COMPILER V6.12 D12CI 12/16/2004 15:21:56 PAGE 7
NAME CLASS MSPACE TYPE OFFSET SIZE
==== ===== ====== ==== ====== ====
P3 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00B0H 1
T0 . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B4H 1
AC . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D6H 1
T1 . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B5H 1
EA . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00AFH 1
_D12_WriteEndpoint_ISR . . . . . . . . PUBLIC CODE PROC 0000H -----
endp . . . . . . . . . . . . . . . . * REG * DATA U_CHAR 0007H 1
len. . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0000H 1
buf. . . . . . . . . . . . . . . . . AUTO DATA PTR 0001H 3
i. . . . . . . . . . . . . . . . . . * REG * DATA U_CHAR 0004H 1
_D12_SelectEndpoint. . . . . . . . . . PUBLIC CODE PROC 0000H -----
bEndp. . . . . . . . . . . . . . . . * REG * DATA U_CHAR 0005H 1
c. . . . . . . . . . . . . . . . . . * REG * DATA U_CHAR 0007H 1
_D12_ReadLastTransactionStatus . . . . PUBLIC CODE PROC 0000H -----
bEndp. . . . . . . . . . . . . . . . * REG * DATA U_CHAR 0007H 1
RD . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B7H 1
_epp_flags . . . . . . . . . . . . . . * TAG * ----- UNION ----- 2
bits . . . . . . . . . . . . . . . . MEMBER ----- STRUCT 0000H 2
value. . . . . . . . . . . . . . . . MEMBER ----- U_INT 0000H 2
ES . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00ACH 1
_D12_AcknowledgeEndpoint . . . . . . . PUBLIC CODE PROC 0000H -----
endp . . . . . . . . . . . . . . . . * REG * DATA U_CHAR 0004H 1
RI . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0098H 1
INT0 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B2H 1
CY . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D7H 1
_D12_SetMode . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
bConfig. . . . . . . . . . . . . . . * REG * DATA U_CHAR 0004H 1
bClkDiv. . . . . . . . . . . . . . . * REG * DATA U_CHAR 0003H 1
TI . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0099H 1
INT1 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B3H 1
PS . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00BCH 1
OV . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D2H 1
D12_ReadInterruptRegister. . . . . . . PUBLIC CODE PROC 0000H -----
b1 . . . . . . . . . . . . . . . . . * REG * DATA U_CHAR 0005H 1
j. . . . . . . . . . . . . . . . . . * REG * DATA U_INT 0002H 2
_D12_SetEndpointEnable . . . . . . . . PUBLIC CODE PROC 0000H -----
bEnable. . . . . . . . . . . . . . . * REG * DATA U_CHAR 0004H 1
WR . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B6H 1
_D12_SetAddressEnable. . . . . . . . . PUBLIC CODE PROC 0000H -----
bAddress . . . . . . . . . . . . . . * REG * DATA U_CHAR 0004H 1
bEnable. . . . . . . . . . . . . . . * REG * DATA U_CHAR 0003H 1
_D12_ReadEndpoint. . . . . . . . . . . PUBLIC CODE PROC 0000H -----
endp . . . . . . . . . . . . . . . . * REG * DATA U_CHAR 0007H 1
len. . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0000H 1
buf. . . . . . . . . . . . . . . . . AUTO DATA PTR 0001H 3
i. . . . . . . . . . . . . . . . . . * REG * DATA U_CHAR 0004H 1
j. . . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0004H 1
CONTROL_XFER . . . . . . . . . . . . . TYPEDEF ----- STRUCT ----- 23
DeviceRequest. . . . . . . . . . . . MEMBER ----- STRUCT 0000H 8
wLength. . . . . . . . . . . . . . . MEMBER ----- U_INT 0008H 2
wCount . . . . . . . . . . . . . . . MEMBER ----- U_INT 000AH 2
pData. . . . . . . . . . . . . . . . MEMBER ----- PTR 000CH 3
dataBuffer . . . . . . . . . . . . . MEMBER ----- ARRAY 000FH 8
_D12_WriteEndpoint . . . . . . . . . . PUBLIC CODE PROC 0000H -----
endp . . . . . . . . . . . . . . . . * REG * DATA U_CHAR 0007H 1
len. . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0000H 1
buf. . . . . . . . . . . . . . . . . AUTO DATA PTR 0001H 3
C51 COMPILER V6.12 D12CI 12/16/2004 15:21:56 PAGE 8
NAME CLASS MSPACE TYPE OFFSET SIZE
==== ===== ====== ==== ====== ====
i. . . . . . . . . . . . . . . . . . * REG * DATA U_CHAR 0004H 1
IE0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0089H 1
DEVICE_REQUEST . . . . . . . . . . . . TYPEDEF ----- STRUCT ----- 8
bmRequestType. . . . . . . . . . . . MEMBER ----- U_CHAR 0000H 1
bRequest . . . . . . . . . . . . . . MEMBER ----- U_CHAR 0001H 1
wValue . . . . . . . . . . . . . . . MEMBER ----- U_INT 0002H 2
wIndex . . . . . . . . . . . . . . . MEMBER ----- U_INT 0004H 2
wLength. . . . . . . . . . . . . . . MEMBER ----- U_INT 0006H 2
IE1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008BH 1
_device_request. . . . . . . . . . . . * TAG * ----- STRUCT ----- 8
bmRequestType. . . . . . . . . . . . MEMBER ----- U_CHAR 0000H 1
bRequest . . . . . . . . . . . . . . MEMBER ----- U_CHAR 0001H 1
wValue . . . . . . . . . . . . . . . MEMBER ----- U_INT 0002H 2
wIndex . . . . . . . . . . . . . . . MEMBER ----- U_INT 0004H 2
wLength. . . . . . . . . . . . . . . MEMBER ----- U_INT 0006H 2
ET0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00A9H 1
ET1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00ABH 1
TF0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008DH 1
TF1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008FH 1
RB8. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009AH 1
EX0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00A8H 1
IT0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0088H 1
TB8. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009BH 1
EX1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00AAH 1
IT1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008AH 1
P. . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D0H 1
SM0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009FH 1
SM1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009EH 1
SM2. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009DH 1
PT0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B9H 1
EPPFLAGS . . . . . . . . . . . . . . . TYPEDEF ----- UNION ----- 2
bits . . . . . . . . . . . . . . . . MEMBER ----- STRUCT 0000H 2
value. . . . . . . . . . . . . . . . MEMBER ----- U_INT 0000H 2
PT1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00BBH 1
RS0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D3H 1
TR0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008CH 1
RS1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D4H 1
TR1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008EH 1
PX0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B8H 1
bEPPflags. . . . . . . . . . . . . . . EXTERN DATA UNION ----- 2
PX1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00BAH 1
_inportb . . . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
Addr . . . . . . . . . . . . . . . . * REG * DATA U_INT 0082H 2
_outportb. . . . . . . . . . . . . . . PUBLIC CODE PROC 0008H -----
Addr . . . . . . . . . . . . . . . . * REG * DATA U_INT 0082H 2
Data . . . . . . . . . . . . . . . . * REG * DATA U_CHAR 0005H 1
_D12_SetEndpointStatus . . . . . . . . PUBLIC CODE PROC 0000H -----
bEndp. . . . . . . . . . . . . . . . * REG * DATA U_CHAR 0007H 1
bStalled . . . . . . . . . . . . . . * REG * DATA U_CHAR 0004H 1
REN. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009CH 1
RXD. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B0H 1
_flags . . . . . . . . . . . . . . . . * TAG * ----- STRUCT ----- 2
timer. . . . . . . . . . . . . . . . MEMBER ----- FIELD 0000H 1.0
bus_reset. . . . . . . . . . . . . . MEMBER ----- FIELD 0000H 1.1
suspend. . . . . . . . . . . . . . . MEMBER ----- FIELD 0000H 1.2
setup_packet . . . . . . . . . . . . MEMBER ----- FIELD 0000H 1.3
remote_wakeup. . . . . . . . . . . . MEMBER ----- FIELD 0000H 1.4
C51 COMPILER V6.12 D12CI 12/16/2004 15:21:56 PAGE 9
NAME CLASS MSPACE TYPE OFFSET SIZE
==== ===== ====== ==== ====== ====
in_isr . . . . . . . . . . . . . . . MEMBER ----- FIELD 0000H 1.5
control_state. . . . . . . . . . . . MEMBER ----- FIELD 0000H 2.6
configuration. . . . . . . . . . . . MEMBER ----- FIELD 0001H 1.0
command. . . . . . . . . . . . . . . MEMBER ----- FIELD 0001H 1.1
ep1_rxdone . . . . . . . . . . . . . MEMBER ----- FIELD 0001H 1.2
ep2_rxdone . . . . . . . . . . . . . MEMBER ----- FIELD 0001H 1.3
ep1_buffull. . . . . . . . . . . . . MEMBER ----- FIELD 0001H 1.4
ep2_buffull. . . . . . . . . . . . . MEMBER ----- FIELD 0001H 1.5
A0 . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B0H 1
TXD. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B1H 1
F0 . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D5H 1
_control_xfer. . . . . . . . . . . . . * TAG * ----- STRUCT ----- 23
DeviceRequest. . . . . . . . . . . . MEMBER ----- STRUCT 0000H 8
wLength. . . . . . . . . . . . . . . MEMBER ----- U_INT 0008H 2
wCount . . . . . . . . . . . . . . . MEMBER ----- U_INT 000AH 2
pData. . . . . . . . . . . . . . . . MEMBER ----- PTR 000CH 3
dataBuffer . . . . . . . . . . . . . MEMBER ----- ARRAY 000FH 8
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 644 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 13
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -