MultiMediacard簡(jiǎn)介及其與單片機(jī)接口
本文引用地址:http://www.ex-cimer.com/article/171342.htm
Busy應(yīng)答信號(hào)長(zhǎng)度為多個(gè)字節(jié)。各位都為0,表示卡正忙。存在非零位表明卡已經(jīng)準(zhǔn)備好接收下一命令。
R2格式應(yīng)答信號(hào)長(zhǎng)度為2字節(jié),用于答復(fù)卡狀態(tài)查詢命令字CMD13。首字節(jié)格式同R1,第2個(gè)字節(jié)表示的錯(cuò)誤類型。
R3格式應(yīng)答信號(hào)長(zhǎng)度為5字節(jié),答復(fù)卡內(nèi)OCR豁口讀命令CMD58。首字節(jié)格式同R1,其余4字節(jié)為OCR豁口內(nèi)容。
R1b格式應(yīng)答信號(hào)包括兩部分,R1格式部分和Busy格式可選附加部分。
4.3 MMC在SPI模式下的傳輸時(shí)序
MMC在SPI協(xié)議下讀寫時(shí)序如圖5所示。主控制器發(fā)送讀/寫命令,當(dāng)收到OUT傳輸互上正確的應(yīng)答信號(hào)后,OUT/IN傳輸線開始讀/寫操作。
5.1 硬件電路設(shè)計(jì)
圖6為筆者采用Sandisc公司容量為32MB的MMC卡
設(shè)計(jì)的便攜式數(shù)據(jù)采集系統(tǒng)的一部分。單片機(jī)采用美國(guó)Microchip公司推出的PIC16F73B。單片機(jī)的工作頻率為4MHZ,采用Port C的硬件SPI接口進(jìn)行MMC卡的讀寫操作。
5.2 軟件設(shè)計(jì)
訪問(wèn)MMC卡存儲(chǔ)單元前,需要設(shè)定訪問(wèn)塊長(zhǎng)度。默認(rèn)長(zhǎng)度為512字節(jié)。本設(shè)計(jì)是通過(guò)寫緩存芯片F(xiàn)M24CL64,達(dá)到512字節(jié)后轉(zhuǎn)入主存MMC的(硬件電路圖應(yīng)作相應(yīng)的修改),所以讀寫長(zhǎng)度不再設(shè)定。MMC格式化為FAT文件系統(tǒng)的結(jié)構(gòu)后,數(shù)據(jù)以文件的形式為上位機(jī)所讀取。
MMC接口部分軟件設(shè)計(jì)流程如圖7所示。
5.3 MMC卡SPI初始化與寫子程序
因?yàn)镸MC可以在兩種協(xié)議下工作,且默認(rèn)為MMC操作模式,所以必須經(jīng)過(guò)初始化才能在SPI模式下工作。初始化和寫子程序代碼見(jiàn)www.dpj.com.cn。
評(píng)論