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

📄 usb_test.htm

📁 应用C语言实现在ARM微处理器上USB接口的驱动和实现 数据通信
💻 HTM
📖 第 1 页 / 共 5 页
字号:
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html><head>
<title>Static Call Graph - [.\obj\usb_test.axf]</title></head>
<body><HR>
<H1>Static Call Graph for image .\obj\usb_test.axf</H1><HR>
<BR><P>#&#060CALLGRAPH&#062# ARM Linker, RVCT3.1 [Build 903]: Last Updated: Sat Nov 08 17:35:33 2008
<BR><P>
<H3>Maximum Stack Usage =        984 bytes + Unknown(Functions without stacksize, Cycles, Untraceable Function Pointers)</H3><H3>
Call chain for Maximum Stack Depth:</H3>
main &rArr; usb_test &rArr; WaitDownload &rArr; Menu &rArr;  Menu (Cycle)
<P>
<H3>
Functions with no stack information
</H3><UL>
 <LI><a href="#[c83350]">Reset_Handler</a>
 <LI><a href="#[c83398]">__user_initial_stackheap</a>
 <LI><a href="#[c83620]">Undef_Handler</a>
 <LI><a href="#[c835d8]">SWI_Handler</a>
 <LI><a href="#[c83590]">PAbt_Handler</a>
 <LI><a href="#[c83548]">DAbt_Handler</a>
 <LI><a href="#[c83500]">IRQ_Handler</a>
 <LI><a href="#[c834b8]">FIQ_Handler</a>
</UL>
</UL>
<P>
<H3>
Mutually Recursive functions
</H3> <LI><a href="#[c7dfc8]">Menu</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[c7dfc8]">Menu</a><BR>
 <LI><a href="#[c83620]">Undef_Handler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[c83620]">Undef_Handler</a><BR>
 <LI><a href="#[c835d8]">SWI_Handler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[c835d8]">SWI_Handler</a><BR>
 <LI><a href="#[c83590]">PAbt_Handler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[c83590]">PAbt_Handler</a><BR>
 <LI><a href="#[c83548]">DAbt_Handler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[c83548]">DAbt_Handler</a><BR>
 <LI><a href="#[c834b8]">FIQ_Handler</a>&nbsp;&nbsp;&nbsp;&rArr;&nbsp;&nbsp;&nbsp;<a href="#[c834b8]">FIQ_Handler</a><BR>
</UL>
<P>
<H3>
Function Pointers
</H3><UL>
 <LI><a href="#[c83350]">Reset_Handler</a>
 <LI><a href="#[c83620]">Undef_Handler</a>
 <LI><a href="#[c835d8]">SWI_Handler</a>
 <LI><a href="#[c83590]">PAbt_Handler</a>
 <LI><a href="#[c83548]">DAbt_Handler</a>
 <LI><a href="#[c83500]">IRQ_Handler</a>
 <LI><a href="#[c834b8]">FIQ_Handler</a>
 <LI><a href="#[108da38]">__main</a>
 <LI><a href="#[1081858]">__ARM_get_argv</a>
 <LI><a href="#[c7dbd8]">debug_undef</a>
 <LI><a href="#[c7dc20]">debug_swi</a>
 <LI><a href="#[c7dc68]">debug_abort_d</a>
 <LI><a href="#[c7ddd0]">IsrUsbd</a>
 <LI><a href="#[c7de18]">IsrDma2</a>
 <LI><a href="#[1087d90]">_get_lc_ctype</a>
 <LI><a href="#[1088208]">_sputc</a>
 <LI><a href="#[c81908]">main</a>
 <LI><a href="#[1085b88]">_printf_outstr_char</a>
 <LI><a href="#[1085a10]">_printf_input_char</a>
 <LI><a href="#[10838b0]">__I_use_semihosting</a>
</UL>
<P>
<H3>
Global Symbols
</H3>
<P><STRONG><a name="[c83350]"></a>Reset_Handler</STRONG> (ARM, 0 bytes, Stack size unknown bytes, s3c2410a.o(RESET))
<BR>[Address Reference Count : 1]<UL><LI> s3c2410a.o(RESET)
</UL>
<P><STRONG><a name="[108da38]"></a>__main</STRONG> (ARM, 8 bytes, Stack size 0 bytes, __main.o(!!!main))
<BR><BR>[Stack]<UL><LI>Max Depth = 68 + Unknown Stack Size
<LI>Call Chain = __main &rArr; __rt_entry &rArr; __rt_lib_init &rArr; _get_lc_numeric &rArr; strcmp
</UL>
<BR>[Calls]<UL><LI><a href="#[108b768]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_entry
<LI><a href="#[11a3958]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__scatterload
</UL>

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

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

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

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

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

<P><STRONG><a name="[1084e80]"></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="#[1084df0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_lib_init (via Veneer)
</UL>

<P><STRONG><a name="[c83398]"></a>__user_initial_stackheap</STRONG> (ARM, 0 bytes, Stack size unknown bytes, s3c2410a.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[108b140]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__user_setup_stackheap
</UL>

<P><STRONG><a name="[c81908]"></a>main</STRONG> (ARM, 32 bytes, Stack size 16 bytes, main.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 984 + Unknown Stack Size
<LI>Call Chain = main &rArr; usb_test &rArr; WaitDownload &rArr; Menu &rArr;  Menu (Cycle)
</UL>
<BR>[Calls]<UL><LI><a href="#[c81878]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;usb_test
<LI><a href="#[c818c0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;sys_init
</UL>
<BR>[Address Reference Count : 1]<UL><LI> kernel.o(.text)
</UL>
<P><STRONG><a name="[c801b0]"></a>wdt_int</STRONG> (ARM, 56 bytes, Stack size 8 bytes, profile.o(.text), UNUSED)

<P><STRONG><a name="[c80168]"></a>timer_initex</STRONG> (ARM, 68 bytes, Stack size 0 bytes, profile.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c7df80]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;WaitDownload
</UL>

<P><STRONG><a name="[c80120]"></a>timer_startex</STRONG> (ARM, 36 bytes, Stack size 0 bytes, profile.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c7df80]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;WaitDownload
</UL>

<P><STRONG><a name="[c800d8]"></a>timer_stopex</STRONG> (ARM, 128 bytes, Stack size 32 bytes, profile.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = timer_stopex &rArr; __aeabi_dmul
</UL>
<BR>[Calls]<UL><LI><a href="#[108bb68]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_i2f
<LI><a href="#[108c2b0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_f2d
<LI><a href="#[108c460]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_dmul
<LI><a href="#[108d7d0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_d2f
</UL>
<BR>[Called By]<UL><LI><a href="#[c7df80]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;WaitDownload
</UL>

<P><STRONG><a name="[c7e010]"></a>MemoryTest</STRONG> (ARM, 212 bytes, Stack size 24 bytes, usb_test.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 856 + Unknown Stack Size
<LI>Call Chain = MemoryTest &rArr; uart_getintnum &rArr; uart_getstring &rArr; uart_printf &rArr; __c89vsprintf &rArr; _printf_char_common &rArr; __printf &rArr; _printf_fp_dec &rArr; _printf_fp_dec_real &rArr; _fp_digits &rArr; _btod_etento &rArr; _btod_emul &rArr; _e2e
</UL>
<BR>[Calls]<UL><LI><a href="#[c7da28]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;uart_printf
<LI><a href="#[c7db00]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;uart_getintnum
</UL>
<BR>[Called By]<UL><LI><a href="#[c7dfc8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Menu
</UL>

<P><STRONG><a name="[c7dfc8]"></a>Menu</STRONG> (ARM, 944 bytes, Stack size 8 bytes, usb_test.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 864 + Unknown Stack Size
 + In Cycle
<LI>Call Chain = Menu &rArr;  Menu (Cycle)
</UL>
<BR>[Calls]<UL><LI><a href="#[c7da28]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;uart_printf
<LI><a href="#[c7dab8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;uart_getkey
<LI><a href="#[c7db00]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;uart_getintnum
<LI><a href="#[c7db48]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;uart_getch
<LI><a href="#[c7dfc8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Menu
<LI><a href="#[c7e010]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MemoryTest
</UL>
<BR>[Called By]<UL><LI><a href="#[c7df80]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;WaitDownload
<LI><a href="#[c7dfc8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Menu
<LI><a href="#[c81878]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;usb_test
</UL>

<P><STRONG><a name="[c7df80]"></a>WaitDownload</STRONG> (ARM, 1908 bytes, Stack size 96 bytes, usb_test.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 960 + Unknown Stack Size
<LI>Call Chain = WaitDownload &rArr; Menu &rArr;  Menu (Cycle)
</UL>
<BR>[Calls]<UL><LI><a href="#[c7d998]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;uart_txempty
<LI><a href="#[c7da28]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;uart_printf
<LI><a href="#[c7dab8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;uart_getkey
<LI><a href="#[c7dea8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ConfigEp3DmaMode
<LI><a href="#[c7def0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ClearEp3OutPktReady
<LI><a href="#[c7dfc8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Menu
<LI><a href="#[c800d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;timer_stopex
<LI><a href="#[c80120]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;timer_startex
<LI><a href="#[c80168]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;timer_initex
<LI><a href="#[108ba90]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ui2f
<LI><a href="#[108bec8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_fdiv
<LI><a href="#[108c2b0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_f2d
<LI><a href="#[108ce60]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_ddiv
<LI><a href="#[108d7d0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_d2f
</UL>
<BR>[Called By]<UL><LI><a href="#[c81878]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;usb_test
</UL>

<P><STRONG><a name="[c7df38]"></a>Isr_Init</STRONG> (ARM, 152 bytes, Stack size 0 bytes, usb_test.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c81878]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;usb_test
</UL>

<P><STRONG><a name="[c81878]"></a>usb_test</STRONG> (ARM, 744 bytes, Stack size 8 bytes, usb_test.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 968 + Unknown Stack Size
<LI>Call Chain = usb_test &rArr; WaitDownload &rArr; Menu &rArr;  Menu (Cycle)
</UL>
<BR>[Calls]<UL><LI><a href="#[c7d9e0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;uart_select
<LI><a href="#[c7da28]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;uart_printf
<LI><a href="#[c7da70]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;uart_init
<LI><a href="#[c7db90]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;delay
<LI><a href="#[c7dd88]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;UsbdMain
<LI><a href="#[c7df38]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Isr_Init
<LI><a href="#[c7df80]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;WaitDownload
<LI><a href="#[c7dfc8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Menu
</UL>
<BR>[Called By]<UL><LI><a href="#[c81908]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>

<P><STRONG><a name="[c7c2e0]"></a>PrepareEp1Fifo</STRONG> (ARM, 100 bytes, Stack size 16 bytes, usbin.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = PrepareEp1Fifo
</UL>
<BR>[Calls]<UL><LI><a href="#[c7c250]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;WrPktEp1
</UL>
<BR>[Called By]<UL><LI><a href="#[c7c298]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Ep1Handler
<LI><a href="#[c7ddd0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IsrUsbd
</UL>

<P><STRONG><a name="[c7c298]"></a>Ep1Handler</STRONG> (ARM, 112 bytes, Stack size 8 bytes, usbin.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 776 + Unknown Stack Size
<LI>Call Chain = Ep1Handler &rArr; PrintEpiPkt &rArr; uart_printf &rArr; __c89vsprintf &rArr; _printf_char_common &rArr; __printf &rArr; _printf_fp_dec &rArr; _printf_fp_dec_real &rArr; _fp_digits &rArr; _btod_etento &rArr; _btod_emul &rArr; _e2e
</UL>
<BR>[Calls]<UL><LI><a href="#[c7c2e0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PrepareEp1Fifo
<LI><a href="#[c7cbe0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PrintEpiPkt
<LI><a href="#[c7da28]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;uart_printf
</UL>
<BR>[Called By]<UL><LI><a href="#[c7ddd0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IsrUsbd
</UL>

<P><STRONG><a name="[c7af80]"></a>ReconfigUsbd</STRONG> (ARM, 272 bytes, Stack size 0 bytes, usblib.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c7af38]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ConfigUsbd
<LI><a href="#[c7ddd0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;IsrUsbd
</UL>

<P><STRONG><a name="[c7af38]"></a>ConfigUsbd</STRONG> (ARM, 36 bytes, Stack size 4 bytes, usblib.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = ConfigUsbd
</UL>

⌨️ 快捷键说明

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