運動控制器23:STM32的SDIO功能介紹1

SDIO主要功能

  • 支持1位總線贤姆,4位總線,8位總線脐往,8位總線可達(dá)48M傳輸速率蕊肥。
  • 支持MMC卡谒获,SD卡和CE-ATA等標(biāo)準(zhǔn)

SDIO總線拓?fù)?/h2>
  • 總線上的通信是通過傳送數(shù)據(jù)和命令實現(xiàn)的。

  • 基本操作:命令/響應(yīng)壁却,某些操作還有數(shù)據(jù)令牌批狱。

  • 在SD存儲器上是以數(shù)據(jù)塊的形式進(jìn)行傳輸。

  • 當(dāng)選擇SDIO工作在SD4位數(shù)據(jù)總線工作模式時候展东,我們選中的引腳如下:


    SD卡用到的引腳
  • 數(shù)據(jù)的傳輸操作流程如下:(以讀操作為例)

    • 主機發(fā)送命令赔硫,等待卡的響應(yīng)。
    • 卡響應(yīng)以后盐肃,數(shù)據(jù)從卡發(fā)送至主機爪膊,經(jīng)過CRC后(也可能是數(shù)據(jù)流,無需每次CRC).
    • 繼續(xù)發(fā)送下一個數(shù)據(jù)塊砸王。
    • 主機發(fā)送一個STOP的命令后推盛,卡發(fā)回一個響應(yīng),傳輸完成谦铃。

SDIO功能描述

  • 包含兩個部分耘成,一個是SDIO適配器,一個是AHB總線接口驹闰。
  • 所有的數(shù)據(jù)線都工作于推挽模式瘪菌。
  • 對于SD或SD I/O卡,時鐘頻率可以在0MHz至25MHz間變化嘹朗。
  1. 適配器,一共五個部分
  • 寄存器
  • 控制單元

電源管理和時鐘分頻

命令通道

發(fā)送命令和接收響應(yīng)
- 命令通道狀態(tài)機CPSM
- 命令固定為48位师妙,其中包括了開始和結(jié)束位,傳輸位一共3位
- 6位命令索引
- 32位參數(shù)
- 7位CRC
- 響應(yīng)則有兩種格式屹培,短格式如上命令格式默穴,長格式136位包括CID和CSD

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

  1. SD卡可以選擇4位總線或者1位總線怔檩,默認(rèn)為1位
  2. 數(shù)據(jù)通道狀態(tài)機:DPSM使能后進(jìn)入WAIT-S或者WAIT-R狀態(tài)
  • 發(fā)送狀態(tài):如果FIFO中有數(shù)據(jù),則發(fā)送出去
  • 接收狀態(tài)壁顶,收到起始位進(jìn)入接收狀態(tài)珠洗,從卡中讀數(shù)據(jù)
  1. DPSM一共6個狀態(tài),包括idle若专,busy以外,還有WAIT-S和WAIT-R蝴猪,以及sending和receiving狀態(tài)调衰。
  2. 數(shù)據(jù)令牌格式分成兩種,一種是塊數(shù)據(jù)自阱,一種是流數(shù)據(jù)嚎莉,塊數(shù)據(jù)包含了16位CRC,流數(shù)據(jù)則沒有沛豌。
  3. 數(shù)據(jù)為32位+起始2位+CRC16位趋箩。

數(shù)據(jù)FIFO

  1. FIFO大小為32*32,根據(jù)RXACT和TXACT來分配FIFO為發(fā)送還是接收
  2. 發(fā)送FIFO,AHB數(shù)據(jù)寫入FIFO加派,有TXFIFOF和TXFIFOE表示FULL和EMPTY叫确,當(dāng)8個以上的FIFO空時候,TXFIFOHE芍锦,此時可以通知DMA繼續(xù)填入數(shù)據(jù)竹勉,TXDAVL和TXUNDERR用于處理異常。
  3. 接收FIFO類似娄琉。

總線接口

下面的例子次乓,主機控制器使用CMD24(WRITE_BLOCK)從主機傳送512字節(jié)到MMC卡,關(guān)于CMD24命令孽水,后面有統(tǒng)一描述票腰。

  1. 執(zhí)行卡識別過程
  2. 提高SDIO_CK頻率
  3. 發(fā)送CMD7命令選擇卡
  4. 配置DMA2:清中斷,設(shè)置源地址和目標(biāo)地址女气,設(shè)置DMA2的其他參數(shù)杏慰,使能DMA
  5. 發(fā)送CMD24:
    • 設(shè)置數(shù)據(jù)長度
    • 卡的地址
    • 設(shè)置命令WRITE_BLOCK
    • 等待SDIO_STA中斷
    • 等待DBCKEND
  6. 查詢DMA通道的使能狀態(tài)

卡功能描述

卡識別模式

此模式只用到了CMD線,執(zhí)行流程:復(fù)位所有卡主卫,檢測電壓范圍逃默,分配地址RCA

卡復(fù)位

CMD0軟件復(fù)位后,所有的卡處于閑置模式簇搅,分配默認(rèn)地址完域,閑置模式下卡的輸出端為高阻狀態(tài)。

操作電壓范圍確認(rèn)

超出操作電壓的卡將進(jìn)入非激活狀態(tài)瘩将,存儲了CID和CSD的卡吟税,電壓正常后則可以通信凹耙。

卡識別過程

MMC和SD卡的識別略有不同,MMC卡就是數(shù)碼相機用的卡,而SD卡更小肠仪,而SDIO接口通常用于WIFI和藍(lán)牙肖抱,GPS模塊用,SD卡的識別過程如下:

  1. 總線被激活
  2. 主機發(fā)送SEND_OP_COND
  3. 主機得到響應(yīng)异旧,不兼容的卡設(shè)為非激活狀態(tài)
  4. ALL_SEND_CID廣播發(fā)送到激活卡
  5. 激活的卡發(fā)送CID意述,如果有多個競爭,則用線與仲裁
  6. 主機發(fā)送SET_RELATIVE_ADDR吮蛹,作為剛剛CID卡的地址荤崇,然后此卡進(jìn)行待機。
  7. 如果有多個卡潮针,則進(jìn)行下一次循環(huán)术荤。

寫數(shù)據(jù)塊

  1. 執(zhí)行CMD24-27時,主機寫入數(shù)據(jù)每篷,在數(shù)據(jù)塊后跟CRC
  2. WRITE_BL_LEN決定了數(shù)據(jù)長度瓣戚,如果CRC錯誤,則所有數(shù)據(jù)全部丟掉焦读。
  3. 如果卡已寫滿子库,或者有對齊等錯誤發(fā)生時進(jìn)行處理,主機可以隨時發(fā)送SEND_STATUS來查詢狀態(tài)吨灭。
  4. READY_FOR_DATA表示卡還可以繼續(xù)寫入數(shù)據(jù)刚照,主機才繼續(xù)寫入
  5. 有錯誤時,SDIO_D拉低喧兄。

讀數(shù)據(jù)塊

讀數(shù)據(jù)塊的操作有點同寫數(shù)據(jù)塊

數(shù)據(jù)流操作

只適用于多媒體卡无畔,SD卡和SDIO不支持這種最快速的操作。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末吠冤,一起剝皮案震驚了整個濱河市浑彰,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌拯辙,老刑警劉巖郭变,帶你破解...
    沈念sama閱讀 222,627評論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異涯保,居然都是意外死亡诉濒,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,180評論 3 399
  • 文/潘曉璐 我一進(jìn)店門夕春,熙熙樓的掌柜王于貴愁眉苦臉地迎上來未荒,“玉大人,你說我怎么就攤上這事及志∑牛” “怎么了寨腔?”我有些...
    開封第一講書人閱讀 169,346評論 0 362
  • 文/不壞的土叔 我叫張陵,是天一觀的道長率寡。 經(jīng)常有香客問我迫卢,道長,這世上最難降的妖魔是什么冶共? 我笑而不...
    開封第一講書人閱讀 60,097評論 1 300
  • 正文 為了忘掉前任乾蛤,我火速辦了婚禮,結(jié)果婚禮上比默,老公的妹妹穿的比我還像新娘幻捏。我一直安慰自己,他們只是感情好命咐,可當(dāng)我...
    茶點故事閱讀 69,100評論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著谐岁,像睡著了一般醋奠。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上伊佃,一...
    開封第一講書人閱讀 52,696評論 1 312
  • 那天窜司,我揣著相機與錄音,去河邊找鬼航揉。 笑死塞祈,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的帅涂。 我是一名探鬼主播议薪,決...
    沈念sama閱讀 41,165評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼媳友!你這毒婦竟也來了斯议?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 40,108評論 0 277
  • 序言:老撾萬榮一對情侶失蹤醇锚,失蹤者是張志新(化名)和其女友劉穎哼御,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體焊唬,經(jīng)...
    沈念sama閱讀 46,646評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡恋昼,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,709評論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了赶促。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片液肌。...
    茶點故事閱讀 40,861評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖芳杏,靈堂內(nèi)的尸體忽然破棺而出矩屁,到底是詐尸還是另有隱情辟宗,我是刑警寧澤,帶...
    沈念sama閱讀 36,527評論 5 351
  • 正文 年R本政府宣布吝秕,位于F島的核電站泊脐,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏烁峭。R本人自食惡果不足惜容客,卻給世界環(huán)境...
    茶點故事閱讀 42,196評論 3 336
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望约郁。 院中可真熱鬧缩挑,春花似錦、人聲如沸鬓梅。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,698評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽绽快。三九已至芥丧,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間坊罢,已是汗流浹背续担。 一陣腳步聲響...
    開封第一講書人閱讀 33,804評論 1 274
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留活孩,地道東北人物遇。 一個月前我還...
    沈念sama閱讀 49,287評論 3 379
  • 正文 我出身青樓,卻偏偏與公主長得像憾儒,于是被迫代替她去往敵國和親询兴。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,860評論 2 361