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

📄 0000.htm

📁 Keil C 写的SD卡驱动程序
💻 HTM
📖 第 1 页 / 共 3 页
字号:
<LI><a href="#[bc7ebc]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;SD_Read_Block
<LI><a href="#[bc7f38]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;SD_write_sector
<LI><a href="#[bc802c]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;Write_Command_SD
</UL>

<P><STRONG><a name="[b25514]"></a>spi_init</STRONG> (ARM, 120 bytes, Stack size 4 bytes, sd.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = spi_init</UL>
<BR>[Calls]<UL><LI><a href="#[bc80ac]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI_RW
</UL>
<BR>[Called By]<UL><LI><a href="#[b25944]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;main
</UL>

<P><STRONG><a name="[bc802c]"></a>Write_Command_SD</STRONG> (ARM, 160 bytes, Stack size 12 bytes, sd.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 12<LI>Call Chain = Write_Command_SD</UL>
<BR>[Calls]<UL><LI><a href="#[bc80ac]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI_RW
</UL>
<BR>[Called By]<UL><LI><a href="#[b25678]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;SD_INIT
<LI><a href="#[bc7ebc]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;SD_Read_Block
<LI><a href="#[bc7f38]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;SD_write_sector
</UL>

<P><STRONG><a name="[bc7fb4]"></a>adr_dispose</STRONG> (ARM, 76 bytes, Stack size 0 bytes, sd.o(.text), UNUSED)

<P><STRONG><a name="[bc7f38]"></a>SD_write_sector</STRONG> (ARM, 376 bytes, Stack size 44 bytes, sd.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = SD_write_sector -> Write_Command_SD</UL>
<BR>[Calls]<UL><LI><a href="#[bc802c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Write_Command_SD
<LI><a href="#[bc80ac]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI_RW
</UL>
<BR>[Called By]<UL><LI><a href="#[b2558c]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;SD_WRITE
</UL>

<P><STRONG><a name="[bc7ebc]"></a>SD_Read_Block</STRONG> (ARM, 368 bytes, Stack size 40 bytes, sd.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 52<LI>Call Chain = SD_Read_Block -> Write_Command_SD</UL>
<BR>[Calls]<UL><LI><a href="#[bc802c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Write_Command_SD
<LI><a href="#[bc80ac]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI_RW
</UL>
<BR>[Called By]<UL><LI><a href="#[b25604]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;SD_READ
<LI><a href="#[b256ec]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;READ_CSD
<LI><a href="#[b258cc]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;BOOT_READ
</UL>

<P><STRONG><a name="[b25678]"></a>SD_INIT</STRONG> (ARM, 312 bytes, Stack size 24 bytes, sd.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 128<LI>Call Chain = SD_INIT -> PutString -> PutChar -> SetPageArea</UL>
<BR>[Calls]<UL><LI><a href="#[b25764]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PutString
<LI><a href="#[bc802c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Write_Command_SD
<LI><a href="#[bc80ac]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI_RW
</UL>
<BR>[Called By]<UL><LI><a href="#[b25944]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;main
</UL>

<P><STRONG><a name="[b256ec]"></a>READ_CSD</STRONG> (ARM, 188 bytes, Stack size 24 bytes, sd.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 128<LI>Call Chain = READ_CSD -> PutString -> PutChar -> SetPageArea</UL>
<BR>[Calls]<UL><LI><a href="#[b25764]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PutString
<LI><a href="#[bc7ebc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_Read_Block
</UL>
<BR>[Called By]<UL><LI><a href="#[b25944]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;main
</UL>

<P><STRONG><a name="[b2558c]"></a>SD_WRITE</STRONG> (ARM, 180 bytes, Stack size 24 bytes, sd.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 128<LI>Call Chain = SD_WRITE -> PutString -> PutChar -> SetPageArea</UL>
<BR>[Calls]<UL><LI><a href="#[b25764]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PutString
<LI><a href="#[bc7f38]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_write_sector
</UL>
<BR>[Called By]<UL><LI><a href="#[b25944]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;main
</UL>

<P><STRONG><a name="[b25604]"></a>SD_READ</STRONG> (ARM, 284 bytes, Stack size 32 bytes, sd.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 84<LI>Call Chain = SD_READ -> SD_Read_Block -> Write_Command_SD</UL>
<BR>[Calls]<UL><LI><a href="#[bc7ebc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_Read_Block
</UL>
<BR>[Called By]<UL><LI><a href="#[b25944]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;main
<LI><a href="#[b259b8]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;SD_List
</UL>

<P><STRONG><a name="[b258cc]"></a>BOOT_READ</STRONG> (ARM, 316 bytes, Stack size 40 bytes, sd.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 144<LI>Call Chain = BOOT_READ -> PutString -> PutChar -> SetPageArea</UL>
<BR>[Calls]<UL><LI><a href="#[b25764]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PutString
<LI><a href="#[b25854]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PCF8833CLR
<LI><a href="#[bc7ebc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_Read_Block
</UL>
<BR>[Called By]<UL><LI><a href="#[b25944]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;main
</UL>

<P><STRONG><a name="[c0ea48]"></a>__use_two_region_memory</STRONG> (ARM, 4 bytes, Stack size 0 bytes, stkheap2.o(.text), UNUSED)

<P><STRONG><a name="[c0e9c0]"></a>__rt_stackheap_init</STRONG> (ARM, 60 bytes, Stack size 24 bytes, stkheap2.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 32 + Unknown Stack Size
<LI>Call Chain = __rt_stackheap_init -> __user_setup_stackheap</UL>
<BR>[Calls]<UL><LI><a href="#[c0c4c4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_stackheap_storage
<LI><a href="#[c0cfc8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__user_setup_stackheap
</UL>
<BR>[Called By]<UL><LI><a href="#[c0d968]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;__rt_entry
</UL>

<P><STRONG><a name="[c0e938]"></a>__rt_heap_extend</STRONG> (ARM, 24 bytes, Stack size 8 bytes, stkheap2.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[c0eb1c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__user_heap_extend (Weak Reference)
</UL>

<P><STRONG><a name="[c0d968]"></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="#[c05da0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_platform_post_lib_init
<LI><a href="#[c061f4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_platform_post_stackheap_init
<LI><a href="#[c07a2c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_lib_init (via Veneer)
<LI><a href="#[c0abb8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;exit (via BX)
<LI><a href="#[c0e9c0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_stackheap_init
</UL>
<BR>[Called By]<UL><LI><a href="#[c0e308]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;__main
<LI><a href="#[1001ac8]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;__scatterload_rt2
</UL>

<P><STRONG><a name="[c0d820]"></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="#[c079dc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_lib_shutdown (via Veneer)
</UL>
<BR>[Called By]<UL><LI><a href="#[c0abb8]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;exit (via Veneer)
</UL>

<P><STRONG><a name="[c0d7a8]"></a>__rt_abort</STRONG> (ARM, 8 bytes, Stack size 0 bytes, kernel.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[c0b790]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_sys_exit
</UL>

<P><STRONG><a name="[c0cfc8]"></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="#[b281a0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__user_initial_stackheap
<LI><a href="#[c0b2b4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__user_perproc_libspace
</UL>
<BR>[Called By]<UL><LI><a href="#[c0e9c0]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;__rt_stackheap_init
</UL>

<P><STRONG><a name="[c0c4c4]"></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="#[c0e9c0]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;__rt_stackheap_init
</UL>

<P><STRONG><a name="[c0b790]"></a>_sys_exit</STRONG> (ARM, 20 bytes, Stack size 0 bytes, sys_exit.o(.text), UNUSED)
<BR><BR>[Called By]<UL><LI><a href="#[c0d7a8]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;__rt_abort
</UL>

<P><STRONG><a name="[c0b18c]"></a>__user_libspace</STRONG> (ARM, 8 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED)

<P><STRONG><a name="[c0b2b4]"></a>__user_perproc_libspace</STRONG> (ARM, 0 bytes, Stack size 0 bytes, libspace.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c0cfc8]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;__user_setup_stackheap
</UL>

<P><STRONG><a name="[c0b22c]"></a>__user_perthread_libspace</STRONG> (ARM, 0 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED)

<P><STRONG><a name="[c0abb8]"></a>exit</STRONG> (Thumb, 24 bytes, Stack size 8 bytes, exit.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = exit -> __rt_exit -> __rt_lib_shutdown</UL>
<BR>[Calls]<UL><LI><a href="#[c0aa68]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_call_atexit_fns (Weak Reference)
<LI><a href="#[c0aae8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__ARM_stackcheck (Weak Reference)
<LI><a href="#[c0d820]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_exit (via Veneer)
</UL>
<BR>[Called By]<UL><LI><a href="#[c0d968]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;__rt_entry
</UL>

<P><STRONG><a name="[c07a2c]"></a>__rt_lib_init</STRONG> (Thumb, 188 bytes, Stack size 40 bytes, lib_init.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = __rt_lib_init -> _fp_init</UL>
<BR>[Calls]<UL><LI><a href="#[c06fac]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_signal_init (Weak Reference)
<LI><a href="#[c07028]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_rand_init (Weak Reference)
<LI><a href="#[c070a0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_initio (Weak Reference)
<LI><a href="#[c07114]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_init_user_alloc (Weak Reference)
<LI><a href="#[c07194]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_init_alloc (Weak Reference)
<LI><a href="#[c0720c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_getenv_init (Weak Reference)
<LI><a href="#[c07288]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_get_lc_time (Weak Reference)
<LI><a href="#[c07304]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_get_lc_numeric (Weak Reference)
<LI><a href="#[c07380]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_get_lc_monetary (Weak Reference)
<LI><a href="#[c07400]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_get_lc_ctype (Weak Reference)
<LI><a href="#[c0747c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_get_lc_collate (Weak Reference)
<LI><a href="#[c074f8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_fp_trap_init (Weak Reference)
<LI><a href="#[c07574]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_clock_init (Weak Reference)
<LI><a href="#[c075ec]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_atexit_init (Weak Reference)
<LI><a href="#[c076e4]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__cpp_initialize__aeabi_ (Weak Reference)
<LI><a href="#[c0776c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__alloca_initialize (Weak Reference)
<LI><a href="#[c077ec]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__Heap_DescSize (Weak Reference)
<LI><a href="#[c07868]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__ARM_exceptions_init (Weak Reference)
<LI><a href="#[c07af8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__ARM_argv_veneer (via Veneer)
<LI><a href="#[c0aae8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__ARM_stackcheck (Weak Reference)
<LI><a href="#[100cddc]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_fp_init (via Veneer)
<LI><a href="#[100f40c]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_locale (via Veneer)
</UL>
<BR>[Called By]<UL><LI><a href="#[c0d968]">&lt;&lt;</a>&nbsp;&nbsp;&nbsp;__rt_entry (via Veneer)
</UL>

<P><STRONG><a name="[c079dc]"></a>__rt_lib_shutdown</STRONG> (Thumb, 26 bytes, Stack size 8 bytes, lib_init.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = __rt_lib_shutdown</UL>

⌨️ 快捷键说明

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