色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

AT32講堂050 | 雅特力AT32 MCU SDIO入門指南

雅特力 AT32 MCU ? 2023-03-31 11:05 ? 次閱讀


簡(jiǎn)介

AT32 MCU的主機(jī)模塊(SDIO)在AHB外設(shè)總線和多媒體卡(MMC)、SD存儲(chǔ)卡、SDIO卡間提供了操作接口。SD儲(chǔ)存卡和SDIO卡的系統(tǒng)規(guī)格書可以通過(guò)SD卡協(xié)議網(wǎng)站。多媒體卡系統(tǒng)規(guī)格書由MMCA技術(shù)委員會(huì)發(fā)布,可以在多媒體卡協(xié)會(huì)的網(wǎng)站上獲得。1、SD Card:SDSC/SDHC/SDXC,支持的卡最大容量不同,支持1bit或4bit傳輸,0-25MHz或0-50MHz的傳輸模式。2、MMC Card:支持1bit,4bit或8bit傳輸,0-20MHz,0-26MHz或0-52MHz的傳輸模式。3、SDIO Card:一種使用SD接口協(xié)議,支持多功能的卡,比如wifi卡,GPS卡,藍(lán)牙卡等等。

SDIO主要結(jié)構(gòu)

SDIO包含4個(gè)部分:1、SDIO適配器模塊:由控制單元、命令單元和數(shù)據(jù)單元所組成,實(shí)現(xiàn)所有MMC/SD/SDIO卡的相關(guān)功能,如時(shí)鐘的產(chǎn)生、命令和數(shù)據(jù)的傳送

  • 控制單元:管理并產(chǎn)生時(shí)鐘信號(hào)
  • 命令單元:管理命令的傳輸
  • 數(shù)據(jù)單元:管理數(shù)據(jù)的傳輸

2、AHB接口:產(chǎn)生中斷和DMA請(qǐng)求信號(hào)3、適配器寄存器:SDIO寄存器4、BUF:用于數(shù)據(jù)傳輸校準(zhǔn)功能圖1. SDIO框圖c6939816-cd44-11ed-ad0d-dac502259ad0.png

  • 所有數(shù)據(jù)線配置為復(fù)用推挽模式。SDIO_CMD和SDIO_D[7:0]可雙向通信,應(yīng)外接上拉電阻或內(nèi)部上拉。
  • SDIO使用一個(gè)時(shí)鐘信號(hào):SDIO適配器時(shí)鐘(SDIOCLK=AHB總線時(shí)鐘(HCLK))。
  • 復(fù)位后默認(rèn)情況下SDIO_D0用于數(shù)據(jù)傳輸。初始化后主機(jī)可以改變數(shù)據(jù)總線的寬度。可選1bit(SDIO_D0)、4bit(SDIO_D[3:0])、8bit(SDIO_D[7:0])三種數(shù)據(jù)總線的寬度。

表1. SDIO外部引腳說(shuō)明c6b17dfe-cd44-11ed-ad0d-dac502259ad0.png

SDIO總線通信

總線上的通信是通過(guò)傳送命令和數(shù)據(jù)實(shí)現(xiàn)。
1、在多媒體卡/SD/SDIO總線上的基本操作是命令/響應(yīng)結(jié)構(gòu)。2、在SD/SDIO Card上傳送的數(shù)據(jù)是只能以數(shù)據(jù)塊的形式傳輸;在MMC Card上傳送的數(shù)據(jù)是以數(shù)據(jù)塊或數(shù)據(jù)流的形式傳輸。圖2. SDIO命令“無(wú)響應(yīng)”和“有響應(yīng)”操作c6ca3934-cd44-11ed-ad0d-dac502259ad0.png圖3. SDIO(多)數(shù)據(jù)塊讀操作c6f41632-cd44-11ed-ad0d-dac502259ad0.png圖4. SDIO(多)數(shù)據(jù)塊寫操作c7114a5e-cd44-11ed-ad0d-dac502259ad0.png注意:當(dāng)有Busy(繁忙)信號(hào)時(shí),SDIO(SDIO_D0被拉低)將不會(huì)發(fā)送任何數(shù)據(jù)。圖5. SDIO MMC卡數(shù)據(jù)流讀操作c734c86c-cd44-11ed-ad0d-dac502259ad0.png圖6. SDIO MMC卡數(shù)據(jù)流寫操作c754d3aa-cd44-11ed-ad0d-dac502259ad0.png

SDIO功能

SDIO時(shí)鐘

1)SDIO_CK是MCU端輸出到卡的時(shí)鐘:每個(gè)時(shí)鐘周期在命令和數(shù)據(jù)線上傳輸1bit命令或數(shù)據(jù)。2)SDIO_CK信號(hào)的兩下降沿之間為一個(gè)時(shí)鐘周期,硬件在上升沿捕獲數(shù)據(jù)。3)當(dāng)啟動(dòng)了省電模式并且卡總線處于空閑狀態(tài)(命令通道和數(shù)據(jù)通道子單元進(jìn)入空閑階段后的8個(gè)時(shí)鐘周期)。圖7. 開啟省電模式的命令/響應(yīng)波形圖c768635c-cd44-11ed-ad0d-dac502259ad0.png4)支持多達(dá)10位分頻系數(shù),也就是1024級(jí)分頻,此時(shí)可得SDIO_CK頻率=SDIOCLK/[CLKPSC[9:0]+2]。5)可以使用bypass模式,輸出一個(gè)不分頻的時(shí)鐘,SDIO_CK頻率=SDIOCLK。6)硬件流控模式,可在數(shù)據(jù)傳輸即將發(fā)生上溢或者下溢的時(shí)候,通過(guò)停止SDIO_CK防止溢出。7)可以配置CLKEDG bit來(lái)選擇時(shí)鐘的產(chǎn)生。SDIO_CK可實(shí)現(xiàn)略微偏移(半個(gè)SDIOCLK)。8)應(yīng)用時(shí),SD卡初始化的時(shí)候SDIO_CK不能大于400kHZ,之后的時(shí)鐘頻率由對(duì)應(yīng)卡型號(hào)限制。
SDIO時(shí)鐘配置相關(guān)函數(shù)

配置SDIO時(shí)鐘

c7887c1e-cd44-11ed-ad0d-dac502259ad0.png

使能省電模式

c79eaac0-cd44-11ed-ad0d-dac502259ad0.png使能SDIO時(shí)鐘bypass模式c7c7decc-cd44-11ed-ad0d-dac502259ad0.png使能硬件流控模式c7dd30f6-cd44-11ed-ad0d-dac502259ad0.png設(shè)置SDIO電源c7f4025e-cd44-11ed-ad0d-dac502259ad0.png使能SDIO時(shí)鐘輸出c807edb4-cd44-11ed-ad0d-dac502259ad0.pngSDIO時(shí)鐘初始化舉例:c81b26e0-cd44-11ed-ad0d-dac502259ad0.png

命令通道

1)命令通道單元通過(guò)SDIO_CMD向卡發(fā)送命令并從卡接收響應(yīng)。2)命令超時(shí),即等待卡響應(yīng)的時(shí)間,固定為64個(gè)SDIO_CK時(shí)鐘周期。這個(gè)由通信協(xié)議決定,固定不可配置。3)可以置位WAITPEND bit,命令只有在數(shù)據(jù)傳輸完之后才由硬件自動(dòng)發(fā)出,而不是立刻發(fā)出。多用于流數(shù)據(jù)的傳輸模式,目的是保證中止命令可以精準(zhǔn)地停止卡的數(shù)據(jù)傳輸。表2. 命令格式c832dbd2-cd44-11ed-ad0d-dac502259ad0.png4)根據(jù)該命令的需要,可配置等待響應(yīng)位(Wait for response bits)來(lái)指示CPSM是否需要等待響應(yīng)。具體可配置為:1、無(wú)響應(yīng);2、短響應(yīng);3、長(zhǎng)響應(yīng)。表3. 短響應(yīng)格式c84c9f2c-cd44-11ed-ad0d-dac502259ad0.png表4. 長(zhǎng)響應(yīng)格式c866a62e-cd44-11ed-ad0d-dac502259ad0.png5)當(dāng)設(shè)置SDIO_CMDCTRL寄存器的CCSMEN位,控制器開始發(fā)送命令。命令發(fā)送完成時(shí),命令通道狀態(tài)機(jī)(CCSM)設(shè)置命令通道狀態(tài)標(biāo)志并在不需要響應(yīng)時(shí)進(jìn)入空閑狀態(tài)。當(dāng)收到響應(yīng)后,接收到的CRC碼將會(huì)與內(nèi)部產(chǎn)生的CRC碼比較,然后設(shè)置相應(yīng)的狀態(tài)標(biāo)志。圖8. 命令通道狀態(tài)機(jī)(CCSM)c87cd2dc-cd44-11ed-ad0d-dac502259ad0.png6)當(dāng)CMDRSPCMPL、CMDFAIL、CMDCMPL、CMDTIMEOUT置位后,命令通道狀態(tài)機(jī)(CCSM)都會(huì)回到Idle狀態(tài)。而DOCMD置位時(shí),CPSM處于除Idle以外的任何狀態(tài)。表5. 命令通道標(biāo)志c8a03d58-cd44-11ed-ad0d-dac502259ad0.png命令通道配置相關(guān)函數(shù)配置命令通道狀態(tài)機(jī)c8b86e64-cd44-11ed-ad0d-dac502259ad0.png使能命令通道狀態(tài)機(jī)c8c97132-cd44-11ed-ad0d-dac502259ad0.png

命令通道初始化舉例:

c8dc002c-cd44-11ed-ad0d-dac502259ad0.png

數(shù)據(jù)通道

1)數(shù)據(jù)通道單元通過(guò)SDIO_D[7:0]在主機(jī)與卡之間傳輸數(shù)據(jù)。圖9. 數(shù)據(jù)通道狀態(tài)機(jī)(DCSM)c8eacb2a-cd44-11ed-ad0d-dac502259ad0.png2)數(shù)據(jù)BUF(先進(jìn)先出)子單元是一個(gè)具有發(fā)送和接收單元的數(shù)據(jù)緩沖區(qū)。3)BUF包含一個(gè)每字32位寬、共32個(gè)字的數(shù)據(jù)緩沖區(qū),共128Byte。表6. 數(shù)據(jù)令牌格式c9089236-cd44-11ed-ad0d-dac502259ad0.png4)DOTX和DORX由數(shù)據(jù)通道單元設(shè)置而且是互斥的:

  • 當(dāng)DOTX標(biāo)志有效時(shí),BUF代表發(fā)送數(shù)據(jù)緩沖區(qū)。(DPSM處于Wait_R或者Receive狀態(tài))
  • 當(dāng)DORX標(biāo)志有效時(shí),BUF代表接收數(shù)據(jù)緩沖區(qū)。(DPSM處于Wait_S或者Send狀態(tài))

表7. 發(fā)送BUF狀態(tài)標(biāo)志c91ef0bc-cd44-11ed-ad0d-dac502259ad0.png表8. 接收BUF狀態(tài)標(biāo)志

c9385192-cd44-11ed-ad0d-dac502259ad0.png

SDIO_D[7:0]時(shí)序1)在塊模式下,發(fā)送完數(shù)據(jù)后,卡會(huì)返回一個(gè)確認(rèn)CRC的序列,數(shù)據(jù)通道狀態(tài)機(jī)(DCSM)在等待“這個(gè)序列和Busy結(jié)束”時(shí)有超時(shí)控制,超時(shí)時(shí)間由SDIO數(shù)據(jù)定時(shí)器寄存器(SDIO_DTTMR)設(shè)置。2)卡端返回的CRC status(5bit)只會(huì)發(fā)送在SDIO_D0上,卡端收到正確的數(shù)據(jù)(CRC正確)后發(fā)出的序列為“00101”,若是錯(cuò)誤的數(shù)據(jù)(CRC錯(cuò)誤)的序列為“01011”。3)數(shù)據(jù)通道狀態(tài)機(jī)(DCSM)在WAIT_R等待接收數(shù)據(jù)時(shí)也有超時(shí)控制,超時(shí)時(shí)間也由SDIO數(shù)據(jù)定時(shí)器寄存器(SDIO_DTTMR)設(shè)置。4)在塊模式下的數(shù)據(jù)傳輸總個(gè)數(shù)一定要是block size的整數(shù)倍。當(dāng)一個(gè)塊發(fā)送完后需要收到“CRC序列和Busy結(jié)束”時(shí),硬件才會(huì)發(fā)送下一個(gè)數(shù)據(jù)塊。在流模式下不需設(shè)定blocksize的大小。圖10. 1bit數(shù)據(jù)傳輸方式c952051a-cd44-11ed-ad0d-dac502259ad0.png圖11. 4bit數(shù)據(jù)傳輸方式c97254dc-cd44-11ed-ad0d-dac502259ad0.png圖12. 8bit數(shù)據(jù)傳輸方式c98e2626-cd44-11ed-ad0d-dac502259ad0.png數(shù)據(jù)通道配置相關(guān)函數(shù)配置數(shù)據(jù)通道狀態(tài)機(jī)c9b56e48-cd44-11ed-ad0d-dac502259ad0.png使能數(shù)據(jù)通道狀態(tài)機(jī)c9cd5ada-cd44-11ed-ad0d-dac502259ad0.png設(shè)置數(shù)據(jù)總線寬度c9eb5e22-cd44-11ed-ad0d-dac502259ad0.png

數(shù)據(jù)通道初始化舉例:

ca012072-cd44-11ed-ad0d-dac502259ad0.png

SDIO AHB接口

1)AHB接口產(chǎn)生中斷和DMA請(qǐng)求,并訪問(wèn)SDIO接口寄存器和數(shù)據(jù)BUF。它包含一個(gè)數(shù)據(jù)通道、寄存器譯碼器和中斷/DMA控制邏輯。2)SDIO中斷:當(dāng)至少有一個(gè)選中的狀態(tài)標(biāo)志為高時(shí),中斷控制邏輯產(chǎn)生中斷請(qǐng)求。中斷屏蔽寄存器用于選擇可以產(chǎn)生中斷的條件,如果設(shè)置了相應(yīng)的屏蔽標(biāo)志位,則對(duì)應(yīng)的狀態(tài)標(biāo)志可以產(chǎn)生中斷。表9. SDIO中斷屏蔽寄存器ca201f18-cd44-11ed-ad0d-dac502259ad0.png3)DMA接口:DMA主要用于在SDIO BUF和Memory之間傳輸數(shù)據(jù)。

  • BUF在接收數(shù)據(jù)時(shí),RXBUFH標(biāo)志作為DMA接收請(qǐng)求。
  • BUF在發(fā)送數(shù)據(jù)時(shí),TXBUFH標(biāo)志作為DMA發(fā)送請(qǐng)求。

SDIO中斷/DMA配置相關(guān)函數(shù)

SDIO中斷配置函數(shù)

ca46b024-cd44-11ed-ad0d-dac502259ad0.pngSDIO DMA使能函數(shù)ca6238da-cd44-11ed-ad0d-dac502259ad0.png使能SDIO DMA接收數(shù)據(jù)舉例:ca7660a8-cd44-11ed-ad0d-dac502259ad0.png

數(shù)據(jù)傳輸模式

當(dāng)SD/MMC卡需要讀/寫數(shù)據(jù)時(shí),可以配置、使能SDIO主機(jī)的數(shù)據(jù)通道后,通過(guò)PIO模式或DMA模式來(lái)讀/寫SDIO的數(shù)據(jù)BUF的方式實(shí)現(xiàn)。

PIO模式

SDIO的數(shù)據(jù)BUF共128字節(jié),讀/寫數(shù)據(jù)共用。根據(jù)SDIO主機(jī)數(shù)據(jù)通道所配置的傳送方向來(lái)判斷讀或?qū)憯?shù)據(jù)BUF。在讀取數(shù)據(jù)BUF接收數(shù)據(jù)時(shí),用戶查詢SDIO_STS寄存器的RXBUFH標(biāo)志位,如置位可讀取8字節(jié)的數(shù)據(jù),最后再查詢RXBUF標(biāo)志位,以讀完剩余小于8字節(jié)的未讀數(shù)據(jù)。在寫入數(shù)據(jù)BUF發(fā)送數(shù)據(jù)時(shí),用戶查詢SDIO_STS寄存器的TXBUFH標(biāo)志位,如置位可寫入最多8字節(jié)的數(shù)據(jù),直至寫完所有待發(fā)送的數(shù)據(jù)。當(dāng)在PIO模式下運(yùn)行時(shí),用戶都必須確保輪詢狀態(tài)。

DMA模式

DMA模式是訪問(wèn)數(shù)據(jù)BUF的另一種選擇。使用DMA控制器來(lái)代替CPU對(duì)數(shù)據(jù)BUF的訪問(wèn),可以節(jié)省CPU運(yùn)行的時(shí)間。使用DMA控制器之前,要先使能SDIO的DMA模式,再去設(shè)置DMA控制器的功能,最后使能與數(shù)據(jù)BUF讀或?qū)懴嚓P(guān)的中斷,用以判斷數(shù)據(jù)BUF讀/寫是否完成,是否有數(shù)據(jù)校驗(yàn)錯(cuò)誤等。控制方式和范例可以參照BSP里的demo。SDIO用DMA模式讀或?qū)憯?shù)據(jù)BUF時(shí),只能以WORD為最小傳輸單位。DMA的長(zhǎng)度需換算成WORD單位,數(shù)據(jù)寬度也必須選擇WORD。DMA模式相關(guān)配置函數(shù)SDIO的DMA模式使能ca93ca6c-cd44-11ed-ad0d-dac502259ad0.pngSDIO的中斷使能caab8364-cd44-11ed-ad0d-dac502259ad0.png

SDIO主機(jī)接口初始化

初始化SDIO主機(jī)

這部分介紹了如何去初始化SD/MMC主機(jī)接口來(lái)建立命令通道和數(shù)據(jù)通道去初始化 SD/MMC卡。圖13. 初始化SD/MMC主機(jī)接口流程圖cac47a2c-cd44-11ed-ad0d-dac502259ad0.png時(shí)鐘配置SDIO使用一個(gè)時(shí)鐘信號(hào):SDIO適配器時(shí)鐘(SDIOCLK=AHB總線時(shí)鐘(HCLK))。SDIO_CK的時(shí)鐘配置對(duì)于SD/MMC卡初始化配置時(shí),該時(shí)鐘范圍在100到400KHz。

SD卡初始化

SD卡上電和初始化的流程可參考協(xié)議”SD Physical Layer Specification Version 2.00”來(lái)實(shí)現(xiàn),并由此來(lái)配置命令通道和數(shù)據(jù)通道去識(shí)別和初始化SD卡。圖14. SD卡識(shí)別和初始化流程圖caeaf256-cd44-11ed-ad0d-dac502259ad0.pngSD卡的上電和初始化發(fā)送CMD0:軟件復(fù)位命令,將卡置于空閑狀態(tài)。發(fā)送CMD8:根據(jù)卡端的響應(yīng)識(shí)別SD卡的版本型號(hào)和支持的電壓范圍。

  • 如果卡端回復(fù)了響應(yīng),這說(shuō)明是V2.00或更新的SD卡。再判斷響應(yīng)是否有效,如響應(yīng)無(wú)效,則支持的電壓范圍不兼容;如有效,則支持的電壓范圍是兼容的。
  • 如果卡端沒(méi)有回復(fù)響應(yīng)。則說(shuō)明是V2.00或更新的SD卡(沒(méi)有匹配支持的電壓),或是V1.X的SD卡,或是沒(méi)有連接SD卡。

發(fā)送ACMD41:獲取SD卡的OCR(Operation Conditions Register)。

  • 讀取OCR中的Busy(Card power up status)bit,判斷SD卡的上電過(guò)程是否完成,直到該位置1說(shuō)明上電完成。
  • 讀取OCR中的CCS(Card Capacity Status)bit,判斷該卡是高容量或是標(biāo)準(zhǔn)容量的V2.00的SD卡。

SD卡的識(shí)別過(guò)程發(fā)送CMD2:獲取SD卡的CID(Card IDentification)Register。發(fā)送CMD3:獲取SD卡的相對(duì)地址。發(fā)送CMD9:獲取SD卡的CSD(Card Specific Data)Register。配置SD卡的數(shù)據(jù)總線寬度1)發(fā)送ACMD6:改變SD卡的數(shù)據(jù)總線寬度(可支持1-bit或4-bit線寬)2)配置SDIO主機(jī)的數(shù)據(jù)總線寬度線寬。總線寬度設(shè)置函數(shù)cb0bebaa-cd44-11ed-ad0d-dac502259ad0.png

配置SD卡數(shù)據(jù)總線寬度舉例:

cb25e3f2-cd44-11ed-ad0d-dac502259ad0.png

MMC卡初始化

MMC卡上電和初始化的流程可參考協(xié)議”MultiMediaCard (MMC) Electrical Standard(MMCA, 4.2)”來(lái)實(shí)現(xiàn),并由此來(lái)配置命令通道和數(shù)據(jù)通道去識(shí)別和初始化MMC卡。圖15. MMC卡識(shí)別和初始化流程圖cb4a2b40-cd44-11ed-ad0d-dac502259ad0.pngMMC卡的上電和初始化發(fā)送CMD0:軟件復(fù)位命令,將卡置于空閑狀態(tài)。發(fā)送CMD1:獲取MMC卡的OCR(Operation Conditions Register)。

  • 讀取OCR中的Busy(Card power up status)bit,判斷MMC卡的上電過(guò)程是否完成,直到該位置1說(shuō)明上電完成。

MMC卡的識(shí)別過(guò)程發(fā)送CMD2:獲取MMC卡的CID(Card IDentification)Register。發(fā)送CMD3:設(shè)置MMC卡的相對(duì)地址。發(fā)送CMD9:獲取MMC卡的CSD(Card Specific Data)Register。配置MMC卡的數(shù)據(jù)總線寬度1)發(fā)送CMD6:改變MMC卡的數(shù)據(jù)總線寬度(可支持1-bit或4-bit或8-bit線寬)2)配置SDIO主機(jī)的數(shù)據(jù)總線寬度線寬。總線寬度設(shè)置函數(shù)cb683a2c-cd44-11ed-ad0d-dac502259ad0.png

配置MMC卡數(shù)據(jù)總線寬度舉例:

cb7bf99a-cd44-11ed-ad0d-dac502259ad0.png

SDIO主機(jī)接口讀/寫 SD/MMC卡

s

讀/寫SD卡

在讀/寫SD卡時(shí),只能以數(shù)據(jù)塊的方式進(jìn)行讀/寫。當(dāng)SD卡上電并初始化完成,由空閑狀態(tài)進(jìn)入傳輸狀態(tài)后,就可以進(jìn)行SD卡的讀/寫操作。圖16. SD卡狀態(tài)圖(數(shù)據(jù)傳輸模式)cb93a054-cd44-11ed-ad0d-dac502259ad0.png在初始化完成后,SD卡進(jìn)入Stand-by狀態(tài),需發(fā)送CMD7根據(jù)相對(duì)地址去選中SD卡,此時(shí)可進(jìn)入到transfer狀態(tài),便可以進(jìn)行SD卡的讀/寫操作。

發(fā)送CMD13:獲取SD卡狀態(tài)。

發(fā)送CMD16:設(shè)置SD卡單塊的大小。下面的命令是用于讀/寫單塊或多塊的數(shù)據(jù):

  • CMD1:讀單塊數(shù)據(jù)。

  • CMD18:讀多塊數(shù)據(jù)。

  • CMD23:寫單塊數(shù)據(jù)。

  • CMD24:寫多塊數(shù)據(jù)。

讀/寫MMC卡

在讀/寫MMC卡時(shí),可以以數(shù)據(jù)塊或數(shù)據(jù)流的方式進(jìn)行讀/寫。當(dāng)MMC卡上電并初始化完成,由空閑狀態(tài)進(jìn)入傳輸狀態(tài)后,就可以進(jìn)行MMC卡的讀/寫操作。圖17. MMC卡狀態(tài)圖(數(shù)據(jù)傳輸模式)cbc49f56-cd44-11ed-ad0d-dac502259ad0.png在初始化完成后,MMC卡進(jìn)入Stand-by狀態(tài),需發(fā)送CMD7根據(jù)相對(duì)地址去選中MMC卡,此時(shí)可進(jìn)入到transfer狀態(tài),便可以進(jìn)行MMC卡的讀/寫操作。發(fā)送CMD13:獲取MMC卡狀態(tài)。發(fā)送CMD16:設(shè)置MMC卡單塊的大小。

下面的命令是用于讀/寫單塊或多塊的數(shù)據(jù):

  • CMD1:讀單塊數(shù)據(jù)。
  • CMD18:讀多塊數(shù)據(jù)。
  • CMD23:寫單塊數(shù)據(jù)。
  • CMD24:寫多塊數(shù)據(jù)。

下面的命令是用于讀/寫數(shù)據(jù)流:

  • CMD11:讀數(shù)據(jù)流。
  • CMD20:寫數(shù)據(jù)流。

讀/寫 SD/MMC卡 案例

下圖展示了讀/寫SD/MMC卡案例的流程圖。圖18. 讀/寫SD/MMC卡案例cbf48eb4-cd44-11ed-ad0d-dac502259ad0.png

SDIO主機(jī)讀寫基于 SD/MMC卡的FATFS文件

s在SD/MMC卡上裝載FATFS文件系統(tǒng),文件能被傳送,可使用PIO或DMA的傳輸模式。后面有案例會(huì)具體描述如何去創(chuàng)建、寫入然后讀取一個(gè)文件在SD/MMC卡上。

將文件系統(tǒng)導(dǎo)入工程文件

在案例中,我們需要導(dǎo)入FATFS文件系統(tǒng)的API層和硬件層,并根據(jù)具體的存儲(chǔ)介質(zhì)來(lái)修改硬件層。通過(guò)”ffconf.h”配置FatFs的相關(guān)功能(可裁剪),以滿足應(yīng)用的需要。圖19. FATFS文件系統(tǒng)相關(guān)文件cc1561ca-cd44-11ed-ad0d-dac502259ad0.png

FATFS文件系統(tǒng)案例

下圖展示了FATFS文件系統(tǒng)案例的流程圖。圖20. FATFS文件系統(tǒng)案例cc3bf4c0-cd44-11ed-ad0d-dac502259ad0.pngPS.

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    17123

    瀏覽量

    350994
  • AT32
    +關(guān)注

    關(guān)注

    1

    文章

    113

    瀏覽量

    2090
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    發(fā)布高性能電機(jī)控制專用MCU

    近日,科技正式推出了其首款高性能電機(jī)控制專用MCU——AT32M412/M416。這款MCU專為出行工具、家電及工業(yè)控制等應(yīng)用而設(shè)計(jì),
    的頭像 發(fā)表于 11-01 18:11 ?887次閱讀

    AT32講堂088 | AT32F402/F405時(shí)鐘配置

    介紹如何結(jié)合提供的V2.x.x的板級(jí)支持包(BSP)來(lái)配置時(shí)鐘。以下介紹時(shí)鐘配置的方法主要分兩種:1、以手動(dòng)編寫代碼調(diào)用BSP中提供的驅(qū)動(dòng)函數(shù)接口來(lái)進(jìn)行時(shí)鐘配
    的頭像 發(fā)表于 09-15 08:08 ?483次閱讀
    <b class='flag-5'>AT32</b><b class='flag-5'>講堂</b>088 | <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>AT32F402/F405時(shí)鐘配置

    AT32講堂087 | AT32 IDE快速入門指南

    新建項(xiàng)目新項(xiàng)目向?qū)T32ID提供支持MCU的C語(yǔ)言項(xiàng)目模板,方便用戶快速創(chuàng)建項(xiàng)目。菜單欄【File】>【New】>【CProject】。新建項(xiàng)目向?qū)У膶?duì)話框?qū)⒊霈F(xiàn)。在對(duì)
    的頭像 發(fā)表于 09-15 08:08 ?436次閱讀
    <b class='flag-5'>AT32</b><b class='flag-5'>講堂</b>087 | <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b><b class='flag-5'>AT32</b> IDE快速<b class='flag-5'>入門</b><b class='flag-5'>指南</b>

    AT32 MCU的隨機(jī)數(shù)生成

    概述產(chǎn)品和生態(tài)系統(tǒng)安全性的需求比以往任何時(shí)候都更加重要。真隨機(jī)數(shù)是所有安全系統(tǒng)的核心,其質(zhì)量會(huì)影響設(shè)計(jì)的安全性。因此在沒(méi)有內(nèi)置硬件TRNG的AT32的微控制器系列中,如何提高隨機(jī)數(shù)的有效,來(lái)符合
    的頭像 發(fā)表于 08-30 12:26 ?542次閱讀
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b><b class='flag-5'>AT32</b> <b class='flag-5'>MCU</b>的隨機(jī)數(shù)生成

    AT32講堂085 | AT32 MCU HICK時(shí)鐘校準(zhǔn)

    簡(jiǎn)介AT32系列MCU內(nèi)部都有提供適合運(yùn)行的內(nèi)部高速時(shí)鐘(HICK),其本質(zhì)就是內(nèi)置于芯片的RC振蕩器。在25℃下,其典型值頻率8MHz的精度由工廠校準(zhǔn)到±1%,在-40到105℃,該內(nèi)部高速時(shí)鐘
    的頭像 發(fā)表于 08-30 12:26 ?611次閱讀
    <b class='flag-5'>AT32</b><b class='flag-5'>講堂</b>085 | <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b><b class='flag-5'>AT32</b> <b class='flag-5'>MCU</b> HICK時(shí)鐘校準(zhǔn)

    電機(jī)應(yīng)用快速入門指南

    AT32電機(jī)控制算法庫(kù)目標(biāo)電機(jī):三相永磁同步電機(jī)(直流無(wú)刷電機(jī))控制模式:可執(zhí)行有位置感測(cè)器/無(wú)位置感測(cè)器FOC弦波矢量控制可執(zhí)行有位置感測(cè)器/無(wú)位置感測(cè)器120°方波BLDC電機(jī)控制三相PWM調(diào)制
    的頭像 發(fā)表于 08-30 12:26 ?417次閱讀
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>電機(jī)應(yīng)用快速<b class='flag-5'>入門</b><b class='flag-5'>指南</b>

    攜多款AT32 MCU新品與應(yīng)用方案亮相2024慕尼黑上海電子展

    7月8日,2024慕尼黑上海電子展electronicaChina在上海新國(guó)際博覽中心拉開序幕,作為全球電子行業(yè)的盛會(huì),匯聚了國(guó)內(nèi)外眾多優(yōu)質(zhì)電子企業(yè),為業(yè)界呈現(xiàn)一場(chǎng)前所未有的科技盛宴。攜高性能
    的頭像 發(fā)表于 07-09 08:15 ?652次閱讀
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>攜多款<b class='flag-5'>AT32</b> <b class='flag-5'>MCU</b>新品與應(yīng)用方案亮相2024慕尼黑上海電子展

    AT32 MCU通過(guò)IEC 60730功能安全認(rèn)證,為家電產(chǎn)品提供安全保障

    ??近日,AT32MCU安全庫(kù)順利通過(guò)IEC60730功能安全認(rèn)證,為家電產(chǎn)品提供安全質(zhì)量保證。國(guó)際公認(rèn)的測(cè)試、檢驗(yàn)和認(rèn)證機(jī)構(gòu)SGS為
    的頭像 發(fā)表于 05-20 08:15 ?557次閱讀
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b><b class='flag-5'>AT32</b> <b class='flag-5'>MCU</b>通過(guò)IEC 60730功能安全認(rèn)證,為家電產(chǎn)品提供安全保障

    發(fā)布全新車載型AT32A423系列MCU

    近日發(fā)布了全新車載型AT32A423系列MCU,該產(chǎn)品基于ARM?Cortex?-M4內(nèi)核設(shè)計(jì),集成了豐富的外設(shè)資源,展現(xiàn)了高效能與多尺寸封裝的雙重優(yōu)勢(shì)。
    的頭像 發(fā)表于 05-17 10:38 ?628次閱讀

    AT32F423入門使用指南

    初步環(huán)境準(zhǔn)備開發(fā)環(huán)境下載地址:
    的頭像 發(fā)表于 05-14 08:15 ?1507次閱讀
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>AT32F423<b class='flag-5'>入門</b>使用<b class='flag-5'>指南</b>

    AT32 MCU與SEGGER攜手合作,開發(fā)量產(chǎn)事半功倍

    近日,與SEGGER共同宣布J-Link仿真調(diào)試器與Flasher在線燒錄器全面支持AT32 MCU產(chǎn)品,SEGGER工具鏈的加持使
    的頭像 發(fā)表于 02-23 10:27 ?409次閱讀

    AT32 MCU與SEGGER攜手合作,開發(fā)量產(chǎn)事半功倍

    近日,與SEGGER共同宣布J-Link仿真調(diào)試器與Flasher在線燒錄器全面支持AT32MCU產(chǎn)品,SEGGER工具鏈的加持使AT32MC
    的頭像 發(fā)表于 02-22 08:13 ?477次閱讀
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b><b class='flag-5'>AT32</b> <b class='flag-5'>MCU</b>與SEGGER攜手合作,開發(fā)量產(chǎn)事半功倍

    AT32F423時(shí)鐘配置

    介紹如何結(jié)合提供的V2.x.x的板級(jí)支持包(BSP)來(lái)配置時(shí)鐘。以下介紹時(shí)鐘配置的方法主要分兩種:1、以手動(dòng)編寫代碼調(diào)用BSP中提供的驅(qū)動(dòng)函數(shù)接口來(lái)進(jìn)行時(shí)鐘配
    的頭像 發(fā)表于 02-19 13:26 ?585次閱讀
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>AT32F423時(shí)鐘配置

    AT32F423時(shí)鐘配置入門指南

    電子發(fā)燒友網(wǎng)站提供《AT32F423時(shí)鐘配置入門指南.pdf》資料免費(fèi)下載
    發(fā)表于 01-31 09:37 ?1次下載
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b>AT32F423時(shí)鐘配置<b class='flag-5'>入門</b><b class='flag-5'>指南</b>

    AT32 MCU HOGP開發(fā)指南

    HOGP概述HOGP(HIDoverGATT)是由BluetoothSIG維護(hù)的藍(lán)牙配置文件規(guī)范,通過(guò)低功耗藍(lán)牙實(shí)現(xiàn)HID的配置文件并作為與計(jì)算器之間的接口,消除HID中對(duì)電線或物理連接的需求。HID角色在HID中,以及在HOGP的延伸中,定義了兩個(gè)角色,這些角色是HID主機(jī)和HID設(shè)備。HID設(shè)備一次只能主動(dòng)連接到單個(gè)HID主機(jī);然而一個(gè)HID主機(jī)可以連接
    的頭像 發(fā)表于 12-30 08:14 ?645次閱讀
    <b class='flag-5'>雅</b><b class='flag-5'>特</b><b class='flag-5'>力</b><b class='flag-5'>AT32</b> <b class='flag-5'>MCU</b> HOGP開發(fā)<b class='flag-5'>指南</b>
    主站蜘蛛池模板: 最近的2019中文字幕国语HD| 欧美18videosex性欧美老师| 一本道中文无码亚洲| 国语自产二区高清国语自产拍| 亚洲一区在线视频观看| 久久国产乱子伦免费精品| 久久中文骚妇内射| 伊人影院2019| 久久精品一本到东京热| 中文字幕一区久久久久| 美女脱了内裤张开腿让男人爽| videos gratis欧美另类| 成人网18免费韩国| 色综合久久88一加勒比| 福利啪啪吧| 午夜阳光影院在线观看视频| 国内2018年午夜福利5678| 亚洲国产货青视觉盛宴| 精品无码国产AV一区二区三区| 一区在线观看在线| 久久亚洲AV成人无码国产漫画 | 伊人久久大香线蕉综合电影网 | 蜜臀久久99精品久久久久久做爰| 538在线视频一区二区视视频| 年轻的母亲4线在线观看完整| 边摸边吃奶边做下面视频| 视频一区国产| 好吊妞在线成人免费| 中文字幕人成人乱码亚洲影视S| 国产午夜精品理论片| 一个人免费播放高清在线观看| 美女被艹网站| 成人在线观看视频免费| 鸭子玩富婆流白浆视频| 久久AV国产麻豆HD真实乱| 99在线播放| 亚洲福利网站| 女女破视频在线观看| 国产三级在线免费| 91天堂国产在线 在线播放| 特级黑人三人共一女|