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

📄 sd_spi.htm

📁 easyARM8962 SPI通讯操作实验源码
💻 HTM
📖 第 1 页 / 共 4 页
字号:
<BR>[Called By]<UL><LI><a href="#[c7d678]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_GetCardInfo
</UL>

<P><STRONG><a name="[c80318]"></a>SD_StopTransmission</STRONG> (Thumb, 20 bytes, Stack size 16 bytes, sdcmd.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[c804c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_SendCmd
</UL>

<P><STRONG><a name="[c802d0]"></a>SD_ReadCard_Status</STRONG> (Thumb, 24 bytes, Stack size 16 bytes, sdcmd.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = SD_ReadCard_Status &rArr; SD_SendCmd &rArr; SPI_SendByte
</UL>
<BR>[Calls]<UL><LI><a href="#[c804c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_SendCmd
</UL>
<BR>[Called By]<UL><LI><a href="#[c81ce0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_WriteBlock
</UL>

<P><STRONG><a name="[c80288]"></a>SD_SetBlockLen</STRONG> (Thumb, 46 bytes, Stack size 24 bytes, sdcmd.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 64<LI>Call Chain = SD_SetBlockLen &rArr; SD_SendCmd &rArr; SPI_SendByte
</UL>
<BR>[Calls]<UL><LI><a href="#[c80480]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_PackParam
<LI><a href="#[c804c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_SendCmd
</UL>
<BR>[Called By]<UL><LI><a href="#[c81d70]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_Initialize
</UL>

<P><STRONG><a name="[c80240]"></a>SD_ReadSingleBlock</STRONG> (Thumb, 16 bytes, Stack size 8 bytes, sdcmd.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 80<LI>Call Chain = SD_ReadSingleBlock &rArr; SD_BlockCommand &rArr; SD_SendCmd &rArr; SPI_SendByte
</UL>
<BR>[Calls]<UL><LI><a href="#[c80438]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_BlockCommand
</UL>
<BR>[Called By]<UL><LI><a href="#[c81d28]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_ReadBlock
</UL>

<P><STRONG><a name="[c801f8]"></a>SD_ReadMultipleBlock</STRONG> (Thumb, 16 bytes, Stack size 8 bytes, sdcmd.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[c80438]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_BlockCommand
</UL>

<P><STRONG><a name="[c801b0]"></a>SD_WriteSingleBlock</STRONG> (Thumb, 16 bytes, Stack size 8 bytes, sdcmd.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 80<LI>Call Chain = SD_WriteSingleBlock &rArr; SD_BlockCommand &rArr; SD_SendCmd &rArr; SPI_SendByte
</UL>
<BR>[Calls]<UL><LI><a href="#[c80438]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_BlockCommand
</UL>
<BR>[Called By]<UL><LI><a href="#[c81ce0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_WriteBlock
</UL>

<P><STRONG><a name="[c80168]"></a>SD_WriteMultipleBlock</STRONG> (Thumb, 16 bytes, Stack size 8 bytes, sdcmd.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[c80438]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_BlockCommand
</UL>

<P><STRONG><a name="[c80120]"></a>SD_EraseStartBlock</STRONG> (Thumb, 34 bytes, Stack size 8 bytes, sdcmd.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 80<LI>Call Chain = SD_EraseStartBlock &rArr; SD_BlockCommand &rArr; SD_SendCmd &rArr; SPI_SendByte
</UL>
<BR>[Calls]<UL><LI><a href="#[c80438]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_BlockCommand
</UL>
<BR>[Called By]<UL><LI><a href="#[c81db8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_EraseBlock
</UL>

<P><STRONG><a name="[c800d8]"></a>SD_EraseEndBlock</STRONG> (Thumb, 34 bytes, Stack size 8 bytes, sdcmd.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 80<LI>Call Chain = SD_EraseEndBlock &rArr; SD_BlockCommand &rArr; SD_SendCmd &rArr; SPI_SendByte
</UL>
<BR>[Calls]<UL><LI><a href="#[c80438]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_BlockCommand
</UL>
<BR>[Called By]<UL><LI><a href="#[c81db8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_EraseBlock
</UL>

<P><STRONG><a name="[c80090]"></a>SD_WaitBusy</STRONG> (Thumb, 70 bytes, Stack size 24 bytes, sdcmd.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = SD_WaitBusy &rArr; SPI_SendByte
</UL>
<BR>[Calls]<UL><LI><a href="#[c7fdc0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI_SendByte
<LI><a href="#[c7fe08]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI_RecByte
<LI><a href="#[c7fe50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI_CS_Deassert
<LI><a href="#[c7fe98]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI_CS_Assert
</UL>
<BR>[Called By]<UL><LI><a href="#[c7ff70]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_WriteBlockData
<LI><a href="#[c80048]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_EraseSelectedBlock
</UL>

<P><STRONG><a name="[c80048]"></a>SD_EraseSelectedBlock</STRONG> (Thumb, 46 bytes, Stack size 16 bytes, sdcmd.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = SD_EraseSelectedBlock &rArr; SD_SendCmd &rArr; SPI_SendByte
</UL>
<BR>[Calls]<UL><LI><a href="#[c80090]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_WaitBusy
<LI><a href="#[c80480]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_PackParam
<LI><a href="#[c804c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_SendCmd
</UL>
<BR>[Called By]<UL><LI><a href="#[c81db8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_EraseBlock
</UL>

<P><STRONG><a name="[c80000]"></a>SD_ReadOCR</STRONG> (Thumb, 64 bytes, Stack size 32 bytes, sdcmd.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = SD_ReadOCR &rArr; SD_SendCmd &rArr; SPI_SendByte
</UL>
<BR>[Calls]<UL><LI><a href="#[c804c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_SendCmd
</UL>
<BR>[Called By]<UL><LI><a href="#[c81d70]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_Initialize
</UL>

<P><STRONG><a name="[c7ffb8]"></a>SD_ReadBlockData</STRONG> (Thumb, 114 bytes, Stack size 24 bytes, sdcmd.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = SD_ReadBlockData &rArr; SPI_SendByte
</UL>
<BR>[Calls]<UL><LI><a href="#[c7fdc0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI_SendByte
<LI><a href="#[c7fe08]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI_RecByte
<LI><a href="#[c7fe50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI_CS_Deassert
<LI><a href="#[c7fe98]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI_CS_Assert
</UL>
<BR>[Called By]<UL><LI><a href="#[c81d28]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_ReadBlock
</UL>

<P><STRONG><a name="[c7ff70]"></a>SD_WriteBlockData</STRONG> (Thumb, 158 bytes, Stack size 24 bytes, sdcmd.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = SD_WriteBlockData &rArr; SD_WaitBusy &rArr; SPI_SendByte
</UL>
<BR>[Calls]<UL><LI><a href="#[c7fdc0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI_SendByte
<LI><a href="#[c7fe08]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI_RecByte
<LI><a href="#[c7fe50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI_CS_Deassert
<LI><a href="#[c7fe98]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI_CS_Assert
<LI><a href="#[c80090]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_WaitBusy
</UL>
<BR>[Called By]<UL><LI><a href="#[c81ce0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_WriteBlock
</UL>

<P><STRONG><a name="[c7ff28]"></a>SD_StopMultiToken</STRONG> (Thumb, 28 bytes, Stack size 8 bytes, sdcmd.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[c7fdc0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI_SendByte
<LI><a href="#[c7fe08]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI_RecByte
<LI><a href="#[c7fe50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI_CS_Deassert
<LI><a href="#[c7fe98]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI_CS_Assert
</UL>

<P><STRONG><a name="[c7fee0]"></a>SD_SPIDelay</STRONG> (Thumb, 24 bytes, Stack size 16 bytes, sdcmd.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = SD_SPIDelay &rArr; SPI_SendByte
</UL>
<BR>[Calls]<UL><LI><a href="#[c7fdc0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI_SendByte
</UL>
<BR>[Called By]<UL><LI><a href="#[c81d70]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_Initialize
</UL>

<P><STRONG><a name="[c7d708]"></a>SD_EndSD</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, sddriver.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c81ce0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_WriteBlock
<LI><a href="#[c81d28]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_ReadBlock
<LI><a href="#[c81d70]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_Initialize
<LI><a href="#[c81db8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_EraseBlock
</UL>

<P><STRONG><a name="[c7d6c0]"></a>SD_CalTimeout</STRONG> (Thumb, 208 bytes, Stack size 16 bytes, sddriver.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = SD_CalTimeout
</UL>
<BR>[Called By]<UL><LI><a href="#[c7d678]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_GetCardInfo
</UL>

<P><STRONG><a name="[c7d678]"></a>SD_GetCardInfo</STRONG> (Thumb, 174 bytes, Stack size 32 bytes, sddriver.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 96<LI>Call Chain = SD_GetCardInfo &rArr; SD_ReadCSD &rArr; SD_SendCmd &rArr; SPI_SendByte
</UL>
<BR>[Calls]<UL><LI><a href="#[c7d6c0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_CalTimeout
<LI><a href="#[c80360]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_ReadCSD
</UL>
<BR>[Called By]<UL><LI><a href="#[c81d70]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_Initialize
</UL>

<P><STRONG><a name="[c7d630]"></a>SD_ActiveInit</STRONG> (Thumb, 128 bytes, Stack size 24 bytes, sddriver.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 64<LI>Call Chain = SD_ActiveInit &rArr; SD_SendCmd &rArr; SPI_SendByte
</UL>
<BR>[Calls]<UL><LI><a href="#[c804c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_SendCmd
</UL>
<BR>[Called By]<UL><LI><a href="#[c81d70]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_Initialize
</UL>

<P><STRONG><a name="[c7d5e8]"></a>SD_StartSD</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, sddriver.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c81ce0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_WriteBlock
<LI><a href="#[c81d28]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_ReadBlock
<LI><a href="#[c81d70]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_Initialize
<LI><a href="#[c81db8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_EraseBlock
</UL>

<P><STRONG><a name="[c81d70]"></a>SD_Initialize</STRONG> (Thumb, 136 bytes, Stack size 16 bytes, sddriver.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 112<LI>Call Chain = SD_Initialize &rArr; SD_GetCardInfo &rArr; SD_ReadCSD &rArr; SD_SendCmd &rArr; SPI_SendByte
</UL>
<BR>[Calls]<UL><LI><a href="#[c7d480]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI_ClkToMax
<LI><a href="#[c7d4c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_HardWareInit
<LI><a href="#[c7d558]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_ChkCard
<LI><a href="#[c7d5e8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_StartSD
<LI><a href="#[c7d630]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_ActiveInit
<LI><a href="#[c7d678]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_GetCardInfo
<LI><a href="#[c7d708]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_EndSD
<LI><a href="#[c7fe50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI_CS_Deassert
<LI><a href="#[c7fe98]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI_CS_Assert
<LI><a href="#[c7fee0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_SPIDelay
<LI><a href="#[c80000]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_ReadOCR
<LI><a href="#[c80288]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_SetBlockLen
<LI><a href="#[c803f0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_ResetSD
</UL>
<BR>[Called By]<UL><LI><a href="#[c81e90]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>

<P><STRONG><a name="[c81d28]"></a>SD_ReadBlock</STRONG> (Thumb, 80 bytes, Stack size 16 bytes, sddriver.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 96<LI>Call Chain = SD_ReadBlock &rArr; SD_ReadSingleBlock &rArr; SD_BlockCommand &rArr; SD_SendCmd &rArr; SPI_SendByte
</UL>
<BR>[Calls]<UL><LI><a href="#[c7d558]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_ChkCard
<LI><a href="#[c7d5e8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_StartSD
<LI><a href="#[c7d708]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_EndSD
<LI><a href="#[c7ffb8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_ReadBlockData
<LI><a href="#[c80240]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_ReadSingleBlock
</UL>
<BR>[Called By]<UL><LI><a href="#[c81e90]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>

<P><STRONG><a name="[c81ce0]"></a>SD_WriteBlock</STRONG> (Thumb, 178 bytes, Stack size 32 bytes, sddriver.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 112<LI>Call Chain = SD_WriteBlock &rArr; SD_WriteSingleBlock &rArr; SD_BlockCommand &rArr; SD_SendCmd &rArr; SPI_SendByte
</UL>
<BR>[Calls]<UL><LI><a href="#[c7d510]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_ChkCardWP
<LI><a href="#[c7d558]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_ChkCard
<LI><a href="#[c7d5e8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_StartSD
<LI><a href="#[c7d708]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_EndSD
<LI><a href="#[c7ff70]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_WriteBlockData
<LI><a href="#[c801b0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_WriteSingleBlock
<LI><a href="#[c802d0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_ReadCard_Status
</UL>
<BR>[Called By]<UL><LI><a href="#[c81e90]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>

<P><STRONG><a name="[c81db8]"></a>SD_EraseBlock</STRONG> (Thumb, 238 bytes, Stack size 24 bytes, sddriver.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 104<LI>Call Chain = SD_EraseBlock &rArr; SD_EraseEndBlock &rArr; SD_BlockCommand &rArr; SD_SendCmd &rArr; SPI_SendByte
</UL>
<BR>[Calls]<UL><LI><a href="#[c7d510]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_ChkCardWP
<LI><a href="#[c7d558]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_ChkCard
<LI><a href="#[c7d5e8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_StartSD
<LI><a href="#[c7d708]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_EndSD
<LI><a href="#[c80048]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_EraseSelectedBlock
<LI><a href="#[c800d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_EraseEndBlock
<LI><a href="#[c80120]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_EraseStartBlock
</UL>
<BR>[Called By]<UL><LI><a href="#[c81e90]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>

⌨️ 快捷键说明

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