當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]MultiMediaCard是Sandisc公司推出的大容量串行Flash存儲卡,本文重點介紹此類存儲器與PIC單片機(jī)的接口,給出實際的電路設(shè)計和軟件代碼示例。

   摘要:MultiMediaCard是Sandisc公司推出的大容量串行Flash存儲卡,外形尺寸為32mm×24mm×1.4mm,質(zhì)量小于2g,7針引腳,便于開發(fā)設(shè)計小型的移動數(shù)碼設(shè)備。本文重點介紹此類存儲器與PIC單片機(jī)的接口,給出實際的電路設(shè)計和軟件代碼示例。

    關(guān)鍵詞:MultiMediaCard 串行Flash存儲卡?。校桑脝纹瑱C(jī) 接口

1 概述

Sandisc公司推出的大大容量串行Flash存儲器產(chǎn)品——MultiMediaCard(MMC),通常叫作多媒體卡。它的體積比SmartMedia還要小,不怕沖擊,可反復(fù)讀寫記錄30萬次,驅(qū)動電壓2.7~3.6V,可變時鐘頻率范圍為0~20MHz,目前常見的容量為64MB/128MB。ATP Electrionics公司已經(jīng)率先推出了1GB的高容量MMC。除了體積小、壽命長、容量大等特性外,還具備存儲區(qū)糾錯能力;低功耗;5ms內(nèi)沒有接收到命令字后,自動轉(zhuǎn)入休眠狀態(tài);支持熱插拔等優(yōu)點。MMC可以格式化為FAT文件系統(tǒng),便于上位機(jī)讀寫。

2 MMC簡介

2.1 引腳排列及功能

根據(jù)存儲容量的不同,MMC有SMDB和SDMJ兩種構(gòu)成技術(shù)。SMDB即二進(jìn)制NAND技術(shù)(Binary NAND),16MB和32MB容量的MMC卡采用此技術(shù)。目前常用的64MB和128MB的MMC采用SDMJ,即MLC(Multi Level Cell)NAND技術(shù)。各容量的MMC卡,其外形尺寸及引腳排列相同,如圖1所示。

MMC讀寫接口可以在MMC和SPI兩種通信 協(xié)議下工作。MMC是由MMCA協(xié)會開發(fā)的高性能三線制通信協(xié)議,即CMD、CLK、DAT線,最大可尋址64000張MMC卡,單個物理地址可疊放30張卡,支持順序讀寫及單/多數(shù)據(jù)塊讀寫操作,是MMC卡默認(rèn)的通信協(xié)議。SPI協(xié)議為可選協(xié)議,工作效率不及MMC協(xié)議;但SPI協(xié)議簡單易用,兼容性好,便于和單片機(jī)連接使用。本設(shè)計采用SPI通信協(xié)議,下文將詳細(xì)介紹。

    2.2 內(nèi)部邏輯結(jié)構(gòu)

MMC卡的內(nèi)部邏輯結(jié)構(gòu)可分為四部分:MMC/SPI接口、單芯片控制器、數(shù)據(jù)閃存模塊、控制線和數(shù)據(jù)線。MMC/SPI接口實現(xiàn)與主控制器的通信。單芯片控制器完成接口協(xié)議、數(shù)據(jù)存儲檢索、糾錯碼算法、故障診斷處理、電源管理和時鐘控制功能。數(shù)據(jù)內(nèi)存模塊可以實現(xiàn)整個存儲空間內(nèi)的單字節(jié)訪問,它不是簡單的字陣列,而是被分成了多種結(jié)構(gòu)。512個字節(jié)構(gòu)成1個扇區(qū)(sector)。根據(jù)MMC卡容量的不同,16或32個扇區(qū)構(gòu)成1個擦除族(erase group)。32個擦除族構(gòu)成1個寫保護(hù)族(write protect group)。此設(shè)計使MMC操作靈活,使用方便??刂凭€和數(shù)據(jù)線實現(xiàn)數(shù)據(jù)存儲區(qū)的訪問,其內(nèi)部邏輯結(jié)構(gòu)如圖2所示。

3 MMC/SPI通信協(xié)議

MMC卡上電后,默認(rèn)進(jìn)入MMC模式。如果轉(zhuǎn)入SPI模式下工作,需進(jìn)行模式切換。SPI模式設(shè)定流程如圖3所示。

如需從SPI模式轉(zhuǎn)入MMC模式,只能切斷電源,重新上電,進(jìn)入默認(rèn)MMC模式。從實際應(yīng)用角度出發(fā),SPI模式設(shè)計簡單,操作方便,但數(shù)據(jù)傳輸速率遜于MMC模式?;谠O(shè)計要求,筆者采用了SPI通信協(xié)議。

4 存儲器讀寫接口

4.1 SPI接口及操作模式

SPI接口是一種通用同步串行接口總線,字長為8位,用來與外部設(shè)備進(jìn)行通信。SPI接口利用CLK、DataIn和DataOut三根線進(jìn)行數(shù)據(jù)的讀寫。其中,CLK為時鐘信號,有外部控制器提供;Datain和DataOut為數(shù)據(jù)輸入和輸出線。CS是MMC片選信號線,在整個SPI操作過程中,必須保持低電平有效信號。

SPI接口共有四種操作模式,分別為0、1、2和3。SPI操作模式?jīng)Q定了設(shè)備接收和發(fā)送數(shù)據(jù)時的時鐘相位和極性,即決定了時鐘信號的上升和下降沿與數(shù)據(jù)流動方向之間的關(guān)系,如圖4所示。本設(shè)計采用模式3。

4.2 MMC卡命令及答復(fù)信號

所有MMC卡命令字長度均為6個字節(jié),傳輸從高位開始,且包含一個CRC校驗字。

命令字索引采用二進(jìn)制編碼。比如CMD0的索引位是000000,CMD39的索引位是100111。MMC卡命令字分為10個命令組,每組由多個命令字組成,完成MMC卡功能設(shè)定。SPI模式下的Sandisc MMC卡支持其中的6個命令組,可實現(xiàn)基本設(shè)定、數(shù)據(jù)塊讀、數(shù)據(jù)塊寫、擦除、寫保護(hù)、MMC卡鎖定功能。

MMC卡有多種應(yīng)答信號格式,傳輸從高位開始。SPI模式下,存在5種應(yīng)答信號格式,分別為R1、R2、R3、Busy、R1b。

接收到每個命令后,MMC卡都發(fā)送一個格式為R1的應(yīng)答信號,卡狀態(tài)查詢命令字CMD13除外。此應(yīng)答信號占1字節(jié),最高位為0,低7位為錯誤標(biāo)志。若某位為1,表示存在相應(yīng)錯誤。

Busy應(yīng)答信號長度為多個字節(jié)。各位都為0,表示卡正忙。存在非零位表明卡已經(jīng)準(zhǔn)備好接收下一命令。

R2格式應(yīng)答信號長度為2字節(jié),用于答復(fù)卡狀態(tài)查詢命令字CMD13。首字節(jié)格式同R1,第2個字節(jié)表示的錯誤類型。

R3格式應(yīng)答信號長度為5字節(jié),答復(fù)卡內(nèi)OCR豁口讀命令CMD58。首字節(jié)格式同R1,其余4字節(jié)為OCR豁口內(nèi)容。

R1b格式應(yīng)答信號包括兩部分,R1格式部分和Busy格式可選附加部分。

4.3 MMC在SPI模式下的傳輸時序

MMC在SPI協(xié)議下讀寫時序如圖5所示。主控制器發(fā)送讀/寫命令,當(dāng)收到OUT傳輸互上正確的應(yīng)答信號后,OUT/IN傳輸線開始讀/寫操作。

5 MMC卡與單片機(jī)接口實例

5.1 硬件電路設(shè)計

圖6為筆者采用Sandisc公司容量為32MB的MMC卡設(shè)計的便攜式數(shù)據(jù)采集系統(tǒng)的一部分。單片機(jī)采用美國Microchip公司推出的PIC16F73B。單片機(jī)的工作頻率為4MHZ,采用Port C的硬件SPI接口進(jìn)行MMC卡的讀寫操作。

5.2 軟件設(shè)計

訪問MMC卡存儲單元前,需要設(shè)定訪問塊長度。默認(rèn)長度為512字節(jié)。本設(shè)計是通過寫緩存芯片F(xiàn)M24CL64,達(dá)到512字節(jié)后轉(zhuǎn)入主存MMC的(硬件電路圖應(yīng)作相應(yīng)的修改),所以讀寫長度不再設(shè)定。MMC格式化為FAT文件系統(tǒng)的結(jié)構(gòu)后,數(shù)據(jù)以文件的形式為上位機(jī)所讀取。

MMC接口部分軟件設(shè)計流程如圖7所示。

5.3 MMC卡SPI初始化與寫子程序

因為MMC可以在兩種協(xié)議下工作,且默認(rèn)為MMC操作模式,所以必須經(jīng)過初始化才能在SPI模式下工作。初始化和寫子程序代碼見www.dpj.com.cn。

圖7

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉