📄 uart.lst
字号:
\ In section .text, align 2, keep-with-next
178 void uart_sendN (UART_MemMapPtr uartch ,uint8* buff,uint16 len)
179 {
\ uart_sendN:
\ 00000000 0xB5F8 PUSH {R3-R7,LR}
\ 00000002 0x0004 MOVS R4,R0
\ 00000004 0x000D MOVS R5,R1
\ 00000006 0x0016 MOVS R6,R2
180 int i;
181 for(i=0;i<len;i++)
\ 00000008 0x2700 MOVS R7,#+0
\ 0000000A 0xE004 B.N ??uart_sendN_0
182 {
183 uart_send1(uartch,buff[i]);
\ ??uart_sendN_1:
\ 0000000C 0x5D79 LDRB R1,[R7, R5]
\ 0000000E 0x0020 MOVS R0,R4
\ 00000010 0x.... 0x.... BL uart_send1
184 }
\ 00000014 0x1C7F ADDS R7,R7,#+1
\ ??uart_sendN_0:
\ 00000016 0xB2B6 UXTH R6,R6 ;; ZeroExt R6,R6,#+16,#+16
\ 00000018 0x42B7 CMP R7,R6
\ 0000001A 0xDBF7 BLT.N ??uart_sendN_1
185 }
\ 0000001C 0xBDF1 POP {R0,R4-R7,PC} ;; return
186
187 //-------------------------------------------------------------------------*
188 //函数名: enableuartreint *
189 //功 能: 开串口接收中断 *
190 //参 数: uartch: 串口号 *
191 // irqno: 对应irq号 *
192 //返 回: 无 *
193 //说 明: *
194 //-------------------------------------------------------------------------*
\ In section .text, align 2, keep-with-next
195 void enableuartreint(UART_MemMapPtr uartch,uint8 irqno)
196 {
\ enableuartreint:
\ 00000000 0xB580 PUSH {R7,LR}
197 UART_C2_REG(uartch)|=UART_C2_RIE_MASK; //开放UART接收中断
\ 00000002 0x78C2 LDRB R2,[R0, #+3]
\ 00000004 0xF052 0x0220 ORRS R2,R2,#0x20
\ 00000008 0x70C2 STRB R2,[R0, #+3]
198 enable_irq(irqno); //开接收引脚的IRQ中断
\ 0000000A 0xB2C9 UXTB R1,R1 ;; ZeroExt R1,R1,#+24,#+24
\ 0000000C 0x0008 MOVS R0,R1
\ 0000000E 0x.... 0x.... BL enable_irq
199 }
\ 00000012 0xBD01 POP {R0,PC} ;; return
200
201 //-------------------------------------------------------------------------*
202 //函数名: disableuartreint *
203 //功 能: 关串口接收中断 *
204 //参 数: uartch: 串口号 *
205 // irqno: 对应irq号 *
206 //返 回: 无 *
207 //说 明: *
208 //-------------------------------------------------------------------------*
\ In section .text, align 2, keep-with-next
209 void disableuartreint(UART_MemMapPtr uartch,uint8 irqno)
210 {
\ disableuartreint:
\ 00000000 0xB580 PUSH {R7,LR}
211 UART_C2_REG(uartch)&=~UART_C2_RIE_MASK; //禁止UART接收中断
\ 00000002 0x78C2 LDRB R2,[R0, #+3]
\ 00000004 0xF012 0x02DF ANDS R2,R2,#0xDF
\ 00000008 0x70C2 STRB R2,[R0, #+3]
212 disable_irq(irqno); //关接收引脚的IRQ中断
\ 0000000A 0xB2C9 UXTB R1,R1 ;; ZeroExt R1,R1,#+24,#+24
\ 0000000C 0x0008 MOVS R0,R1
\ 0000000E 0x.... 0x.... BL disable_irq
213 }
\ 00000012 0xBD01 POP {R0,PC} ;; return
\ In section .text, align 4, keep-with-next
\ ??DataTable0:
\ 00000000 0x4006A000 DC32 0x4006a000
\ In section .text, align 4, keep-with-next
\ ??DataTable0_1:
\ 00000000 0x4004C018 DC32 0x4004c018
\ In section .text, align 4, keep-with-next
\ ??DataTable0_2:
\ 00000000 0x4004C01C DC32 0x4004c01c
\ In section .text, align 4, keep-with-next
\ ??DataTable0_3:
\ 00000000 0x4006B000 DC32 0x4006b000
\ In section .text, align 4, keep-with-next
\ ??DataTable0_4:
\ 00000000 0x4004B010 DC32 0x4004b010
\ In section .text, align 4, keep-with-next
\ ??DataTable0_5:
\ 00000000 0x4004B00C DC32 0x4004b00c
\ In section .text, align 4, keep-with-next
\ ??DataTable0_6:
\ 00000000 0x4006C000 DC32 0x4006c000
\ In section .text, align 4, keep-with-next
\ ??DataTable0_7:
\ 00000000 0x4004C00C DC32 0x4004c00c
\ In section .text, align 4, keep-with-next
\ ??DataTable0_8:
\ 00000000 0x4004C008 DC32 0x4004c008
\ In section .text, align 4, keep-with-next
\ ??DataTable0_9:
\ 00000000 0x4006D000 DC32 0x4006d000
\ In section .text, align 4, keep-with-next
\ ??DataTable0_10:
\ 00000000 0x4004B044 DC32 0x4004b044
\ In section .text, align 4, keep-with-next
\ ??DataTable0_11:
\ 00000000 0x4004B040 DC32 0x4004b040
\ In section .text, align 4, keep-with-next
\ ??DataTable0_12:
\ 00000000 0x400EA000 DC32 0x400ea000
\ In section .text, align 4, keep-with-next
\ ??DataTable0_13:
\ 00000000 0x4004D060 DC32 0x4004d060
\ In section .text, align 4, keep-with-next
\ ??DataTable0_14:
\ 00000000 0x4004D064 DC32 0x4004d064
\ In section .text, align 4, keep-with-next
\ ??DataTable0_15:
\ 00000000 0x400EB000 DC32 0x400eb000
\ In section .text, align 4, keep-with-next
\ ??DataTable0_16:
\ 00000000 0x4004D020 DC32 0x4004d020
\ In section .text, align 4, keep-with-next
\ ??DataTable0_17:
\ 00000000 0x4004D024 DC32 0x4004d024
\ In section .text, align 4, keep-with-next
\ ??DataTable0_18:
\ 00000000 0x40048034 DC32 0x40048034
\ In section .text, align 4, keep-with-next
\ ??DataTable0_19:
\ 00000000 0x40048028 DC32 0x40048028
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
Maximum stack usage in bytes:
.cstack Function
------- --------
8 disableuartreint
8 -> disable_irq
8 enableuartreint
8 -> enable_irq
8 uart_init
0 uart_re1
24 uart_reN
24 -> uart_re1
0 uart_send1
24 uart_sendN
24 -> uart_send1
Section sizes:
Bytes Function/Label
----- --------------
4 ??DataTable0
4 ??DataTable0_1
4 ??DataTable0_10
4 ??DataTable0_11
4 ??DataTable0_12
4 ??DataTable0_13
4 ??DataTable0_14
4 ??DataTable0_15
4 ??DataTable0_16
4 ??DataTable0_17
4 ??DataTable0_18
4 ??DataTable0_19
4 ??DataTable0_2
4 ??DataTable0_3
4 ??DataTable0_4
4 ??DataTable0_5
4 ??DataTable0_6
4 ??DataTable0_7
4 ??DataTable0_8
4 ??DataTable0_9
20 disableuartreint
20 enableuartreint
382 uart_init
44 uart_re1
44 uart_reN
10 uart_send1
30 uart_sendN
630 bytes in section .text
630 bytes of CODE memory
Errors: none
Warnings: none
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -