📄 usbprinter.lst
字号:
80 {
81 ;
82 }
83 USBPrinterDriver_Read(usbBuffer,DATABUFFERSIZE,(TransferCallback) UsbDataReceived,0);
\ ??UsbDataReceived_0:
\ 00000038 0030A0E3 MOV R3,#+0
\ 0000003C ........ LDR R2,??DataTable7 ;; UsbDataReceived
\ 00000040 4010A0E3 MOV R1,#+64
\ 00000044 ........ LDR R0,??DataTable8 ;; usbBuffer
\ 00000048 ........ BL USBPrinterDriver_Read
84 }
\ 0000004C 3840BDE8 POP {R3-R5,LR}
\ 00000050 1EFF2FE1 BX LR ;; return
\ ??UsbDataReceived_1:
\ 00000054 ........ DC32 `?<Constant "-I- UsbDataReceived: ...">`
\ 00000058 ........ DC32 `?<Constant "-I- UsbDataReceived:%...">`
85
\ In section .text, align 4, keep-with-next
86 void USBPortInit()
87 {
\ USBPortInit:
\ 00000000 01402DE9 PUSH {R0,LR}
88 PIO_InitializeInterrupts(0);
\ 00000004 0000A0E3 MOV R0,#+0
\ 00000008 ........ BL PIO_InitializeInterrupts
89 VBus_Configure();
\ 0000000C ........ BL VBus_Configure
90 USBPrinterDriver_Initialize();
91 }
\ 00000010 0050BDE8 POP {R12,LR}
\ 00000014 ........ B USBPrinterDriver_Initialize ;; tailcall
92
\ In section .text, align 4, keep-with-next
93 void USBPortRead()
94 {
\ USBPortRead:
\ 00000000 01402DE9 PUSH {R0,LR}
95 if (USBD_GetState() < USBD_STATE_CONFIGURED)
\ 00000004 ........ BL USBD_GetState
\ 00000008 050050E3 CMP R0,#+5
\ 0000000C 0800002A BCS ??USBPortRead_0
96 {
97 USBD_Connect();
\ 00000010 ........ BL USBD_Connect
98 while (USBD_GetState() < USBD_STATE_CONFIGURED);
\ ??USBPortRead_1:
\ 00000014 ........ BL USBD_GetState
\ 00000018 050050E3 CMP R0,#+5
\ 0000001C FCFFFF3A BCC ??USBPortRead_1
99 USBPrinterDriver_Read(usbBuffer,DATABUFFERSIZE,(TransferCallback) UsbDataReceived,0);
\ 00000020 0030A0E3 MOV R3,#+0
\ 00000024 ........ LDR R2,??DataTable7 ;; UsbDataReceived
\ 00000028 4010A0E3 MOV R1,#+64
\ 0000002C ........ LDR R0,??DataTable8 ;; usbBuffer
\ 00000030 ........ BL USBPrinterDriver_Read
100 }
101 }
\ ??USBPortRead_0:
\ 00000034 0050BDE8 POP {R12,LR}
\ 00000038 1EFF2FE1 BX LR ;; return
102
\ In section .text, align 4, keep-with-next
103 void USBPortDisconect()
104 {
\ USBPortDisconect:
\ 00000000 01402DE9 PUSH {R0,LR}
105 USBD_Disconnect();
106 }
\ 00000004 0050BDE8 POP {R12,LR}
\ 00000008 ........ B USBD_Disconnect ;; tailcall
107
108
\ In section .text, align 4, keep-with-next
109 void USBPrinter_HandleUpdataReday()
110 {
\ USBPrinter_HandleUpdataReday:
\ 00000000 01402DE9 PUSH {R0,LR}
111 Flag_USBUpdataReday = 1;
\ 00000004 ........ LDR R0,??DataTable10 ;; Flag_USBUpdataReday
\ 00000008 0110A0E3 MOV R1,#+1
\ 0000000C 0010C0E5 STRB R1,[R0, #+0]
112 USBD_Stall(0);
\ 00000010 0000A0E3 MOV R0,#+0
113 }
\ 00000014 0050BDE8 POP {R12,LR}
\ 00000018 ........ B USBD_Stall ;; tailcall
114
\ In section .text, align 4, keep-with-next
115 INTERFACE * IsUSBReday()
116 {
117 return NULL;
\ IsUSBReday:
\ 00000000 0000A0E3 MOV R0,#+0
\ 00000004 1EFF2FE1 BX LR ;; return
118 }
119
\ In section .text, align 4, keep-with-next
120 void ResetUpdataFlag()
121 {
122 Flag_USBUpdataReday = 0;
\ ResetUpdataFlag:
\ 00000000 ........ LDR R0,??DataTable10 ;; Flag_USBUpdataReday
\ 00000004 0010A0E3 MOV R1,#+0
\ 00000008 0010C0E5 STRB R1,[R0, #+0]
123 }
\ 0000000C 1EFF2FE1 BX LR ;; return
\ In section .text, align 4, keep-with-next
\ ??DataTable4:
\ 00000000 ........ DC32 pinVbus
\ In section .text, align 4, keep-with-next
\ ??DataTable7:
\ 00000000 ........ DC32 UsbDataReceived
\ In section .text, align 4, keep-with-next
\ ??DataTable8:
\ 00000000 ........ DC32 usbBuffer
\ In section .text, align 4, keep-with-next
\ ??DataTable10:
\ 00000000 ........ DC32 Flag_USBUpdataReday
\ In section .rodata, align 4
\ `?<Constant "-I- VBus_Configure ">`:
\ 00000000 2D492D205642 DC8 "-I- VBus_Configure "
\ 75735F436F6E
\ 666967757265
\ 2000
\ In section .rodata, align 4
\ `?<Constant "-I- UsbDataReceived: ...">`:
\ 00000000 2D492D205573 DC8 "-I- UsbDataReceived: %d bytes\012\015"
\ 624461746152
\ 656365697665
\ 643A20256420
\ 62797465730A
\ 0D00
\ In section .rodata, align 4
\ `?<Constant "-I- UsbDataReceived:%...">`:
\ 00000000 2D492D205573 DC8 "-I- UsbDataReceived:%d byte\012\015"
\ 624461746152
\ 656365697665
\ 643A25642062
\ 7974650A0D00
\ 0000001E 0000 DC8 0, 0
Maximum stack usage in bytes:
Function .cstack
-------- -------
ISR_Vbus 8
IsUSBReday 0
ReceiveData 0
ResetUpdataFlag 0
USBPortDisconect 8
USBPortInit 8
USBPortRead 8
USBPrinter_HandleUpdataReday 8
UsbDataReceived 16
VBus_Configure 8
Section sizes:
Function/Label Bytes
-------------- -----
Flag_USBUpdataReday 1
usbBuffer 64
pinVbus 12
ISR_Vbus 36
VBus_Configure 84
ReceiveData 20
UsbDataReceived 92
USBPortInit 24
USBPortRead 60
USBPortDisconect 12
USBPrinter_HandleUpdataReday 28
IsUSBReday 8
ResetUpdataFlag 16
??DataTable4 4
??DataTable7 4
??DataTable8 4
??DataTable10 4
?<Constant "-I- VBus_Configure ">
20
?<Constant "-I- UsbDataReceived: ...">
32
?<Constant "-I- UsbDataReceived:%...">
32
65 bytes in section .bss
96 bytes in section .rodata
396 bytes in section .text
396 bytes of CODE memory
96 bytes of CONST memory
65 bytes of DATA memory
Errors: none
Warnings: 1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -