📄 testat45db161.htm
字号:
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html><head>
<title>Static Call Graph - [.\output\Testat45db161.axf]</title></head>
<body><HR>
<H1>Static Call Graph for image .\output\Testat45db161.axf</H1><HR>
<BR><P>#<CALLGRAPH># ARM Linker, RVCT3.0 [Build 951]: Last Updated: Mon Jan 28 17:49:04 2008
<BR><P>
<H3>Maximum Stack Usage = 3260 bytes + Unknown(Functions without stacksize,Cycles,Untraceable Function Pointers)</H3><H3>
Call chain for Maximum Stack Depth:</H3>
LED_A_flash -> WriteDataToFlash -> MainMemoryPageToBuffer1 -> AT45_Read_REG -> BPSI_DataSendReceive<P>
<H3>
Functions with no stack information
</H3><UL>
<LI><a href="#[db6e40]">Vectors</a>
<LI><a href="#[db6d4c]">Reset_Handler</a>
<LI><a href="#[11bca38]">__scatterload</a>
<LI><a href="#[11bc968]">__scatterload_rt2</a>
<LI><a href="#[11bc9b8]">__scatterload_null</a>
<LI><a href="#[11bc484]">__scatterload_copy</a>
<LI><a href="#[11bc034]">__scatterload_zeroinit</a>
<LI><a href="#[db6bcc]">__user_initial_stackheap</a>
<LI><a href="#[11af920]">_memset_w</a>
<LI><a href="#[11c3778]">os_clock_interrupt</a>
<LI><a href="#[11c3728]">os_set_env</a>
<LI><a href="#[11c2e48]">SWI_Handler</a>
<LI><a href="#[12c0e9c]">__fplib_config_pureend_doubles</a>
<LI><a href="#[db7384]">UndefHandler</a>
<LI><a href="#[db730c]">PAbtHandler</a>
<LI><a href="#[db7294]">DAbtHandler</a>
<LI><a href="#[db721c]">IRQHandler</a>
<LI><a href="#[db71a4]">FIQHandler</a>
<LI><a href="#[11aedfc]">__arm_div4</a>
<LI><a href="#[11aed84]">__arm_div8</a>
<LI><a href="#[11aed08]">__arm_div_large</a>
</UL>
<P>
<H3>
Mutually Recursive functions
</H3><UL>
<LI><a href="#[db7384]">UndefHandler</a> -> <a href="#[db7384]">UndefHandler</a><BR>
<LI><a href="#[db730c]">PAbtHandler</a> -> <a href="#[db730c]">PAbtHandler</a><BR>
<LI><a href="#[db7294]">DAbtHandler</a> -> <a href="#[db7294]">DAbtHandler</a><BR>
<LI><a href="#[db721c]">IRQHandler</a> -> <a href="#[db721c]">IRQHandler</a><BR>
<LI><a href="#[db71a4]">FIQHandler</a> -> <a href="#[db71a4]">FIQHandler</a><BR>
</UL>
<BR>
<P><STRONG><a name="[db6e40]"></a>Vectors</STRONG> (ARM, 4 bytes, Stack size unknown bytes, str71x.o(Reset), UNUSED)
<P><STRONG><a name="[db6d4c]"></a>Reset_Handler</STRONG> (ARM, 0 bytes, Stack size unknown bytes, str71x.o(Reset))
<BR>[Address Reference Count : 1]<UL><LI> str71x.o(Reset)
</UL>
<P><STRONG><a name="[11ab690]"></a>__main</STRONG> (ARM, 8 bytes, Stack size 0 bytes, __main.o(!!!main))
<BR><BR>[Stack]<UL><LI>Max Depth = 64 + Unknown Stack Size
<LI>Call Chain = __main -> __rt_entry -> __rt_lib_init -> _fp_init</UL>
<BR>[Calls]<UL><LI><a href="#[11aad00]">>></a> __rt_entry
<LI><a href="#[11bca38]">>></a> __scatterload
</UL>
<P><STRONG><a name="[11bca38]"></a>__scatterload</STRONG> (ARM, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter))
<BR><BR>[Called By]<UL><LI><a href="#[11ab690]"><<</a> __main
</UL>
<P><STRONG><a name="[11bc968]"></a>__scatterload_rt2</STRONG> (ARM, 48 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[11aad00]">>></a> __rt_entry
</UL>
<P><STRONG><a name="[11bc9b8]"></a>__scatterload_null</STRONG> (ARM, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
<P><STRONG><a name="[11bc484]"></a>__scatterload_copy</STRONG> (ARM, 40 bytes, Stack size unknown bytes, __scatter_copy.o(!!handler_copy), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[11bc484]">>></a> __scatterload_copy
</UL>
<BR>[Called By]<UL><LI><a href="#[11bc484]"><<</a> __scatterload_copy
</UL>
<P><STRONG><a name="[11bc034]"></a>__scatterload_zeroinit</STRONG> (ARM, 44 bytes, Stack size unknown bytes, __scatter_zi.o(!!handler_zi), UNUSED)
<P><STRONG><a name="[11a2710]"></a>__ARM_argv_veneer</STRONG> (ARM, 16 bytes, Stack size 0 bytes, lib_init.o(.emb_text))
<BR><BR>[Called By]<UL><LI><a href="#[11a2644]"><<</a> __rt_lib_init (via Veneer)
</UL>
<P><STRONG><a name="[ce26d0]"></a>Interrupts_init</STRONG> (Thumb, 64 bytes, Stack size 0 bytes, main.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[ce25e4]"><<</a> init
</UL>
<P><STRONG><a name="[ce2658]"></a>LED_A_flash</STRONG> (Thumb, 380 bytes, Stack size 3192 bytes, main.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 3260 + Unknown Stack Size
<LI>Call Chain = LED_A_flash -> WriteDataToFlash -> MainMemoryPageToBuffer1 -> AT45_Read_REG -> BPSI_DataSendReceive</UL>
<BR>[Calls]<UL><LI><a href="#[ce1a84]">>></a> read_byte_from_UARTbuf
<LI><a href="#[ce1b08]">>></a> query_rxdbuf_received_byte
<LI><a href="#[ce1e7c]">>></a> WritePageData
<LI><a href="#[ce1ef8]">>></a> WriteMultiByteToMainMemory
<LI><a href="#[ce1f80]">>></a> WriteDataToFlash
<LI><a href="#[ce2000]">>></a> UART_send_mbytes
<LI><a href="#[ce20f8]">>></a> ReadPageData
<LI><a href="#[ce2174]">>></a> ReadMultiByteFromMainMemory
<LI><a href="#[ce21fc]">>></a> ReadDataFromFlash
<LI><a href="#[ce23f8]">>></a> ErasePage
<LI><a href="#[ce2470]">>></a> Discard_nbyte_rxdbuf
<LI><a href="#[11af854]">>></a> __aeabi_memclr4 (via Veneer)
<LI><a href="#[11f2414]">>></a> os_dly_wait
</UL>
<BR>[Address Reference Count : 1]<UL><LI> main.o(.text)
</UL>
<P><STRONG><a name="[ce25e4]"></a>init</STRONG> (Thumb, 170 bytes, Stack size 16 bytes, main.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 128 + Unknown Stack Size
<LI>Call Chain = init -> UART_open -> UART_Config -> UART_BaudRateConfig -> RCCU_FrequencyValue</UL>
<BR>[Calls]<UL><LI><a href="#[ce1d84]">>></a> initAT45DB161
<LI><a href="#[ce2080]">>></a> UART_open
<LI><a href="#[ce24f4]">>></a> Detect_AT45DB
<LI><a href="#[ce26d0]">>></a> Interrupts_init
<LI><a href="#[11d46c0]">>></a> RCCU_RCLKSourceConfig (via Veneer)
<LI><a href="#[11d4810]">>></a> RCCU_PLL1Config (via Veneer)
<LI><a href="#[11fd198]">>></a> os_tsk_delete
<LI><a href="#[11fd26c]">>></a> os_tsk_create_user
</UL>
<BR>[Address Reference Count : 1]<UL><LI> main.o(.text)
</UL>
<P><STRONG><a name="[ce2570]"></a>main</STRONG> (Thumb, 22 bytes, Stack size 8 bytes, main.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 104 + Unknown Stack Size
<LI>Call Chain = main -> os_sys_init_user -> os_tsk_create_user -> os_init_context</UL>
<BR>[Calls]<UL><LI><a href="#[11fd2bc]">>></a> os_sys_init_user
</UL>
<BR>[Address Reference Count : 1]<UL><LI> kernel.o(.text)
</UL>
<P><STRONG><a name="[ce274c]"></a>IRQ_UART0_RXD</STRONG> (ARM, 40 bytes, Stack size 24 bytes, main.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = IRQ_UART0_RXD -> ISR_RXD_read</UL>
<BR>[Calls]<UL><LI><a href="#[ce237c]">>></a> ISR_RXD_read (via Veneer)
</UL>
<BR>[Address Reference Count : 1]<UL><LI> main.o(.text)
</UL>
<P><STRONG><a name="[dc3264]"></a>_sys_exit</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, retarget.o(.text), UNUSED)
<BR><BR>[Called By]<UL><LI><a href="#[11a2ff8]"><<</a> __ARM_stackcheck_2region_sc_ss
<LI><a href="#[11a3084]"><<</a> __rt_stackheap_init_2region_sc_ss
<LI><a href="#[11a3114]"><<</a> __use_two_region_memory_sc_ss
<LI><a href="#[11a3888]"><<</a> __ARM_stackcheck_2region_sc
<LI><a href="#[11a3910]"><<</a> __rt_stackheap_init_2region_sc
<LI><a href="#[11a399c]"><<</a> __use_two_region_memory_sc
<LI><a href="#[11a41d8]"><<</a> __ARM_stackcheck_sc_ss
<LI><a href="#[11a425c]"><<</a> __rt_stackheap_init_sc_ss
<LI><a href="#[11a4b00]"><<</a> __ARM_stackcheck_sc
<LI><a href="#[11a4c00]"><<</a> __rt_stackheap_init_sc
<LI><a href="#[11aab40]"><<</a> __rt_abort (via Veneer)
<LI><a href="#[12be960]"><<</a> __sig_exit
<LI><a href="#[12c0520]"><<</a> __rt_raise
</UL>
<P><STRONG><a name="[dbdc0c]"></a>os_idle_demon</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, rtx_config.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[11fd2bc]"><<</a> os_sys_init_user
</UL>
<BR>[Address Reference Count : 1]<UL><LI> rt_task.o(i.os_sys_init_user)
</UL>
<P><STRONG><a name="[dbda94]"></a>os_tmr_call</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, rtx_config.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[122d9f0]"><<</a> os_tmr_tick
</UL>
<P><STRONG><a name="[dbda14]"></a>os_clock_interrupt0</STRONG> (Thumb, 100 bytes, Stack size 8 bytes, rtx_config.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = os_clock_interrupt0</UL>
<BR>[Calls]<UL><LI><a href="#[1208374]">>></a> os_put_rdy_first
</UL>
<BR>[Address Reference Count : 1]<UL><LI> IRQ_RTX.o(IRQ_Area)
</UL>
<P><STRONG><a name="[dbd99c]"></a>os_tmr_init</STRONG> (Thumb, 56 bytes, Stack size 0 bytes, rtx_config.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[11fd2bc]"><<</a> os_sys_init_user
</UL>
<P><STRONG><a name="[dbd920]"></a>os_tmr_reload</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, rtx_config.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[11c1998]"><<</a> os_clock_demon
</UL>
<P><STRONG><a name="[dbd8a0]"></a>os_tmr_inspect_cnt</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, rtx_config.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[11c1920]"><<</a> os_psh_req
<LI><a href="#[11c1998]"><<</a> os_clock_demon
</UL>
<P><STRONG><a name="[dbd82c]"></a>__SWI_7</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, rtx_config.o(.text))
<BR>[Address Reference Count : 1]<UL><LI> SWI_Table.o(SWI_TABLE)
</UL>
<P><STRONG><a name="[dbd7b4]"></a>tsk_lock</STRONG> (Thumb, 10 bytes, Stack size 8 bytes, rtx_config.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = tsk_lock</UL>
<BR>[Called By]<UL><LI><a href="#[11ce718]"><<</a> os_mut_wait
<LI><a href="#[11ce768]"><<</a> os_mut_release
<LI><a href="#[11ce7b8]"><<</a> os_mut_init
<LI><a href="#[11f2324]"><<</a> os_itv_wait
<LI><a href="#[11f2414]"><<</a> os_dly_wait
<LI><a href="#[11fd0a8]"><<</a> os_tsk_prio
<LI><a href="#[11fd120]"><<</a> os_tsk_pass
<LI><a href="#[11fd198]"><<</a> os_tsk_delete
<LI><a href="#[11fd1e8]"><<</a> os_tsk_create_user_ex
<LI><a href="#[11fd26c]"><<</a> os_tsk_create_user
<LI><a href="#[11fd2bc]"><<</a> os_sys_init_user
<LI><a href="#[121220c]"><<</a> os_sem_wait
<LI><a href="#[1212284]"><<</a> os_sem_send
<LI><a href="#[121234c]"><<</a> os_sem_init
<LI><a href="#[121859c]"><<</a> os_mbx_wait
<LI><a href="#[1218614]"><<</a> os_mbx_send
<LI><a href="#[12186dc]"><<</a> os_mbx_init
<LI><a href="#[121e514]"><<</a> os_evt_wait
<LI><a href="#[121e58c]"><<</a> os_evt_set
<LI><a href="#[121e6cc]"><<</a> os_evt_clr
<LI><a href="#[122da40]"><<</a> os_tmr_kill
<LI><a href="#[122dab8]"><<</a> os_tmr_create
</UL>
<P><STRONG><a name="[dbd73c]"></a>tsk_unlock</STRONG> (Thumb, 18 bytes, Stack size 0 bytes, rtx_config.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[11ce718]"><<</a> os_mut_wait
<LI><a href="#[11ce768]"><<</a> os_mut_release
<LI><a href="#[11ce7b8]"><<</a> os_mut_init
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -