📄 at45.lst
字号:
\ 00000024 48E09FE5 LDR LR,??AT45_FindDevice_2 ;; at45Devices
\ 00000028 9CE32EE0 MLA LR,R12,R3,LR
\ 0000002C 10C0DEE5 LDRB R12,[LR, #+16]
\ 00000030 02005CE1 CMP R12,R2
237
238 pAt45->pDesc = &(at45Devices[i]);
\ 00000034 18C0A003 MOVEQ R12,#+24
\ 00000038 34E09F05 LDREQ LR,??AT45_FindDevice_2 ;; at45Devices
\ 0000003C 9CE32E00 MLAEQ LR,R12,R3,LR
\ 00000040 1CE08005 STREQ LR,[R0, #+28]
239 }
240 i++;
\ 00000044 013083E2 ADD R3,R3,#+1
241 }
\ 00000048 0A0053E3 CMP R3,#+10
\ 0000004C 0200002A BCS ??AT45_FindDevice_3
\ 00000050 1CC090E5 LDR R12,[R0, #+28]
\ 00000054 00005CE3 CMP R12,#+0
\ 00000058 F0FFFF0A BEQ ??AT45_FindDevice_1
242 configuredBinaryPage = AT45_STATUS_BINARY(status);
\ ??AT45_FindDevice_3:
\ 0000005C 011001E2 AND R1,R1,#0x1
\ 00000060 ........ LDR R2,??DataTable7 ;; configuredBinaryPage
\ 00000064 0010C2E5 STRB R1,[R2, #+0]
243 return pAt45->pDesc;
\ 00000068 1C0090E5 LDR R0,[R0, #+28]
\ ??AT45_FindDevice_0:
\ 0000006C 0050BDE8 POP {R12,LR}
\ 00000070 1EFF2FE1 BX LR ;; return
\ ??AT45_FindDevice_2:
\ 00000074 ........ DC32 at45Devices
244 }
245
246 //------------------------------------------------------------------------------
247 /// This function returns the pagesize corresponding to the device connected
248 /// \param pAt45 Pointer to an AT45 driver instance.
249 //------------------------------------------------------------------------------
\ In section .text, align 4, keep-with-next
250 unsigned int AT45_PageSize(At45 *pAt45)
251 {
252 unsigned int pagesize = pAt45->pDesc->pageSize;
\ AT45_PageSize:
\ 00000000 1C1090E5 LDR R1,[R0, #+28]
\ 00000004 081091E5 LDR R1,[R1, #+8]
253 if(((pAt45->pDesc->hasBinaryPage) == 0) || !configuredBinaryPage){
\ 00000008 1C0090E5 LDR R0,[R0, #+28]
\ 0000000C 040090E5 LDR R0,[R0, #+4]
\ 00000010 000050E3 CMP R0,#+0
\ 00000014 ........ LDRNE R0,??DataTable7 ;; configuredBinaryPage
\ 00000018 0000D015 LDRBNE R0,[R0, #+0]
\ 0000001C 00005013 CMPNE R0,#+0
\ 00000020 2104A011 LSRNE R0,R1,#+8
\ 00000024 0004A011 LSLNE R0,R0,#+8
254 return pagesize;
\ 00000028 0100A001 MOVEQ R0,R1
\ 0000002C 1EFF2FE1 BX LR
255 }
256 return ((pagesize >> 8) << 8);
257 }
\ In section .text, align 4, keep-with-next
\ ??DataTable4:
\ 00000000 ........ DC32 `?<Constant "-F- ASSERT: ">`
\ In section .text, align 4, keep-with-next
\ ??DataTable7:
\ 00000000 ........ DC32 configuredBinaryPage
\ In section .rodata, align 4
\ `?<Constant "AT45DB011D">`:
\ 00000000 415434354442 DC8 "AT45DB011D"
\ 3031314400
\ 0000000B 00 DC8 0
\ In section .rodata, align 4
\ `?<Constant "AT45DB021D">`:
\ 00000000 415434354442 DC8 "AT45DB021D"
\ 3032314400
\ 0000000B 00 DC8 0
\ In section .rodata, align 4
\ `?<Constant "AT45DB041D">`:
\ 00000000 415434354442 DC8 "AT45DB041D"
\ 3034314400
\ 0000000B 00 DC8 0
\ In section .rodata, align 4
\ `?<Constant "AT45DB081D">`:
\ 00000000 415434354442 DC8 "AT45DB081D"
\ 3038314400
\ 0000000B 00 DC8 0
\ In section .rodata, align 4
\ `?<Constant "AT45DB161D">`:
\ 00000000 415434354442 DC8 "AT45DB161D"
\ 3136314400
\ 0000000B 00 DC8 0
\ In section .rodata, align 4
\ `?<Constant "AT45DB321D">`:
\ 00000000 415434354442 DC8 "AT45DB321D"
\ 3332314400
\ 0000000B 00 DC8 0
\ In section .rodata, align 4
\ `?<Constant "AT45DB642D">`:
\ 00000000 415434354442 DC8 "AT45DB642D"
\ 3634324400
\ 0000000B 00 DC8 0
\ In section .rodata, align 4
\ `?<Constant "AT45DB1282">`:
\ 00000000 415434354442 DC8 "AT45DB1282"
\ 3132383200
\ 0000000B 00 DC8 0
\ In section .rodata, align 4
\ `?<Constant "AT45DB2562">`:
\ 00000000 415434354442 DC8 "AT45DB2562"
\ 3235363200
\ 0000000B 00 DC8 0
\ In section .rodata, align 4
\ `?<Constant "AT45DB5122">`:
\ 00000000 415434354442 DC8 "AT45DB5122"
\ 3531323200
\ 0000000B 00 DC8 0
\ In section .rodata, align 4
\ `?<Constant "-F- ASSERT: ">`:
\ 00000000 2D462D204153 DC8 "-F- ASSERT: "
\ 534552543A20
\ 00
\ 0000000D 000000 DC8 0, 0, 0
\ In section .rodata, align 4
\ `?<Constant "AT45_Configure: pSpid...">`:
\ 00000000 415434355F43 DC8 "AT45_Configure: pSpid is 0.\012\015"
\ 6F6E66696775
\ 72653A207053
\ 706964206973
\ 20302E0A0D00
\ 0000001E 0000 DC8 0, 0
\ In section .rodata, align 4
\ `?<Constant "AT45_Configure: pAt45...">`:
\ 00000000 415434355F43 DC8 "AT45_Configure: pAt45 is 0.\012\015"
\ 6F6E66696775
\ 72653A207041
\ 743435206973
\ 20302E0A0D00
\ 0000001E 0000 DC8 0, 0
\ In section .rodata, align 4
\ `?<Constant "AT45_Command: pAt45 i...">`:
\ 00000000 415434355F43 DC8 "AT45_Command: pAt45 is 0.\012\015"
\ 6F6D6D616E64
\ 3A2070417434
\ 352069732030
\ 2E0A0D00
\ In section .rodata, align 4
\ `?<Constant "AT45_Command: Device ...">`:
\ 00000000 415434355F43 DC8 41H, 54H, 34H, 35H, 5FH, 43H, 6FH, 6DH
\ 6F6D
\ 00000008 6D616E643A20 DC8 6DH, 61H, 6EH, 64H, 3AH, 20H, 44H, 65H
\ 4465
\ 00000010 766963652068 DC8 76H, 69H, 63H, 65H, 20H, 68H, 61H, 73H
\ 6173
\ 00000018 206E6F206465 DC8 20H, 6EH, 6FH, 20H, 64H, 65H, 73H, 63H
\ 7363
\ 00000020 726970746F72 DC8 72H, 69H, 70H, 74H, 6FH, 72H, 2CH, 20H
\ 2C20
\ 00000028 6F6E6C792053 DC8 6FH, 6EH, 6CH, 79H, 20H, 53H, 54H, 41H
\ 5441
\ 00000030 5455535F5245 DC8 54H, 55H, 53H, 5FH, 52H, 45H, 41H, 44H
\ 4144
\ 00000038 20636F6D6D61 DC8 20H, 63H, 6FH, 6DH, 6DH, 61H, 6EH, 64H
\ 6E64
\ 00000040 20616C6C6F77 DC8 20H, 61H, 6CH, 6CH, 6FH, 77H, 65H, 64H
\ 6564
\ 00000048 0A0D00 DC8 0AH, 0DH, 0
\ 0000004B 00 DC8 0
\ In section .rodata, align 4
\ `?<Constant "AT45_Command: No desc...">`:
\ 00000000 415434355F43 DC8 "AT45_Command: No descriptor for dataflash.\012\015"
\ 6F6D6D616E64
\ 3A204E6F2064
\ 657363726970
\ 746F7220666F
\ 722064617461
\ 666C6173682E
\ 0A0D00
\ 0000002D 000000 DC8 0, 0, 0
Maximum stack usage in bytes:
Function .cstack
-------- -------
AT45_Configure 16
AT45_FindDevice 8
AT45_IsBusy 8
AT45_PageSize 0
AT45_SendCommand 48
memset 8
Section sizes:
Function/Label Bytes
-------------- -----
memset 40
configuredBinaryPage 1
at45Devices 240
AT45_Configure 144
AT45_IsBusy 16
AT45_SendCommand 368
AT45_FindDevice 120
AT45_PageSize 48
??DataTable4 4
??DataTable7 4
?<Constant "AT45DB011D"> 12
?<Constant "AT45DB021D"> 12
?<Constant "AT45DB041D"> 12
?<Constant "AT45DB081D"> 12
?<Constant "AT45DB161D"> 12
?<Constant "AT45DB321D"> 12
?<Constant "AT45DB642D"> 12
?<Constant "AT45DB1282"> 12
?<Constant "AT45DB2562"> 12
?<Constant "AT45DB5122"> 12
?<Constant "-F- ASSERT: "> 16
?<Constant "AT45_Configure: pSpid...">
32
?<Constant "AT45_Configure: pAt45...">
32
?<Constant "AT45_Command: pAt45 i...">
28
?<Constant "AT45_Command: Device ...">
76
?<Constant "AT45_Command: No desc...">
48
1 byte in section .bss
592 bytes in section .rodata
744 bytes in section .text
704 bytes of CODE memory (+ 40 bytes shared)
592 bytes of CONST memory
1 byte of DATA memory
Errors: none
Warnings: none
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -