?? rc531.htm
字號:
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html><head>
<title>Static Call Graph - [F:\arm_project\RC531\RC531.axf]</title></head>
<body><HR>
<H1>Static Call Graph for image F:\arm_project\RC531\RC531.axf</H1><HR>
<BR><P>#<CALLGRAPH># ARM Linker, RVCT3.1 [Build 919]: Last Updated: Fri Dec 26 17:18:43 2008
<BR><P>
<H3>Maximum Stack Usage = 256 bytes + Unknown(Functions without stacksize, Cycles, Untraceable Function Pointers)</H3><H3>
Call chain for Maximum Stack Depth:</H3>
main ⇒ Fine_Card ⇒ CascAnticoll ⇒ M500PiccCascAnticoll ⇒ M500PcdCmd ⇒ FlushFIFO ⇒ SetBitMask ⇒ ReadIO
<P>
<H3>
Functions with no stack information
</H3><UL>
<LI><a href="#[c833b0]">Reset_Handler</a>
<LI><a href="#[c833f8]">__user_initial_stackheap</a>
<LI><a href="#[c83680]">Undef_Handler</a>
<LI><a href="#[c83638]">SWI_Handler</a>
<LI><a href="#[c835f0]">PAbt_Handler</a>
<LI><a href="#[c835a8]">DAbt_Handler</a>
<LI><a href="#[c83560]">IRQ_Handler</a>
<LI><a href="#[c83518]">FIQ_Handler</a>
</UL>
</UL>
<P>
<H3>
Mutually Recursive functions
</H3> <LI><a href="#[c83680]">Undef_Handler</a> ⇒ <a href="#[c83680]">Undef_Handler</a><BR>
<LI><a href="#[c83638]">SWI_Handler</a> ⇒ <a href="#[c83638]">SWI_Handler</a><BR>
<LI><a href="#[c835f0]">PAbt_Handler</a> ⇒ <a href="#[c835f0]">PAbt_Handler</a><BR>
<LI><a href="#[c835a8]">DAbt_Handler</a> ⇒ <a href="#[c835a8]">DAbt_Handler</a><BR>
<LI><a href="#[c83560]">IRQ_Handler</a> ⇒ <a href="#[c83560]">IRQ_Handler</a><BR>
<LI><a href="#[c83518]">FIQ_Handler</a> ⇒ <a href="#[c83518]">FIQ_Handler</a><BR>
</UL>
<P>
<H3>
Function Pointers
</H3><UL>
<LI><a href="#[c833b0]">Reset_Handler</a>
<LI><a href="#[c83680]">Undef_Handler</a>
<LI><a href="#[c83638]">SWI_Handler</a>
<LI><a href="#[c835f0]">PAbt_Handler</a>
<LI><a href="#[c835a8]">DAbt_Handler</a>
<LI><a href="#[c83560]">IRQ_Handler</a>
<LI><a href="#[c83518]">FIQ_Handler</a>
<LI><a href="#[c7c398]">__main</a>
<LI><a href="#[c789e8]">__ARM_get_argv</a>
<LI><a href="#[c829d8]">main</a>
<LI><a href="#[c79750]">__I_use_semihosting</a>
</UL>
<P>
<H3>
Global Symbols
</H3>
<P><STRONG><a name="[c833b0]"></a>Reset_Handler</STRONG> (ARM, 0 bytes, Stack size unknown bytes, startup.o(RESET))
<BR>[Address Reference Count : 1]<UL><LI> startup.o(RESET)
</UL>
<P><STRONG><a name="[c7c398]"></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="#[c76280]">>></a> __scatterload
<LI><a href="#[c7c0d8]">>></a> __rt_entry
</UL>
<P><STRONG><a name="[c76280]"></a>__scatterload</STRONG> (ARM, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter))
<BR><BR>[Called By]<UL><LI><a href="#[c7c398]">>></a> __main
</UL>
<P><STRONG><a name="[c76238]"></a>__scatterload_rt2</STRONG> (ARM, 52 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[c7c0d8]">>></a> __rt_entry
</UL>
<P><STRONG><a name="[c761f0]"></a>__scatterload_null</STRONG> (ARM, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
<P><STRONG><a name="[c75fb0]"></a>__scatterload_copy</STRONG> (ARM, 40 bytes, Stack size unknown bytes, __scatter_copy.o(!!handler_copy), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[c75fb0]">>></a> __scatterload_copy
</UL>
<BR>[Called By]<UL><LI><a href="#[c75fb0]">>></a> __scatterload_copy
</UL>
<P><STRONG><a name="[c75e48]"></a>__scatterload_zeroinit</STRONG> (ARM, 44 bytes, Stack size unknown bytes, __scatter_zi.o(!!handler_zi), UNUSED)
<P><STRONG><a name="[c7a6a0]"></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="#[c7a610]">>></a> __rt_lib_init (via Veneer)
</UL>
<P><STRONG><a name="[c833f8]"></a>__user_initial_stackheap</STRONG> (ARM, 0 bytes, Stack size unknown bytes, startup.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c7bab0]">>></a> __user_setup_stackheap
</UL>
<P><STRONG><a name="[c82a68]"></a>DelayNS</STRONG> (ARM, 40 bytes, Stack size 0 bytes, main.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c829d8]">>></a> main
<LI><a href="#[c82a20]">>></a> SysInit
</UL>
<P><STRONG><a name="[c82a20]"></a>SysInit</STRONG> (ARM, 136 bytes, Stack size 8 bytes, main.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 88 + Unknown Stack Size
<LI>Call Chain = SysInit ⇒ Rc500Init ⇒ MfConfig ⇒ M500PcdConfig ⇒ M500PcdRfReset ⇒ ClearBitMask ⇒ ReadIO
</UL>
<BR>[Calls]<UL><LI><a href="#[c82750]">>></a> Uart1_Init
<LI><a href="#[c82798]">>></a> SpkOnTime
<LI><a href="#[c827e0]">>></a> SPI0Init
<LI><a href="#[c82870]">>></a> Rc500Init
<LI><a href="#[c82900]">>></a> InitSpk
<LI><a href="#[c82a68]">>></a> DelayNS
</UL>
<BR>[Called By]<UL><LI><a href="#[c829d8]">>></a> main
</UL>
<P><STRONG><a name="[c829d8]"></a>main</STRONG> (ARM, 256 bytes, Stack size 80 bytes, main.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 256 + Unknown Stack Size
<LI>Call Chain = main ⇒ Fine_Card ⇒ CascAnticoll ⇒ M500PiccCascAnticoll ⇒ M500PcdCmd ⇒ FlushFIFO ⇒ SetBitMask ⇒ ReadIO
</UL>
<BR>[Calls]<UL><LI><a href="#[c82678]">>></a> WriteCard
<LI><a href="#[c826c0]">>></a> Uart1_SendStr
<LI><a href="#[c82708]">>></a> Uart1_SendByte
<LI><a href="#[c82798]">>></a> SpkOnTime
<LI><a href="#[c82828]">>></a> ReadCard
<LI><a href="#[c828b8]">>></a> M500PiccHalt
<LI><a href="#[c82948]">>></a> Fine_Card
<LI><a href="#[c82990]">>></a> DownloadPassWord2
<LI><a href="#[c82a20]">>></a> SysInit
<LI><a href="#[c82a68]">>></a> DelayNS
</UL>
<BR>[Address Reference Count : 1]<UL><LI> kernel.o(.text)
</UL>
<P><STRONG><a name="[c82798]"></a>SpkOnTime</STRONG> (ARM, 124 bytes, Stack size 0 bytes, spk.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c829d8]">>></a> main
<LI><a href="#[c82a20]">>></a> SysInit
</UL>
<P><STRONG><a name="[c82900]"></a>InitSpk</STRONG> (ARM, 76 bytes, Stack size 0 bytes, spk.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c82a20]">>></a> SysInit
</UL>
<P><STRONG><a name="[c813a0]"></a>UART1_Exception</STRONG> (ARM, 344 bytes, Stack size 20 bytes, uart1.o(.text), UNUSED)
<P><STRONG><a name="[c82708]"></a>Uart1_SendByte</STRONG> (ARM, 44 bytes, Stack size 0 bytes, uart1.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c829d8]">>></a> main
</UL>
<P><STRONG><a name="[c826c0]"></a>Uart1_SendStr</STRONG> (ARM, 72 bytes, Stack size 0 bytes, uart1.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c829d8]">>></a> main
</UL>
<P><STRONG><a name="[c81358]"></a>Uart1_ReadByte</STRONG> (ARM, 268 bytes, Stack size 8 bytes, uart1.o(.text), UNUSED)
<BR><BR>[Called By]<UL><LI><a href="#[c81310]">>></a> Uart1_ReadStr
</UL>
<P><STRONG><a name="[c81310]"></a>Uart1_ReadStr</STRONG> (ARM, 92 bytes, Stack size 20 bytes, uart1.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[c81358]">>></a> Uart1_ReadByte
</UL>
<P><STRONG><a name="[c812c8]"></a>Uart1_CheckBuff</STRONG> (ARM, 12 bytes, Stack size 0 bytes, uart1.o(.text), UNUSED)
<P><STRONG><a name="[c81280]"></a>Uart1_ClearBuff</STRONG> (ARM, 40 bytes, Stack size 0 bytes, uart1.o(.text), UNUSED)
<P><STRONG><a name="[c82750]"></a>Uart1_Init</STRONG> (ARM, 356 bytes, Stack size 24 bytes, uart1.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 24 + Unknown Stack Size
<LI>Call Chain = Uart1_Init
</UL>
<BR>[Calls]<UL><LI><a href="#[c7d2d0]">>></a> __aeabi_uidivmod
</UL>
<BR>[Called By]<UL><LI><a href="#[c82a20]">>></a> SysInit
</UL>
<P><STRONG><a name="[c803e0]"></a>delay_1ms</STRONG> (ARM, 40 bytes, Stack size 0 bytes, rc500.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c7fdf8]">>></a> M500PiccAuthState
<LI><a href="#[c80038]">>></a> M500PcdRfReset
<LI><a href="#[c80080]">>></a> M500PcdReset
</UL>
<P><STRONG><a name="[c80398]"></a>delay_50us</STRONG> (ARM, 44 bytes, Stack size 0 bytes, rc500.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c7fff0]">>></a> M500PcdConfig
<LI><a href="#[c80080]">>></a> M500PcdReset
</UL>
<P><STRONG><a name="[c80350]"></a>ReadRawIO</STRONG> (ARM, 92 bytes, Stack size 16 bytes, rc500.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[c7f738]">>></a> SPI_SendByte
<LI><a href="#[c7f780]">>></a> SPI_RecByte
</UL>
<BR>[Called By]<UL><LI><a href="#[c7f810]">>></a> IRQ_Eint0
</UL>
<P><STRONG><a name="[c80308]"></a>WriteRawIO</STRONG> (ARM, 80 bytes, Stack size 16 bytes, rc500.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[c7f738]">>></a> SPI_SendByte
</UL>
<BR>[Called By]<UL><LI><a href="#[c7f810]">>></a> IRQ_Eint0
</UL>
<P><STRONG><a name="[c802c0]"></a>WriteIO</STRONG> (ARM, 136 bytes, Stack size 16 bytes, rc500.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = WriteIO
</UL>
<BR>[Calls]<UL><LI><a href="#[c7f738]">>></a> SPI_SendByte
</UL>
<BR>[Called By]<UL><LI><a href="#[c7f810]">>></a> IRQ_Eint0
<LI><a href="#[c7fa50]">>></a> PiccCMD14443_4
<LI><a href="#[c7fb28]">>></a> M500PiccRead
<LI><a href="#[c7fe40]">>></a> M500PiccCascSelect
<LI><a href="#[c7fe88]">>></a> M500PiccCascAnticoll
<LI><a href="#[c7fed0]">>></a> M500PiccCommonRequest
<LI><a href="#[c7ff18]">>></a> M500PcdSetTmo
<LI><a href="#[c7ffa8]">>></a> M500PcdMfOutSelect
<LI><a href="#[c7fff0]">>></a> M500PcdConfig
<LI><a href="#[c80038]">>></a> M500PcdRfReset
<LI><a href="#[c800c8]">>></a> M500PcdCmd
<LI><a href="#[c80158]">>></a> ClearBitMask
<LI><a href="#[c801a0]">>></a> SetBitMask
<LI><a href="#[c828b8]">>></a> M500PiccHalt
</UL>
<P><STRONG><a name="[c80278]"></a>ReadIO</STRONG> (ARM, 148 bytes, Stack size 16 bytes, rc500.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = ReadIO
</UL>
<BR>[Calls]<UL><LI><a href="#[c7f738]">>></a> SPI_SendByte
<LI><a href="#[c7f780]">>></a> SPI_RecByte
</UL>
<BR>[Called By]<UL><LI><a href="#[c7fdf8]">>></a> M500PiccAuthState
<LI><a href="#[c80080]">>></a> M500PcdReset
<LI><a href="#[c800c8]">>></a> M500PcdCmd
<LI><a href="#[c80158]">>></a> ClearBitMask
<LI><a href="#[c801a0]">>></a> SetBitMask
</UL>
<P><STRONG><a name="[c80230]"></a>RFRegWrite</STRONG> (ARM, 136 bytes, Stack size 16 bytes, rc500.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[c7f738]">>></a> SPI_SendByte
</UL>
<P><STRONG><a name="[c801e8]"></a>RFRegRead</STRONG> (ARM, 148 bytes, Stack size 16 bytes, rc500.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[c7f738]">>></a> SPI_SendByte
<LI><a href="#[c7f780]">>></a> SPI_RecByte
</UL>
<P><STRONG><a name="[c801a0]"></a>SetBitMask</STRONG> (ARM, 52 bytes, Stack size 16 bytes, rc500.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = SetBitMask ⇒ ReadIO
</UL>
<BR>[Calls]<UL><LI><a href="#[c80278]">>></a> ReadIO
<LI><a href="#[c802c0]">>></a> WriteIO
</UL>
<BR>[Called By]<UL><LI><a href="#[c7fed0]">>></a> M500PiccCommonRequest
<LI><a href="#[c80038]">>></a> M500PcdRfReset
<LI><a href="#[c800c8]">>></a> M500PcdCmd
<LI><a href="#[c80110]">>></a> FlushFIFO
</UL>
<P><STRONG><a name="[c80158]"></a>ClearBitMask</STRONG> (ARM, 52 bytes, Stack size 16 bytes, rc500.o(.text))
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -