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

📄 rc531.htm

📁 ARM7 SPI RC531驱动程序,数据手册
💻 HTM
📖 第 1 页 / 共 4 页
字号:
<LI><a href="#[c7ff18]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;M500PcdSetTmo
<LI><a href="#[c800c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;M500PcdCmd
</UL>
<BR>[Called By]<UL><LI><a href="#[c82678]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;WriteCard
</UL>

<P><STRONG><a name="[c82828]"></a>ReadCard</STRONG> (ARM, 32 bytes, Stack size 16 bytes, rc500.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 112<LI>Call Chain = ReadCard &rArr; M500PiccRead &rArr; M500PcdCmd &rArr; FlushFIFO &rArr; SetBitMask &rArr; ReadIO
</UL>
<BR>[Calls]<UL><LI><a href="#[c7fb28]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;M500PiccRead
</UL>
<BR>[Called By]<UL><LI><a href="#[c829d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>

<P><STRONG><a name="[c82678]"></a>WriteCard</STRONG> (ARM, 32 bytes, Stack size 16 bytes, rc500.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 112<LI>Call Chain = WriteCard &rArr; M500PiccWrite &rArr; M500PcdCmd &rArr; FlushFIFO &rArr; SetBitMask &rArr; ReadIO
</UL>
<BR>[Calls]<UL><LI><a href="#[c7fae0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;M500PiccWrite
</UL>
<BR>[Called By]<UL><LI><a href="#[c829d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>

<P><STRONG><a name="[c7fa98]"></a>fine</STRONG> (ARM, 68 bytes, Stack size 16 bytes, rc500.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 112<LI>Call Chain = fine &rArr; M500PiccCommonRequest &rArr; M500PcdCmd &rArr; FlushFIFO &rArr; SetBitMask &rArr; ReadIO
</UL>
<BR>[Calls]<UL><LI><a href="#[c7fed0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;M500PiccCommonRequest
</UL>
<BR>[Called By]<UL><LI><a href="#[c82948]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Fine_Card
</UL>

<P><STRONG><a name="[c828b8]"></a>M500PiccHalt</STRONG> (ARM, 152 bytes, Stack size 8 bytes, rc500.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 88<LI>Call Chain = M500PiccHalt &rArr; M500PcdCmd &rArr; FlushFIFO &rArr; SetBitMask &rArr; ReadIO
</UL>
<BR>[Calls]<UL><LI><a href="#[c800c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;M500PcdCmd
<LI><a href="#[c802c0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;WriteIO
</UL>
<BR>[Called By]<UL><LI><a href="#[c829d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>

<P><STRONG><a name="[c82948]"></a>Fine_Card</STRONG> (ARM, 148 bytes, Stack size 24 bytes, rc500.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 176<LI>Call Chain = Fine_Card &rArr; CascAnticoll &rArr; M500PiccCascAnticoll &rArr; M500PcdCmd &rArr; FlushFIFO &rArr; SetBitMask &rArr; ReadIO
</UL>
<BR>[Calls]<UL><LI><a href="#[c7fa98]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;fine
<LI><a href="#[c7fb70]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;CascAnticoll
<LI><a href="#[c7fbb8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SelectTag
</UL>
<BR>[Called By]<UL><LI><a href="#[c829d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
</UL>

<P><STRONG><a name="[c7fa50]"></a>PiccCMD14443_4</STRONG> (ARM, 272 bytes, Stack size 24 bytes, rc500.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[c7da18]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
<LI><a href="#[c7ff18]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;M500PcdSetTmo
<LI><a href="#[c800c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;M500PcdCmd
<LI><a href="#[c80110]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;FlushFIFO
<LI><a href="#[c802c0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;WriteIO
</UL>
<BR>[Called By]<UL><LI><a href="#[c7f858]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;GetName
<LI><a href="#[c7f8a0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;charCash_Withdraw2
<LI><a href="#[c7f8e8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Cash_Withdraw
<LI><a href="#[c7f930]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Get_Balance
<LI><a href="#[c7f978]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;GetCardSN
<LI><a href="#[c7f9c0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;read_ls
<LI><a href="#[c7fa08]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Select_3f02
</UL>

<P><STRONG><a name="[c7fa08]"></a>Select_3f02</STRONG> (ARM, 140 bytes, Stack size 32 bytes, rc500.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[c7da18]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
<LI><a href="#[c7fa50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PiccCMD14443_4
</UL>

<P><STRONG><a name="[c7f9c0]"></a>read_ls</STRONG> (ARM, 60 bytes, Stack size 24 bytes, rc500.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[c7fa50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PiccCMD14443_4
</UL>

<P><STRONG><a name="[c7f978]"></a>GetCardSN</STRONG> (ARM, 280 bytes, Stack size 64 bytes, rc500.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[c7da18]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy
<LI><a href="#[c7fa50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PiccCMD14443_4
</UL>

<P><STRONG><a name="[c7f930]"></a>Get_Balance</STRONG> (ARM, 180 bytes, Stack size 40 bytes, rc500.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[c7fa50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PiccCMD14443_4
</UL>

<P><STRONG><a name="[c7f8e8]"></a>Cash_Withdraw</STRONG> (ARM, 344 bytes, Stack size 80 bytes, rc500.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[c7fa50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PiccCMD14443_4
</UL>

<P><STRONG><a name="[c7f8a0]"></a>charCash_Withdraw2</STRONG> (ARM, 400 bytes, Stack size 96 bytes, rc500.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[c7fa50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PiccCMD14443_4
</UL>

<P><STRONG><a name="[c7f858]"></a>GetName</STRONG> (ARM, 660 bytes, Stack size 88 bytes, rc500.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[c7d7d0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy4
<LI><a href="#[c7fa50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PiccCMD14443_4
</UL>

<P><STRONG><a name="[c7f810]"></a>IRQ_Eint0</STRONG> (ARM, 832 bytes, Stack size 24 bytes, rc500.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[c802c0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;WriteIO
<LI><a href="#[c80308]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;WriteRawIO
<LI><a href="#[c80350]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ReadRawIO
</UL>

<P><STRONG><a name="[c7f7c8]"></a>INT0Init</STRONG> (ARM, 140 bytes, Stack size 0 bytes, rc500.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c82870]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Rc500Init
</UL>

<P><STRONG><a name="[c82870]"></a>Rc500Init</STRONG> (ARM, 148 bytes, Stack size 8 bytes, rc500.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 80<LI>Call Chain = Rc500Init &rArr; MfConfig &rArr; M500PcdConfig &rArr; M500PcdRfReset &rArr; ClearBitMask &rArr; ReadIO
</UL>
<BR>[Calls]<UL><LI><a href="#[c7f7c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;INT0Init
<LI><a href="#[c7ff60]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MfConfig
</UL>
<BR>[Called By]<UL><LI><a href="#[c82a20]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SysInit
</UL>

<P><STRONG><a name="[c7f738]"></a>SPI_SendByte</STRONG> (ARM, 44 bytes, Stack size 0 bytes, spi0.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c7ed38]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SD_SPIDelay
<LI><a href="#[c801e8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RFRegRead
<LI><a href="#[c80230]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RFRegWrite
<LI><a href="#[c80278]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ReadIO
<LI><a href="#[c802c0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;WriteIO
<LI><a href="#[c80308]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;WriteRawIO
<LI><a href="#[c80350]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ReadRawIO
</UL>

<P><STRONG><a name="[c7f780]"></a>SPI_RecByte</STRONG> (ARM, 48 bytes, Stack size 0 bytes, spi0.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c801e8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;RFRegRead
<LI><a href="#[c80278]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ReadIO
<LI><a href="#[c80350]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ReadRawIO
</UL>

<P><STRONG><a name="[c7ed38]"></a>SD_SPIDelay</STRONG> (ARM, 44 bytes, Stack size 4 bytes, spi0.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[c7f738]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SPI_SendByte
</UL>

<P><STRONG><a name="[c827e0]"></a>SPI0Init</STRONG> (ARM, 60 bytes, Stack size 0 bytes, spi0.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c82a20]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;SysInit
</UL>

<P><STRONG><a name="[c7da18]"></a>__aeabi_memcpy</STRONG> (ARM, 0 bytes, Stack size 0 bytes, rt_memcpy.o(.text))
<BR><BR>[Called By]<UL><LI><a href="#[c7f978]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;GetCardSN
<LI><a href="#[c7fa08]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;Select_3f02
<LI><a href="#[c7fa50]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PiccCMD14443_4
<LI><a href="#[c7fae0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;M500PiccWrite
<LI><a href="#[c7fb28]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;M500PiccRead
<LI><a href="#[c7fb70]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;CascAnticoll
<LI><a href="#[c7fc90]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;PcdWriteE2
<LI><a href="#[c7fd20]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;M500PiccAuthKey
<LI><a href="#[c7fdf8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;M500PiccAuthState
<LI><a href="#[c7fe40]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;M500PiccCascSelect
<LI><a href="#[c7fe88]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;M500PiccCascAnticoll
</UL>

<P><STRONG><a name="[c7d9d0]"></a>__rt_memcpy</STRONG> (ARM, 212 bytes, Stack size 0 bytes, rt_memcpy.o(.text), UNUSED)
<BR><BR>[Calls]<UL><LI><a href="#[c7d7d0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__aeabi_memcpy4
</UL>

<P><STRONG><a name="[c7d988]"></a>_memcpy_lastbytes</STRONG> (ARM, 0 bytes, Stack size unknown bytes, rt_memcpy.o(.text), UNUSED)

<P><STRONG><a name="[c7d7d0]"></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="#[c7d9d0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_memcpy
<LI><a href="#[c7f858]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;GetName
</UL>

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

<P><STRONG><a name="[c7d740]"></a>__rt_memcpy_w</STRONG> (ARM, 100 bytes, Stack size 8 bytes, rt_memcpy_w.o(.text), UNUSED)

<P><STRONG><a name="[c7d6f8]"></a>_memcpy_lastbytes_aligned</STRONG> (ARM, 0 bytes, Stack size unknown bytes, rt_memcpy_w.o(.text), UNUSED)

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

<P><STRONG><a name="[c7d360]"></a>__aeabi_idivmod</STRONG> (ARM, 384 bytes, Stack size 8 bytes, aeabi_sdiv.o(.text))
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = __aeabi_idivmod
</UL>
<BR>[Called By]<UL><LI><a href="#[c7fe88]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;M500PiccCascAnticoll
</UL>

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

<P><STRONG><a name="[c7c620]"></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 &rArr; __user_setup_stackheap
</UL>
<BR>[Calls]<UL><LI><a href="#[c7b320]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_stackheap_storage
<LI><a href="#[c7bab0]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__user_setup_stackheap
</UL>
<BR>[Called By]<UL><LI><a href="#[c7c0d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_entry
</UL>

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

<P><STRONG><a name="[c7c0d8]"></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 &rArr; __rt_lib_init &rArr; _fp_init
</UL>
<BR>[Calls]<UL><LI><a href="#[c79a88]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_platform_post_lib_init
<LI><a href="#[c79bf8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;_platform_post_stackheap_init
<LI><a href="#[c7a610]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_lib_init (via Veneer)
<LI><a href="#[c7aa90]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;exit (via BX)
<LI><a href="#[c7c620]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_stackheap_init
</UL>
<BR>[Called By]<UL><LI><a href="#[c76238]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__scatterload_rt2
<LI><a href="#[c7c398]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__main
</UL>

<P><STRONG><a name="[c7c090]"></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 &rArr; __rt_lib_shutdown
</UL>
<BR>[Calls]<UL><LI><a href="#[c7a5c8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_lib_shutdown (via Veneer)
</UL>
<BR>[Called By]<UL><LI><a href="#[c7aa90]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;exit (via Veneer)
</UL>

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

<P><STRONG><a name="[c7bab0]"></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="#[c7ae90]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__user_perproc_libspace
<LI><a href="#[c833f8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__user_initial_stackheap
</UL>
<BR>[Called By]<UL><LI><a href="#[c7c620]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_stackheap_init
</UL>

<P><STRONG><a name="[c7b320]"></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="#[c7c620]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;__rt_stackheap_init
</UL>

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

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

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

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

<P><STRONG><a name="[c7aa90]"></a>exit</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, exit.o(.text))

⌨️ 快捷键说明

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