⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 spiflash.htm

📁 Keil-At91sam7S64-SPI Flash AT45D081
💻 HTM
📖 第 1 页 / 共 4 页
字号:
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html><head>
<title>Static Call Graph - [F:\KEIL_ARM\SPIFlash\SPIFLASH.axf]</title></head>
<body><HR>
<H1>Static Call Graph for image F:\KEIL_ARM\SPIFlash\SPIFLASH.axf</H1><HR>
<BR><P>#&#060CALLGRAPH&#062# ARM Linker, RVCT3.0 [Build 942]: Last Updated: Mon Sep 11 20:44:27 2006
<BR><P>
<H3>Maximum Stack Usage =        312 bytes + Unknown(Functions without stacksize,Cycles,Untraceable Function Pointers)</H3><H3>
Call chain for Maximum Stack Depth:</H3>
main -> __0sprintf -> _printf_char_common -> __printf -> _printf_longlong_hex -> _printf_int_common<P>
<H3>
Functions with no stack information
</H3><UL>
 <LI><a href="#[b48474]">Reset_Handler</a>
 <LI><a href="#[1021400]">__scatterload</a>
 <LI><a href="#[1021330]">__scatterload_rt2</a>
 <LI><a href="#[1021380]">__scatterload_null</a>
 <LI><a href="#[1020afc]">__scatterload_copy</a>
 <LI><a href="#[1020544]">__scatterload_zeroinit</a>
 <LI><a href="#[b482f4]">__user_initial_stackheap</a>
 <LI><a href="#[100514c]">__ARM_call_via_r0</a>
 <LI><a href="#[10051cc]">__call_via_r0</a>
 <LI><a href="#[1005080]">__ARM_call_via_r1</a>
 <LI><a href="#[10050d0]">__call_via_r1</a>
 <LI><a href="#[1004fb4]">__ARM_call_via_r2</a>
 <LI><a href="#[1005004]">__call_via_r2</a>
 <LI><a href="#[1004ee8]">__ARM_call_via_r3</a>
 <LI><a href="#[1004f38]">__call_via_r3</a>
 <LI><a href="#[1004dec]">__ARM_call_via_r4</a>
 <LI><a href="#[1004e6c]">__call_via_r4</a>
 <LI><a href="#[1004cf0]">__ARM_call_via_r5</a>
 <LI><a href="#[1004d70]">__call_via_r5</a>
 <LI><a href="#[1004bf4]">__ARM_call_via_r6</a>
 <LI><a href="#[1004c74]">__call_via_r6</a>
 <LI><a href="#[1004af8]">__ARM_call_via_r7</a>
 <LI><a href="#[1004b78]">__call_via_r7</a>
 <LI><a href="#[102f1d4]">__fplib_config_pureend_doubles</a>
 <LI><a href="#[b48a64]">Undef_Handler</a>
 <LI><a href="#[b489ec]">SWI_Handler</a>
 <LI><a href="#[b48970]">PAbt_Handler</a>
 <LI><a href="#[b488f4]">DAbt_Handler</a>
 <LI><a href="#[b4887c]">IRQ_Handler</a>
 <LI><a href="#[b48804]">FIQ_Handler</a>
 <LI><a href="#[be9d7c]">__arm_div8</a>
 <LI><a href="#[be9df4]">__arm_div4</a>
 <LI><a href="#[be9d00]">__arm_div_large</a>
</UL>
<P>
<H3>
Mutually Recursive functions
</H3><UL>
 <LI><a href="#[b48a64]">Undef_Handler</a>&nbsp;&nbsp;&nbsp;->&nbsp;&nbsp;&nbsp;<a href="#[b48a64]">Undef_Handler</a><BR>
 <LI><a href="#[b489ec]">SWI_Handler</a>&nbsp;&nbsp;&nbsp;->&nbsp;&nbsp;&nbsp;<a href="#[b489ec]">SWI_Handler</a><BR>
 <LI><a href="#[b48970]">PAbt_Handler</a>&nbsp;&nbsp;&nbsp;->&nbsp;&nbsp;&nbsp;<a href="#[b48970]">PAbt_Handler</a><BR>
 <LI><a href="#[b488f4]">DAbt_Handler</a>&nbsp;&nbsp;&nbsp;->&nbsp;&nbsp;&nbsp;<a href="#[b488f4]">DAbt_Handler</a><BR>
 <LI><a href="#[b4887c]">IRQ_Handler</a>&nbsp;&nbsp;&nbsp;->&nbsp;&nbsp;&nbsp;<a href="#[b4887c]">IRQ_Handler</a><BR>
 <LI><a href="#[b48804]">FIQ_Handler</a>&nbsp;&nbsp;&nbsp;->&nbsp;&nbsp;&nbsp;<a href="#[b48804]">FIQ_Handler</a><BR>
</UL>
<BR>
<P><STRONG><a name="[b48474]"></a>Reset_Handler</STRONG> (ARM, 0 bytes, Stack size unknown bytes, sam7.o(RESET))
<BR>[Address Reference Count : 1]<UL><LI> sam7.o(RESET)
</UL>
<P><STRONG><a name="[be7468]"></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="#[be6958]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_entry
<LI><a href="#[1021400]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__scatterload
</UL>

<P><STRONG><a name="[1021400]"></a>__scatterload</STRONG> (ARM, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter))
<BR><BR>[Called By]<UL><LI><a href="#[be7468]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;__main
</UL>

<P><STRONG><a name="[1021330]"></a>__scatterload_rt2</STRONG> (ARM, 48 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[be6958]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_entry
</UL>

<P><STRONG><a name="[1021380]"></a>__scatterload_null</STRONG> (ARM, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)

<P><STRONG><a name="[1020afc]"></a>__scatterload_copy</STRONG> (ARM, 40 bytes, Stack size unknown bytes, __scatter_copy.o(!!handler_copy), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[1020afc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__scatterload_copy
</UL>
<BR>[Called By]<UL><LI><a href="#[1020afc]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;__scatterload_copy
</UL>

<P><STRONG><a name="[1020544]"></a>__scatterload_zeroinit</STRONG> (ARM, 44 bytes, Stack size unknown bytes, __scatter_zi.o(!!handler_zi), UNUSED)

<P><STRONG><a name="[1007f60]"></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="#[1007e94]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;__rt_lib_init (via Veneer)
</UL>

<P><STRONG><a name="[b482f4]"></a>__user_initial_stackheap</STRONG> (ARM, 0 bytes, Stack size unknown bytes, sam7.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[be5e6c]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;__user_setup_stackheap
</UL>

<P><STRONG><a name="[b41b7c]"></a>Init_Debug</STRONG> (ARM, 344 bytes, Stack size 8 bytes, main.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 8 + Unknown Stack Size
<LI>Call Chain = Init_Debug</UL>
<BR>[Calls]<UL><LI><a href="#[be9818]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_uidivmod
</UL>
<BR>[Called By]<UL><LI><a href="#[b41924]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;main
</UL>

<P><STRONG><a name="[b41afc]"></a>AT91F_DBGU_Printk</STRONG> (ARM, 64 bytes, Stack size 0 bytes, main.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[b41924]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;main
</UL>

<P><STRONG><a name="[b41a84]"></a>system_int</STRONG> (ARM, 116 bytes, Stack size 32 bytes, main.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[be9818]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_uidivmod
</UL>

<P><STRONG><a name="[b41a0c]"></a>init_timer</STRONG> (ARM, 44 bytes, Stack size 0 bytes, main.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[b41924]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;main
</UL>

<P><STRONG><a name="[b41998]"></a>wait</STRONG> (ARM, 36 bytes, Stack size 0 bytes, main.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[b41924]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;main
</UL>

<P><STRONG><a name="[b41924]"></a>main</STRONG> (ARM, 396 bytes, Stack size 16 bytes, main.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 312 + Unknown Stack Size
<LI>Call Chain = main -> __0sprintf -> _printf_char_common -> __printf -> _printf_longlong_hex -> _printf_int_common</UL>
<BR>[Calls]<UL><LI><a href="#[b417a4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;WriteSPIflash
<LI><a href="#[b41820]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ReadSPIflash
<LI><a href="#[b4189c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;AT91F_CfgSPIForDataFlash
<LI><a href="#[b41998]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;wait
<LI><a href="#[b41a0c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;init_timer
<LI><a href="#[b41afc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;AT91F_DBGU_Printk
<LI><a href="#[b41b7c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Init_Debug
<LI><a href="#[bea568]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__0sprintf (via Veneer)
</UL>
<BR>[Address Reference Count : 1]<UL><LI> kernel.o(.text)
</UL>
<P><STRONG><a name="[c0f3d8]"></a>AT91F_DataFlashGetStatus</STRONG> (ARM, 108 bytes, Stack size 4 bytes, dataflash.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = AT91F_DataFlashGetStatus</UL>
<BR>[Calls]<UL><LI><a href="#[c10730]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;AT91F_SpiWrite
</UL>
<BR>[Called By]<UL><LI><a href="#[c0f030]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;AT91F_DataFlashWaitReady
</UL>

<P><STRONG><a name="[c0f354]"></a>AT91F_DataFlashHandler</STRONG> (ARM, 108 bytes, Stack size 0 bytes, dataflash.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c0f030]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;AT91F_DataFlashWaitReady
</UL>

<P><STRONG><a name="[c0f2cc]"></a>AT91F_DataFlashSendCommand</STRONG> (ARM, 244 bytes, Stack size 32 bytes, dataflash.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 32 + Unknown Stack Size
<LI>Call Chain = AT91F_DataFlashSendCommand</UL>
<BR>[Calls]<UL><LI><a href="#[be9818]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_uidivmod
<LI><a href="#[c10730]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;AT91F_SpiWrite
</UL>
<BR>[Called By]<UL><LI><a href="#[c0f0b8]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;AT91F_DataFlashBufWR
<LI><a href="#[c0f13c]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;AT91F_DataFlashPagePgmBuf
<LI><a href="#[c0f1c4]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;AT91F_DataFlashPageRead
</UL>

<P><STRONG><a name="[c0f248]"></a>AT91F_DataFlashSendCom</STRONG> (ARM, 236 bytes, Stack size 24 bytes, dataflash.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[be9818]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_uidivmod
<LI><a href="#[c10730]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;AT91F_SpiWrite
</UL>
<BR>[Called By]<UL><LI><a href="#[c0ee30]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;AT91F_SPIflash_WR_BUffer
</UL>

<P><STRONG><a name="[c0f1c4]"></a>AT91F_DataFlashPageRead</STRONG> (ARM, 80 bytes, Stack size 24 bytes, dataflash.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 56 + Unknown Stack Size
<LI>Call Chain = AT91F_DataFlashPageRead -> AT91F_DataFlashSendCommand</UL>
<BR>[Calls]<UL><LI><a href="#[c0f2cc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;AT91F_DataFlashSendCommand
</UL>
<BR>[Called By]<UL><LI><a href="#[b41820]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;ReadSPIflash
</UL>

<P><STRONG><a name="[c0f13c]"></a>AT91F_DataFlashPagePgmBuf</STRONG> (ARM, 84 bytes, Stack size 24 bytes, dataflash.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 56 + Unknown Stack Size
<LI>Call Chain = AT91F_DataFlashPagePgmBuf -> AT91F_DataFlashSendCommand</UL>
<BR>[Calls]<UL><LI><a href="#[c0f2cc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;AT91F_DataFlashSendCommand
</UL>
<BR>[Called By]<UL><LI><a href="#[b417a4]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;WriteSPIflash
</UL>

<P><STRONG><a name="[c0f0b8]"></a>AT91F_DataFlashBufWR</STRONG> (ARM, 100 bytes, Stack size 24 bytes, dataflash.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[c0f2cc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;AT91F_DataFlashSendCommand
</UL>
<BR>[Called By]<UL><LI><a href="#[c0ee30]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;AT91F_SPIflash_WR_BUffer
</UL>

<P><STRONG><a name="[c0f030]"></a>AT91F_DataFlashWaitReady</STRONG> (ARM, 188 bytes, Stack size 24 bytes, dataflash.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 28<LI>Call Chain = AT91F_DataFlashWaitReady -> AT91F_DataFlashGetStatus</UL>
<BR>[Calls]<UL><LI><a href="#[c0f354]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;AT91F_DataFlashHandler
<LI><a href="#[c0f3d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;AT91F_DataFlashGetStatus
</UL>
<BR>[Called By]<UL><LI><a href="#[b417a4]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;WriteSPIflash
<LI><a href="#[b41820]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;ReadSPIflash
<LI><a href="#[c0ee30]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;AT91F_SPIflash_WR_BUffer
<LI><a href="#[c0eeb8]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;AT91F_Test_AT45DCB
<LI><a href="#[c0ef38]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;AT91F_Test_AT45DB
<LI><a href="#[c0efb8]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;AT91F_AT45D
</UL>

<P><STRONG><a name="[c0efb8]"></a>AT91F_AT45D</STRONG> (ARM, 48 bytes, Stack size 8 bytes, dataflash.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 36<LI>Call Chain = AT91F_AT45D -> AT91F_DataFlashWaitReady -> AT91F_DataFlashGetStatus</UL>
<BR>[Calls]<UL><LI><a href="#[c0ecb0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;AT91F_SPI_CfgPCS

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -