📄 demo.htm
字号:
<BR><BR>[Stack]<UL><LI>Max Depth = 80<LI>Call Chain = ENC28J60_IPswap ⇒ ENC28J60_RAMcopy ⇒ ENC28J60_writeMemory ⇒ ENC28J60_writeAddr
</UL>
<BR>[Calls]<UL><LI><a href="#[219fee8]">>></a> ENC28J60_memcpy
<LI><a href="#[219ff30]">>></a> ENC28J60_RAMcopy
</UL>
<BR>[Called By]<UL><LI><a href="#[219fd38]">>></a> ENC28J60_readPacket
<LI><a href="#[219fdc8]">>></a> ENC28J60_doUDP
<LI><a href="#[219fe10]">>></a> ENC28J60_doTCP
</UL>
<P><STRONG><a name="[219fe58]"></a>ENC28J60_MACswap</STRONG> (ARM, 48 bytes, Stack size 8 bytes, enc28j60.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 80<LI>Call Chain = ENC28J60_MACswap ⇒ ENC28J60_RAMcopy ⇒ ENC28J60_writeMemory ⇒ ENC28J60_writeAddr
</UL>
<BR>[Calls]<UL><LI><a href="#[219fee8]">>></a> ENC28J60_memcpy
<LI><a href="#[219ff30]">>></a> ENC28J60_RAMcopy
</UL>
<BR>[Called By]<UL><LI><a href="#[219fd38]">>></a> ENC28J60_readPacket
<LI><a href="#[219fdc8]">>></a> ENC28J60_doUDP
<LI><a href="#[219fe10]">>></a> ENC28J60_doTCP
</UL>
<P><STRONG><a name="[21a16b8]"></a>ENC28J60_putByte</STRONG> (ARM, 120 bytes, Stack size 8 bytes, enc28j60.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = ENC28J60_putByte
</UL>
<BR>[Calls]<UL><LI><a href="#[219fcf0]">>></a> SPI_char
<LI><a href="#[21a17d8]">>></a> DelayProc
</UL>
<BR>[Called By]<UL><LI><a href="#[219fdc8]">>></a> ENC28J60_doUDP
<LI><a href="#[219fe10]">>></a> ENC28J60_doTCP
<LI><a href="#[21a18b0]">>></a> ENC28J60_userUDP
<LI><a href="#[21a1940]">>></a> putString
<LI><a href="#[21a1988]">>></a> putConstString
</UL>
<P><STRONG><a name="[21a1700]"></a>ENC28J60_getByte</STRONG> (ARM, 124 bytes, Stack size 8 bytes, enc28j60.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = ENC28J60_getByte
</UL>
<BR>[Calls]<UL><LI><a href="#[219fcf0]">>></a> SPI_char
<LI><a href="#[21a17d8]">>></a> DelayProc
</UL>
<BR>[Called By]<UL><LI><a href="#[219fd38]">>></a> ENC28J60_readPacket
<LI><a href="#[219fdc8]">>></a> ENC28J60_doUDP
<LI><a href="#[219fe10]">>></a> ENC28J60_doTCP
<LI><a href="#[21a18b0]">>></a> ENC28J60_userUDP
<LI><a href="#[21a18f8]">>></a> ENC28J60_userTCP
</UL>
<P><STRONG><a name="[219fe10]"></a>ENC28J60_doTCP</STRONG> (ARM, 1488 bytes, Stack size 112 bytes, enc28j60.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 192 + Unknown Stack Size
<LI>Call Chain = ENC28J60_doTCP ⇒ ENC28J60_MACswap ⇒ ENC28J60_RAMcopy ⇒ ENC28J60_writeMemory ⇒ ENC28J60_writeAddr
</UL>
<BR>[Calls]<UL><LI><a href="#[219fe58]">>></a> ENC28J60_MACswap
<LI><a href="#[219fea0]">>></a> ENC28J60_IPswap
<LI><a href="#[219ff30]">>></a> ENC28J60_RAMcopy
<LI><a href="#[219ff78]">>></a> ENC28J60_readMem
<LI><a href="#[219ffc0]">>></a> ENC28J60_checksum
<LI><a href="#[21a0008]">>></a> ENC28J60_TXpacket
<LI><a href="#[21a0050]">>></a> ENC28J60_writeMemory
<LI><a href="#[21a00e0]">>></a> ENC28J60_writeAddr
<LI><a href="#[21a01b8]">>></a> ENC28J60_readReg
<LI><a href="#[21a16b8]">>></a> ENC28J60_putByte
<LI><a href="#[21a1700]">>></a> ENC28J60_getByte
<LI><a href="#[21a18f8]">>></a> ENC28J60_userTCP
</UL>
<BR>[Called By]<UL><LI><a href="#[219fd38]">>></a> ENC28J60_readPacket
</UL>
<P><STRONG><a name="[219fdc8]"></a>ENC28J60_doUDP</STRONG> (ARM, 596 bytes, Stack size 64 bytes, enc28j60.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 144 + Unknown Stack Size
<LI>Call Chain = ENC28J60_doUDP ⇒ ENC28J60_MACswap ⇒ ENC28J60_RAMcopy ⇒ ENC28J60_writeMemory ⇒ ENC28J60_writeAddr
</UL>
<BR>[Calls]<UL><LI><a href="#[219fe58]">>></a> ENC28J60_MACswap
<LI><a href="#[219fea0]">>></a> ENC28J60_IPswap
<LI><a href="#[219ff30]">>></a> ENC28J60_RAMcopy
<LI><a href="#[219ff78]">>></a> ENC28J60_readMem
<LI><a href="#[219ffc0]">>></a> ENC28J60_checksum
<LI><a href="#[21a0008]">>></a> ENC28J60_TXpacket
<LI><a href="#[21a0050]">>></a> ENC28J60_writeMemory
<LI><a href="#[21a00e0]">>></a> ENC28J60_writeAddr
<LI><a href="#[21a01b8]">>></a> ENC28J60_readReg
<LI><a href="#[21a16b8]">>></a> ENC28J60_putByte
<LI><a href="#[21a1700]">>></a> ENC28J60_getByte
<LI><a href="#[21a18b0]">>></a> ENC28J60_userUDP
</UL>
<BR>[Called By]<UL><LI><a href="#[219fd38]">>></a> ENC28J60_readPacket
</UL>
<P><STRONG><a name="[219fd80]"></a>ENC28J60_memcmp</STRONG> (ARM, 188 bytes, Stack size 16 bytes, enc28j60.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = ENC28J60_memcmp ⇒ ENC28J60_writeAddr
</UL>
<BR>[Calls]<UL><LI><a href="#[219fcf0]">>></a> SPI_char
<LI><a href="#[21a00e0]">>></a> ENC28J60_writeAddr
<LI><a href="#[21a17d8]">>></a> DelayProc
</UL>
<BR>[Called By]<UL><LI><a href="#[219fd38]">>></a> ENC28J60_readPacket
</UL>
<P><STRONG><a name="[219fd38]"></a>ENC28J60_readPacket</STRONG> (ARM, 1020 bytes, Stack size 48 bytes, enc28j60.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 240 + Unknown Stack Size
<LI>Call Chain = ENC28J60_readPacket ⇒ ENC28J60_doTCP ⇒ ENC28J60_MACswap ⇒ ENC28J60_RAMcopy ⇒ ENC28J60_writeMemory ⇒ ENC28J60_writeAddr
</UL>
<BR>[Calls]<UL><LI><a href="#[219fcf0]">>></a> SPI_char
<LI><a href="#[219fd80]">>></a> ENC28J60_memcmp
<LI><a href="#[219fdc8]">>></a> ENC28J60_doUDP
<LI><a href="#[219fe10]">>></a> ENC28J60_doTCP
<LI><a href="#[219fe58]">>></a> ENC28J60_MACswap
<LI><a href="#[219fea0]">>></a> ENC28J60_IPswap
<LI><a href="#[219fee8]">>></a> ENC28J60_memcpy
<LI><a href="#[219ff30]">>></a> ENC28J60_RAMcopy
<LI><a href="#[219ff78]">>></a> ENC28J60_readMem
<LI><a href="#[219ffc0]">>></a> ENC28J60_checksum
<LI><a href="#[21a0008]">>></a> ENC28J60_TXpacket
<LI><a href="#[21a0050]">>></a> ENC28J60_writeMemory
<LI><a href="#[21a00e0]">>></a> ENC28J60_writeAddr
<LI><a href="#[21a01b8]">>></a> ENC28J60_readReg
<LI><a href="#[21a0248]">>></a> ENC28J60_clearBitReg
<LI><a href="#[21a02d8]">>></a> ENC28J60_setBitReg
<LI><a href="#[21a1700]">>></a> ENC28J60_getByte
<LI><a href="#[21a17d8]">>></a> DelayProc
</UL>
<BR>[Called By]<UL><LI><a href="#[21a1748]">>></a> ENC28J60_doPacket
</UL>
<P><STRONG><a name="[21a1748]"></a>ENC28J60_doPacket</STRONG> (ARM, 56 bytes, Stack size 8 bytes, enc28j60.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 248 + Unknown Stack Size
<LI>Call Chain = ENC28J60_doPacket ⇒ ENC28J60_readPacket ⇒ ENC28J60_doTCP ⇒ ENC28J60_MACswap ⇒ ENC28J60_RAMcopy ⇒ ENC28J60_writeMemory ⇒ ENC28J60_writeAddr
</UL>
<BR>[Calls]<UL><LI><a href="#[219fd38]">>></a> ENC28J60_readPacket
<LI><a href="#[21a01b8]">>></a> ENC28J60_readReg
<LI><a href="#[21a0248]">>></a> ENC28J60_clearBitReg
<LI><a href="#[21a02d8]">>></a> ENC28J60_setBitReg
</UL>
<BR>[Called By]<UL><LI><a href="#[21a1868]">>></a> main
</UL>
<P><STRONG><a name="[219fca8]"></a>SPI_init</STRONG> (ARM, 388 bytes, Stack size 8 bytes, spihw.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = SPI_init
</UL>
<BR>[Called By]<UL><LI><a href="#[21a1790]">>></a> ENC28J60_Init
</UL>
<P><STRONG><a name="[219f900]"></a>SPI_enable</STRONG> (ARM, 56 bytes, Stack size 8 bytes, spihw.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[21a17d8]">>></a> DelayProc
</UL>
<P><STRONG><a name="[219f8b8]"></a>SPI_disable</STRONG> (ARM, 40 bytes, Stack size 0 bytes, spihw.o(.text), UNUSED)
<P><STRONG><a name="[219fcf0]"></a>SPI_char</STRONG> (ARM, 52 bytes, Stack size 0 bytes, spihw.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[219fd38]">>></a> ENC28J60_readPacket
<LI><a href="#[219fd80]">>></a> ENC28J60_memcmp
<LI><a href="#[219fee8]">>></a> ENC28J60_memcpy
<LI><a href="#[219ff78]">>></a> ENC28J60_readMem
<LI><a href="#[21a0050]">>></a> ENC28J60_writeMemory
<LI><a href="#[21a00e0]">>></a> ENC28J60_writeAddr
<LI><a href="#[21a01b8]">>></a> ENC28J60_readReg
<LI><a href="#[21a0248]">>></a> ENC28J60_clearBitReg
<LI><a href="#[21a0290]">>></a> ENC28J60_writeReg
<LI><a href="#[21a02d8]">>></a> ENC28J60_setBitReg
<LI><a href="#[21a16b8]">>></a> ENC28J60_putByte
<LI><a href="#[21a1700]">>></a> ENC28J60_getByte
<LI><a href="#[21a1790]">>></a> ENC28J60_Init
</UL>
<P><STRONG><a name="[219e658]"></a>__I_use_semihosting</STRONG> (ARM, 0 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED)
<P><STRONG><a name="[219e610]"></a>__use_no_semihosting_swi</STRONG> (ARM, 4 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED)
<P><STRONG><a name="[219e420]"></a>memcmp</STRONG> (Thumb, 86 bytes, Stack size 4 bytes, memcmp.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = memcmp
</UL>
<BR>[Called By]<UL><LI><a href="#[21a18f8]">>></a> ENC28J60_userTCP (via Veneer)
</UL>
<P><STRONG><a name="[219e260]"></a>__aeabi_memcpy</STRONG> (ARM, 0 bytes, Stack size 0 bytes, rt_memcpy.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[21a1790]">>></a> ENC28J60_Init
</UL>
<P><STRONG><a name="[219e218]"></a>__rt_memcpy</STRONG> (ARM, 212 bytes, Stack size 0 bytes, rt_memcpy.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[219bc28]">>></a> __aeabi_memcpy4
</UL>
<P><STRONG><a name="[219e1d0]"></a>_memcpy_lastbytes</STRONG> (ARM, 0 bytes, Stack size unknown bytes, rt_memcpy.o(.text), UNUSED)
<P><STRONG><a name="[219de68]"></a>__aeabi_idiv</STRONG> (ARM, 0 bytes, Stack size 8 bytes, aeabi_sdiv.o(.text), UNUSED)
<P><STRONG><a name="[219de20]"></a>__aeabi_idivmod</STRONG> (ARM, 384 bytes, Stack size 8 bytes, aeabi_sdiv.o(.text), UNUSED)
<BR><BR>[Called By]<UL><LI><a href="#[21a09e0]">>></a> Dec2Bcd
<LI><a href="#[21a0a70]">>></a> LongToStr
</UL>
<P><STRONG><a name="[219d128]"></a>__use_two_region_memory</STRONG> (ARM, 4 bytes, Stack size 0 bytes, stkheap2.o(.text), UNUSED)
<P><STRONG><a name="[219d0e0]"></a>__rt_stackheap_init</STRONG> (ARM, 36 bytes, Stack size 16 bytes, stkheap2.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 24 + Unknown Stack Size
<LI>Call Chain = __rt_stackheap_init ⇒ __user_setup_stackheap
</UL>
<BR>[Calls]<UL><LI><a href="#[219bde0]">>></a> __rt_stackheap_storage
<LI><a href="#[219c570]">>></a> __user_setup_stackheap
</UL>
<BR>[Called By]<UL><LI><a href="#[219cb98]">>></a> __rt_entry
</UL>
<P><STRONG><a name="[219d098]"></a>__rt_heap_extend</STRONG> (ARM, 24 bytes, Stack size 8 bytes, stkheap2.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[219cfc0]">>></a> __user_heap_extend (Weak Reference)
</UL>
<P><STRONG><a name="[219cb98]"></a>__rt_entry</STRONG> (ARM, 76 bytes, Stack size 16 bytes, kernel.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 64 + Unknown Stack Size
<LI>Call Chain = __rt_entry ⇒ __rt_lib_init ⇒ _fp_init
</UL>
<BR>[Calls]<UL><LI><a href="#[219a4c0]">>></a> _platform_post_lib_init
<LI><a href="#[219a630]">>></a> _platform_post_stackheap_init
<LI><a href="#[219b048]">>></a> __rt_lib_init (via Veneer)
<LI><a href="#[219b4c8]">>></a> exit (via BX)
<LI><a href="#[219d0e0]">>></a> __rt_stackheap_init
</UL>
<BR>[Called By]<UL><LI><a href="#[2196d88]">>></a> __scatterload_rt2
<LI><a href="#[219ce58]">>></a> __main
</UL>
<P><STRONG><a name="[219cb50]"></a>__rt_exit</STRONG> (ARM, 20 bytes, Stack size 8 bytes, kernel.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = __rt_exit ⇒ __rt_lib_shutdown
</UL>
<BR>[Calls]<UL><LI><a href="#[219b000]">>></a> __rt_lib_shutdown (via Veneer)
</UL>
<BR>[Called By]<UL><LI><a href="#[219b4c8]">>></a> exit (via Veneer)
</UL>
<P><STRONG><a name="[219cb08]"></a>__rt_abort</STRONG> (ARM, 8 bytes, Stack size 0 bytes, kernel.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[21a2ae0]">>></a> _sys_exit
</UL>
<P><STRONG><a name="[219c570]"></a>__user_setup_stackheap</STRONG> (ARM, 96 bytes, Stack size 8 bytes, sys_stackheap_outer.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 8 + Unknown Stack Size
<LI>Call Chain = __user_setup_stackheap
</UL>
<BR>[Calls]<UL><LI><a href="#[219b848]">>></a> __user_perproc_libspace
<LI><a href="#[21a3390]">>></a> __user_initial_stackheap
</UL>
<BR>[Called By]<UL><LI><a href="#[219d0e0]">>></a> __rt_stackheap_init
</UL>
<P><STRONG><a name="[219bde0]"></a>__rt_stackheap_storage</STRONG> (ARM, 12 bytes, Stack size 0 bytes, rt_stackheap_storage_intlibspace.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[219d0e0]">>></a> __rt_stackheap_init
</UL>
<P><STRONG><a name="[219bc28]"></a>__aeabi_memcpy4</STRONG> (ARM, 0 bytes, Stack size 8 bytes, rt_memcpy_w.o(.text), UNUSED)
<BR><BR>[Called By]<UL><LI><a href="#[219e218]">>></a> __rt_memcpy
</UL>
<P><STRONG><a name="[219bbe0]"></a>__aeabi_memcpy8</STRONG> (ARM, 0 bytes, Stack size 8 bytes, rt_memcpy_w.o(.text), UNUSED)
<P><STRONG><a name="[219bb98]"></a>__rt_memcpy_w</STRONG> (ARM, 100 bytes, Stack size 8 bytes, rt_memcpy_w.o(.text), UNUSED)
<P><STRONG><a name="[219bb50]"></a>_memcpy_lastbytes_aligned</STRONG> (ARM, 0 bytes, Stack size unknown bytes, rt_memcpy_w.o(.text), UNUSED)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -