中文參考手冊(cè)章接口28sdmmc29_第1頁
中文參考手冊(cè)章接口28sdmmc29_第2頁
中文參考手冊(cè)章接口28sdmmc29_第3頁
中文參考手冊(cè)章接口28sdmmc29_第4頁
中文參考手冊(cè)章接口28sdmmc29_第5頁
已閱讀5頁,還剩79頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

DeviceGuideSD/MMC接口本章描述了SD/MMC模塊。XMC4500DeviceGuideSD/MMC接口本章描述了SD/MMC模塊。XMC4500使用以下SD和MMCSDMMCSDMMC參SDA2,SD2.00,20072SD12.00,20065SDE1,SDIO2.00,20071SD[14]3.31,4.2概XMC4500的安全數(shù)字/多媒體卡接口(SDMMC)SD/SDIO/MMCAHB總線之間的接口。CPU的編寫是為了支持SD,SDIO,SDHC和MMC卡,并且可以最大操作頻率為48MHz。對(duì)于SD卡SDMMC模塊能夠以最大24M字節(jié)/秒的速度傳輸,對(duì)于MMC卡可以最48M字節(jié)/特SDMMC主控在傳送級(jí)處理SDIO/SD協(xié)議,將數(shù)據(jù)打包,增加循環(huán)冗余檢測(cè)(CRC),開始SDMMCSDSDSDIOSDMMC3.31,4.2MMCSDMMCV1.2,2012-DeviceGuide?系統(tǒng)接—使用AHB從接口上的已編程的IOSD/SDIO/MMC卡接?14DeviceGuide?系統(tǒng)接—使用AHB從接口上的已編程的IOSD/SDIO/MMC卡接?14位SDSPISD/SDIO卡的多種長(zhǎng)度數(shù)據(jù)傳輸通過SDI/O卡,只讀卡和讀/MMC加和MMC移動(dòng)用于嵌入/移出MMC用于eMMC4.4卡的錯(cuò)誤校正碼(ECC)用于MMC卡的密碼保護(hù)———————————為數(shù)據(jù)從核心和卡之間傳輸?shù)膬蓚€(gè)處理FIFO表13- SDMMC應(yīng)用程框SDMMC方塊圖在圖13-1V1.2,2012-SDMMC使用案應(yīng)全全全數(shù)據(jù)傳輸(PC和應(yīng)用程序全DeviceGuide13-方塊DeviceGuide13-方塊V1.2,2012-DeviceGuide功能描SDMMCAHB接DeviceGuide功能描SDMMCAHB接AHBAHB和主控制器。SDMMCIO方法,在此ARMSDMMC_DATA_BUFFER傳輸數(shù)據(jù)。AHB目標(biāo)是擁有主控制寄存器SDMMC_HOST_CTRL,并且這些寄存器由CPU通過AHB目標(biāo)接口編程。IOAHB中斷控制SDMMC_INT_STATUS_NORM中設(shè)置任意中斷位,SDMMC器就會(huì)向嵌套中斷向量控制器(NVIC)生成中斷SDMMC主控制器使用兩個(gè)512字節(jié)的雙fifo(數(shù)據(jù)從CPU向SD/SDIO/MMC卡傳輸),數(shù)據(jù)將會(huì)交替地補(bǔ)充到第一和第二fifo。當(dāng)來自第一fifo的數(shù)據(jù)傳輸?shù)絊D/SDIO/MMC卡時(shí),第二fifo將被補(bǔ)充,反之亦然。兩個(gè)fifo交替地使用,用來儲(chǔ)存可能產(chǎn)生的最大通過量的數(shù)據(jù)。在讀取事務(wù)期間(數(shù)據(jù)從SD/SDIO/MMC卡向CPU傳輸),來自SD/SDIO/MMC卡的數(shù)據(jù)將會(huì)交替地寫入兩個(gè)fifo。當(dāng)來自第一fifo的數(shù)據(jù)傳輸入CPU時(shí),第二fifo將被補(bǔ)充,反之亦然,從而通過量會(huì)達(dá)到最大值。如果主控制器不DAT[0-7]總線監(jiān)命令控制 V1.2,2012-DeviceGuide電源控總線電源。系統(tǒng)依據(jù)主控制器有責(zé)任按照DeviceGuide電源控總線電源。系統(tǒng)依據(jù)主控制器有責(zé)任按照OCR卡和電源電壓的能力供應(yīng)SDSD總線電源的寫入,并且保持它的值為時(shí)鐘控時(shí)鐘生成塊由CPU依據(jù)在時(shí)鐘控制寄存器SDMMC_CLOCK_CTRL中編程值來生成SD流寫入和SDMMCfifo讀取/fifo,但在流事務(wù)中,驅(qū)對(duì)于流寫入和讀取事務(wù),推薦了向塊大小寄存器SDMMC_BLOCK_SIZE寫入最大fifo尺寸值fifo512SDMMC_BLOCK_SIZE512切換將會(huì)在寫入/讀V1.2,2012-DeviceGuide卡檢當(dāng)檢測(cè)到卡在窄槽內(nèi)插入或移出時(shí),狀態(tài)會(huì)通過中斷DeviceGuide卡檢當(dāng)檢測(cè)到卡在窄槽內(nèi)插入或移出時(shí),狀態(tài)會(huì)通過中斷方法發(fā)送 CPU。低電平卡信是否已在卡檢測(cè)期間設(shè)置為0。 經(jīng)插入。從0變到1SDMMC_INT_STATUS_NORM.CARD_INS=110生成了在正常中斷狀態(tài)寄存器SDMMC_INT_STATUS_NORM.CARD_REMOVAL=1中的卡移出中斷。注:LED燈表明卡正在被訪問。當(dāng)LED燈亮的時(shí)候,不要移出卡數(shù)據(jù)傳輸單塊傳單塊傳輸模式可以通過設(shè)置SDMMC_TRANSFER_MODE.MULTI_BLOCK_SELECT=0來選擇。塊的數(shù)目由在通過塊計(jì)數(shù)寄存器傳輸之前的主控制器規(guī)定,并且總是設(shè)置為1。多塊傳主控制器規(guī)定,并且可以設(shè)置為1或更大。無限塊傳務(wù)的細(xì)節(jié),參13.5.3節(jié)。V1.2,2012-DeviceGuide讀取/寫入控制器配置為與不帶內(nèi)部DMA的緩存數(shù)據(jù)端口寄存器SDMMC_DATA_BUFFERCPU用作主控者通過SDMMC_DATA_BUFFERDeviceGuide讀取/寫入控制器配置為與不帶內(nèi)部DMA的緩存數(shù)據(jù)端口寄存器SDMMC_DATA_BUFFERCPU用作主控者通過SDMMC_DATA_BUFFER開始寫入/寫入操SDMMC_DATA_BUFFER(fifo_1)fifo_1中準(zhǔn)備好時(shí),發(fā)送機(jī)開始發(fā)送在SD總線中的數(shù)據(jù)。當(dāng)傳遞sd總線中的數(shù)據(jù)時(shí),緩存寫入準(zhǔn)備中斷被發(fā)送到中斷控制器,以獲取第二個(gè)數(shù)據(jù)塊。CPUSDMMC_DATA_BUFFER將第二個(gè)數(shù)據(jù)fifo_2fifoSD側(cè)。只有在存儲(chǔ)空間能夠可靠接受數(shù)據(jù)塊時(shí),控制器才聲稱緩存寫入準(zhǔn)備中斷SDMMC_INT_STATUS_NORM.BUFF_WRITE_READY=1。讀取操當(dāng)在fifo中任何一個(gè)數(shù)據(jù)塊準(zhǔn)備好時(shí),都會(huì)聲稱緩存讀取準(zhǔn)備中斷。在接收緩存讀取準(zhǔn)備中斷上,CPU用作主控者通過緩存數(shù)據(jù)端口寄存器SDMMC_DATA_BUFFER(fifo_1)開始讀取數(shù)據(jù)。接收器只有當(dāng)fifo接收數(shù)據(jù)塊是空的時(shí)才會(huì)開始讀取來自SD總線的數(shù)據(jù)。當(dāng)兩個(gè)fifofifo已滿時(shí),也就是說,沒有空間接受來自卡的數(shù)據(jù)塊了,那么主控制器會(huì)停止指向卡的時(shí)鐘,因此超負(fù)荷運(yùn)行情況也不會(huì)在SD側(cè)發(fā)生。只有來自卡的SDMMC_INT_STATUS_NORM.BUFF_READ_READY=1中止事V1.2,2012-DeviceGuide異步中在異步中止DeviceGuide異步中在異步中止序列,除非當(dāng)前狀態(tài)寄存器中的命令禁止位(CMD)設(shè)置1,主驅(qū)動(dòng)器可以在SDMMC_PRESENT_STATE.COMMAND_INHIBIT_CMD=1同步中止命令。SDMMC_BLOCK_GAP_CTRL.STOP_AT_BLOCK_GAP=1V1.2,2012-DeviceGuide特殊命令00B懸掛命如果懸掛命令成功,主控制器會(huì)接管已被釋放的SDDeviceGuide特殊命令00B懸掛命如果懸掛命令成功,主控制器會(huì)接管已被釋放的SD總線,并且可能發(fā)出下一條使用DAT線的命令??刂破鲿?huì)撤銷讀取事務(wù)的讀取等待,并且停止為寫入事務(wù)檢測(cè)正被占用。中斷循環(huán)應(yīng)該在4位模式下開始。如果懸掛命令失敗,控制器會(huì)保持它的當(dāng)前狀態(tài),并且主驅(qū)動(dòng)器會(huì)通過設(shè)置在塊隙控制寄存器SDMMC_BLOCK_GAP_CTRL.CONTINUE_REQ=1的連續(xù)請(qǐng)求重啟傳注:如果讀取等待控制被禁用的話,不支持懸掛/重新開始。如果SD/SDIO卡支持讀取等待能,設(shè)置SDMMC_BLOCK_GAP_CTRL.READ_WAIT_CTRL=1可以啟用讀取等待控制重新開始注:如果禁用讀取等待控制,不支持懸掛/重新開始。如果SD/SDIO卡支持讀取等待功能,置SDMMC_BLOCK_GAP_CTRL.READ_WAIT_CTRL=1可以啟用讀取等待控制中止命V1.2,2012-DeviceGuide錯(cuò)誤檢循環(huán)冗余校驗(yàn)CRC7CRC16CRCSD/SDIO/MMCCRC。CRC7CRC16DeviceGuide錯(cuò)誤檢循環(huán)冗余校驗(yàn)CRC7CRC16CRCSD/SDIO/MMCCRC。CRC7CRC16SD/SDIO/MMCCRC當(dāng)CRC錯(cuò)誤生成時(shí),如果錯(cuò)誤中斷信號(hào)開啟是啟用的,就會(huì)觸發(fā)中斷。SDMMC_EN_INT_STATUS_ERR.CMD_CRC_ERR_EN=1為命令錯(cuò)誤校正碼錯(cuò)誤校正碼(ECC)可能包括有效負(fù)荷數(shù)據(jù)用以檢測(cè)卡上數(shù)據(jù)缺陷。ECC碼用于SDMMC服務(wù)請(qǐng)求SDMMC模塊提供服務(wù)請(qǐng)求輸出。服務(wù)請(qǐng)求輸出MMCI.SR0連接到嵌套向量中斷控制器調(diào)試行懸掛模式通過發(fā)出懸掛命令來激活。有關(guān)懸掛命令的詳細(xì)信息,請(qǐng)參考 節(jié)電源,復(fù)電SD/MMCbus_powSDMMCSD3.3V。如果SDSDMMC_POWER_CTRL.SD_BUS_POWER=11,復(fù)DeviceGuide由 ???DeviceGuide由 ?????.??軟件復(fù)位發(fā)生。當(dāng)向軟件復(fù)位寄存器1時(shí)SDMMC向SDMMC 和clk_sleep_out48MHz,由系統(tǒng)控制單元(SCU)模塊生—供給SD/MMC來自板(pad)clk_sdcard_out反饋時(shí)鐘常用于減少時(shí)鐘線中的板(pad)延遲DeviceGuide初始化和系統(tǒng)依賴設(shè)置SDMMCDeviceGuide初始化和系統(tǒng)依賴設(shè)置SDMMC數(shù)據(jù)圖13-展示了讀/寫數(shù)據(jù)傳輸?shù)牧鞒虉D數(shù)據(jù)傳輸13-DeviceGuide以下描述了如何設(shè)置讀/寫數(shù)據(jù)傳輸設(shè)DeviceGuide以下描述了如何設(shè)置讀/寫數(shù)據(jù)傳輸設(shè)置傳輸模式寄存器。設(shè)置多/單塊,塊計(jì)數(shù)啟用,數(shù)據(jù)傳輸方向,自動(dòng)注:當(dāng)寫入命令寄存器的更高字節(jié)時(shí),發(fā)出SD向清除位寫入SDMMC_INT_STATUS_NORM.CMD_COMPLETE=節(jié)節(jié)為讀取操作(從卡讀?。D(zhuǎn)到步驟(10-R)為寫入操作(向卡寫入),轉(zhuǎn)到步驟(10-W)DeviceGuide 讀取操SDMMC10-R.11-R.SDMMC_INT_STATUS_NORM.BUFF_READ_READYDeviceGuide 讀取操SDMMC10-R.11-R.SDMMC_INT_STATUS_NORM.BUFF_READ_READY=112-讀取塊數(shù)據(jù)(根據(jù)在步驟(1)中指定的字節(jié)的數(shù)目13-14-15-16- 17-R.13.11.4節(jié) 寫操SDMMC10-W.11-W.向清除位寫入=12-寫入塊數(shù)據(jù)(根據(jù)在步驟(1)中指定的字節(jié)數(shù)目13-14-15-16- SDMMC_INT_STATUS_NORM.TX_COMPLETE=117-W.13.11.4節(jié)DeviceGuide 中止事異步中1.檢查SDMMC_PRESENT_STATE.COMMAND_INHIBIT_CMD是否設(shè)置為1DeviceGuide 中止事異步中1.檢查SDMMC_PRESENT_STATE.COMMAND_INHIBIT_CMD是否設(shè)置為12.發(fā)出中止命令。SDMMC_COMMAND.CMD_TYPE同步中11BSDMMC_BLOCK_GAP_CTRL.STOP_AT_BLOCK_GAP=1SD等待傳輸完成中斷。SDMMC_INT_STATUS_NORM.TX_COMPLETE發(fā)出中止命令。SDMMC_COMMAND.CMD_TYPE=11B。SDMMC_SW_RESET.SW_RST_DAT_LINE=1SW_RST_CMD_LINE=1檢查SW_RST_DAT_LINE和SW_RST_CMD_LINE。如果都是01,重復(fù)步驟(6)或13-DeviceGuide寄存寄存器概表13-寄存器地表13-寄存器概塊寄存1傳輸模式命令寄存響應(yīng)寄存SDMMC_RESP0U,U,13-28SDMMC_RESP2DeviceGuide寄存寄存器概表13-寄存器地表13-寄存器概塊寄存1傳輸模式命令寄存響應(yīng)寄存SDMMC_RESP0U,U,13-28SDMMC_RESP2U,U,13-28SDMMC_COMMU,U,13-26U,U,13-231U,U,13-22U,13-20U,13-21簡(jiǎn)描地訪問模描述讀寫保保?;Y(jié)束地注48014801DeviceGuide寄存器概述(續(xù)13-數(shù)據(jù)緩沖端口寄存當(dāng)前狀態(tài)控制寄存中斷狀態(tài)正常中斷狀態(tài)寄13-53錯(cuò)誤中斷狀態(tài)寄13-59正常中斷狀態(tài)啟13-64SDMMC_HOSTU,U,13-40SDMMC_POWEU,U,13-42DeviceGuide寄存器概述(續(xù)13-數(shù)據(jù)緩沖端口寄存當(dāng)前狀態(tài)控制寄存中斷狀態(tài)正常中斷狀態(tài)寄13-53錯(cuò)誤中斷狀態(tài)寄13-59正常中斷狀態(tài)啟13-64SDMMC_HOSTU,U,13-40SDMMC_POWEU,U,13-42U,U,13-43U,U,13-46SDMMC_CLOCU,U,13-47U,U,13-50SDMMC_SW_RU,U,13-5113-33SDMMC_DATA_13-32簡(jiǎn)描地訪問模描讀寫SDMMC_RESP4U,U,13-28SDMMC_RESP6U,U,13-28DeviceGuide13-寄存器概述(續(xù)錯(cuò)誤狀態(tài)調(diào)試選擇SPI中斷支持寄13-80保保SDMMC_DEBUU,13-79保保自動(dòng)CMD錯(cuò)誤U,DeviceGuide13-寄存器概述(續(xù)錯(cuò)誤狀態(tài)調(diào)試選擇SPI中斷支持寄13-80保保SDMMC_DEBUU,13-79保保自動(dòng)CMD錯(cuò)誤U,13-75U,13-77保保簡(jiǎn)描地訪問模描讀寫U,U,13-66U,13-68U,13-70自動(dòng)CMD12錯(cuò)U,13-72保保DeviceGuide13-寄存器概述(續(xù)槽中斷狀存取限注:SDMMC寄存器只通DeviceGuide13-寄存器概述(續(xù)槽中斷狀存取限注:SDMMC寄存器只通過字訪問存取。在SDMMC寄存器上的半字或字節(jié)訪問將不會(huì)生成總槽中斷狀態(tài)寄存U,13-81保保簡(jiǎn)寄存器全地訪問模描讀寫DeviceGuide 寄存器描塊大小寄復(fù)位值DeviceGuide 寄存器描塊大小寄復(fù)位值字位類描傳輸塊大CMD25,CMD53指定了塊的大小。它只在沒有事 1 2 3 4 511 512字節(jié)(最大塊尺寸注:其他值被保0保124KDeviceGuide塊計(jì)數(shù)寄復(fù)位值DeviceGuide塊計(jì)數(shù)寄復(fù)位值字位類描當(dāng)前傳輸 1 2 65535DeviceGuideSD復(fù)位值DeviceGuideSD復(fù)位值字位類描仲裁命SD39-8DeviceGuide傳輸模式復(fù)位值字DeviceGuide傳輸模式復(fù)位值字位類描00保1塊計(jì)數(shù)啟 禁 啟CMD 自動(dòng)CMD12注:保留自動(dòng)CMD12CMD12停止操作的多塊讀寫命令。當(dāng)該字段置為01B時(shí),主控制器在CMD12錯(cuò)誤指向一個(gè)自動(dòng)CMD12錯(cuò)誤CMD12的DeviceGuide字位類描4數(shù)據(jù)傳輸DATDeviceGuide字位類描4數(shù)據(jù)傳輸DAT 5多/單塊選DAT 單 多6CE-ATA設(shè)備的命令完成信號(hào)啟 0r保DeviceGuide傳輸類型傳輸類型的確13-多/單塊選DeviceGuide傳輸類型傳輸類型的確13-多/單塊選塊計(jì)數(shù)啟塊計(jì)功0任任10任11非11零DeviceGuide命令寄存復(fù)位值字位DeviceGuide命令寄存復(fù)位值字位類描響應(yīng)類型 響應(yīng)長(zhǎng)度4802r保3CRC如果該位置為1CRC錯(cuò)誤。若該位置為0,不檢查CRC位段。 禁 啟4命令指針若該位置為10,不檢測(cè)指針字段。0B1BDeviceGuide字位類描5當(dāng)前數(shù)據(jù)該位置為DeviceGuide字位類描5當(dāng)前數(shù)據(jù)該位置為1線傳輸。在下列情況下,該位置為僅用CMD線(CMD52)信號(hào)(R1b或者R5bCMD38)0B無當(dāng)前數(shù)據(jù)1B當(dāng)前數(shù)據(jù)命令類 掛 中命令指該位設(shè)置為命令號(hào)(CMD0-63,ACMD0-0r保DeviceGuide 13- 參數(shù)和響應(yīng)類型名稱之間關(guān)13- 13-6描述了為每個(gè)響應(yīng)類型從SD總線到該寄存器的命令響應(yīng)映射圖。在表中,DeviceGuide 13- 參數(shù)和響應(yīng)類型名稱之間關(guān)13- 13-6描述了為每個(gè)響應(yīng)類型從SD總線到該寄存器的命令響應(yīng)映射圖。在表中,R[]代表總線上發(fā)送的響應(yīng)數(shù)據(jù)的位范圍,RESPONSE[]代表了帶有響應(yīng)寄存器的位范圍為每個(gè)響應(yīng)類型定義的響應(yīng)13-響應(yīng)類響應(yīng)意響應(yīng)字響應(yīng)寄存R1R1b正常響應(yīng)R1b自動(dòng)響應(yīng)自動(dòng)CMD12R2CIDCSD寄存器包含CIDCSDR3OCR寄存器OCRR4OCR寄存器I/O等的OCR響應(yīng)類指針檢查CRC檢測(cè)啟響應(yīng)類型0001001111DeviceGuide13-為每個(gè)響應(yīng)類型定義的響應(yīng)位(續(xù)0DeviceGuide13-為每個(gè)響應(yīng)類型定義的響應(yīng)位(續(xù)0字位類描r響應(yīng)復(fù)位后該位初始化為0r響應(yīng)復(fù)位后該位初始化為0響應(yīng)類響應(yīng)意響應(yīng)字響應(yīng)寄存R5,SDIOR6響應(yīng)新發(fā)行的RCA[31:16]DeviceGuide2復(fù)位值4復(fù)位值字DeviceGuide2復(fù)位值4復(fù)位值字位類描r響應(yīng)復(fù)位后該位初始化為0r響應(yīng)復(fù)位后該位初始化為0字位類描r響應(yīng)復(fù)位后該位初始化為0r響應(yīng)復(fù)位后該位初始化為0DeviceGuide6復(fù)位值:0000DeviceGuide6復(fù)位值:0000字位類描r響應(yīng)復(fù)位后該位初始化為0。r響應(yīng)復(fù)位后該位初始化為0DeviceGuide數(shù)據(jù)緩沖復(fù)位值0000DeviceGuide數(shù)據(jù)緩沖復(fù)位值0000字位類描DATA_B數(shù)據(jù)緩主機(jī)控制緩沖區(qū)能通過該32問DeviceGuide當(dāng)前狀態(tài)復(fù)位值DeviceGuide當(dāng)前狀態(tài)復(fù)位值DeviceGuide字位類描DeviceGuide字位類描0r如果該位為0,表明CMDCMDSD命令。命令寄存器(00Fh)寫入后,該位立即設(shè)置。當(dāng)接收命令響應(yīng)時(shí),清除該位。即使命令禁止(DAT)設(shè)置為1,如果該位為0CMD線的命令仍能發(fā)布。10的改變?nèi)绻骺刂破饔捎诿顩_突錯(cuò)誤或者由于自動(dòng)CMD2命令未發(fā)布錯(cuò)誤不能發(fā)布命令,該位將保持為1并且不會(huì)設(shè)置命令完成。發(fā)布自動(dòng)CMD12狀自動(dòng)CMD12包含兩個(gè)響應(yīng)。在這種情況下,該位不會(huì)被響應(yīng)CMD12清除,但是會(huì)被讀/寫命令響應(yīng)清除。發(fā)布自動(dòng)CMD12狀態(tài)不能從該位讀取。因此如果在自動(dòng)CMD12運(yùn)行期間發(fā)布一個(gè)命令,主控制器將管理發(fā)布兩個(gè)命令:CMD12和由命令寄存該位在復(fù)位時(shí)初始化為01r命令禁止如果DAT線有效或者讀傳輸有效設(shè)置為1狀態(tài)位。如果該位是0,表明主控制器能發(fā)布下個(gè)SD命令。帶有正被占用信號(hào)的命令屬于命令禁止(DAT)(R1b,R5b類型)10的變化在注:在該位10的轉(zhuǎn)變后,SD主驅(qū)動(dòng)器能為懸掛事務(wù)保存在000H-00DH的寄存器中。0BDAT1BDAT線的命令0。DeviceGuide字位類描2rDATDeviceGuide字位類描2rDATDAT線在SD1) DAT DAT該位在復(fù)位時(shí)初始化為00r保8r寫傳輸有1到塊隙控制寄存器中的繼續(xù)請(qǐng)求位來重新啟CRC狀態(tài)后。CRC狀態(tài)后。果,當(dāng)該位變?yōu)?就會(huì)產(chǎn)生一個(gè)塊隙事件中斷。 該位在復(fù)位時(shí)初始化為0DeviceGuide字位類描DeviceGuide字位類描9r讀傳輸有1到塊隙控制寄存器中的繼續(xù)請(qǐng)求位來重新啟隙請(qǐng)求設(shè)置為1的結(jié)果,沒有發(fā)送當(dāng)前的塊傳輸時(shí)。當(dāng)該位變?yōu)?時(shí),就會(huì)產(chǎn)生一個(gè)傳輸完成中 該位在復(fù)位后初始化為0r緩沖寫啟該狀態(tài)用于非DMA1,數(shù)據(jù)可寫到緩沖區(qū)。當(dāng)所有數(shù)據(jù)塊都寫到緩沖區(qū)時(shí),該位從100,并且產(chǎn)生緩沖寫準(zhǔn)備好中斷。 該位在復(fù)位后初始化為0DeviceGuide字位類描r緩沖讀啟該狀態(tài)用于非DeviceGuide字位類描r緩沖讀啟該狀態(tài)用于非DMA據(jù)存在于主邊緩沖狀態(tài)。如果此位是1在緩沖區(qū)里存在可讀數(shù)據(jù)。當(dāng)所有塊數(shù)據(jù)從緩沖區(qū)里讀取,該位從1變?yōu)?。當(dāng)所有數(shù)據(jù)塊在緩沖區(qū)里準(zhǔn)備好并且產(chǎn)生緩沖讀準(zhǔn)備好中斷,該位從0變?yōu)?。 該位在復(fù)位后初始化為00r保0r卡插01在正常中斷狀態(tài)寄存器里該位從1變到0產(chǎn)生一個(gè)移除,主控制器會(huì)在電源控制寄存器里清除SD總線電源和在時(shí)鐘控制寄存器里清除SD時(shí)鐘啟用。SD0B1Br卡狀態(tài)穩(wěn)該位用于測(cè)試。如果該設(shè)置為01,卡檢測(cè)管腳電平0B1B無卡或者插入復(fù)位:1BDeviceGuide在讀事務(wù)SD總線上執(zhí)行。在正常中斷狀態(tài)寄存器中改變?cè)摖顟B(tài)值從1為0,會(huì)產(chǎn)生DeviceGuide在讀事務(wù)SD總線上執(zhí)行。在正常中斷狀態(tài)寄存器中改變?cè)摖顟B(tài)值從1為0,會(huì)產(chǎn)生一個(gè)塊隙事件中斷,作為結(jié)果設(shè)置了停止在塊隙請(qǐng)字位類描r卡檢測(cè)管SDCD r寫保護(hù)翻轉(zhuǎn)管腳水寫保護(hù)切換支持存儲(chǔ)器和組合(combo)卡。該位映SDWP 寫保護(hù)(SDWP 寫啟用(SDWPr線信號(hào)電 D23-DAT[3]D22-DAT[2]D21-DAT[1]D20-復(fù)位rCMD線信號(hào)電 試復(fù)位r線信號(hào)電 D28-DAT[7]D27-DAT[6]D26-DAT[5]D25-復(fù)位0r保DeviceGuide當(dāng)寫一個(gè)1 SDDeviceGuide當(dāng)寫一個(gè)1 SD在寫事務(wù)當(dāng)寫一個(gè)1 SD卡釋放最后數(shù)據(jù)塊的寫正被占用時(shí)。如果SD8SD時(shí)鐘驅(qū)動(dòng)正被占用信 命令正被該狀態(tài)指示是否一個(gè)命令顯示正被占用(除了用于存儲(chǔ)器的擦除命令)SD總線上執(zhí)行。 0注:當(dāng)DAT線在數(shù)據(jù)傳輸期間處于正被占用狀態(tài)時(shí),主驅(qū)動(dòng)器能發(fā)布(給存儲(chǔ)器)以及cmd52(給SDIO)。當(dāng)命令禁止(CMD)設(shè)置為0時(shí),可以發(fā)布這命令。當(dāng)命令禁止(DAT)設(shè)置為0時(shí),可以發(fā)布其他命令DeviceGuide主控制寄復(fù)位值字DeviceGuide主控制寄復(fù)位值字位類描0LED該位用于警告用戶當(dāng)SD出卡。如果軟件準(zhǔn)備發(fā)布多個(gè)SD命令,在所有事 LED LED1數(shù)據(jù)傳輸寬度(SD1orSD 1 42高速啟 0(默認(rèn)),控制器在SD時(shí)鐘(高達(dá)25MHz/20MHz給MMC)CMDDAT線。如果該位設(shè)置為1SD時(shí)鐘(SD50MHz/MMC高達(dá)52MHz)CMD線和DAT線。 DeviceGuide字位類描0保DeviceGuide字位類描0保6卡檢測(cè)測(cè)1intsts 無 7卡檢測(cè)信 選擇SDCD(正常使用) DeviceGuideSD電源控制復(fù)位值字位類DeviceGuideSD電源控制復(fù)位值字位類描0SD設(shè)置該位前,SDSD SD總線電壓選 SD 3.3V(平頂注保留4硬件復(fù) 號(hào)0r保DeviceGuide塊隙控制復(fù)位值DeviceGuide塊隙控制復(fù)位值字位類描0停止在塊DMA一個(gè)事務(wù)。直到傳輸完成設(shè)置為1,表明下個(gè)傳輸完成主驅(qū)動(dòng)器將離開,該位設(shè)置為1。清除停止在塊隙停止在塊隙請(qǐng)求,但對(duì)于讀傳輸,它需要SD卡支持除非SD卡支持讀等待和已經(jīng)設(shè)置讀等待控制為1。位設(shè)置為1,主驅(qū)動(dòng)器將不會(huì)寫數(shù)據(jù)到緩沖數(shù)據(jù)端口 停DeviceGuide字位類描1繼續(xù)DeviceGuide字位類描1繼續(xù)請(qǐng)0,1.DAT012.0是沒有必要的。如果停止在塊隙請(qǐng)求設(shè)置為1,任何對(duì)此位的寫都將被忽 忽 重2讀等待控SDIODAT[2]SD時(shí)鐘SDSDIOCCCR置為1,否則DAT線沖突可能發(fā)生。如果該位設(shè)置為 3塊間隙中該位僅在SDIO卡41啟用多塊傳輸中塊隙的中斷SD卡不能在多位塊傳輸期間產(chǎn)生中斷信0SD卡插DeviceGuideSD卡接受了它,一個(gè)重新開始命令將用于重啟傳字位類DeviceGuideSD卡接受了它,一個(gè)重新開始命令將用于重啟傳字位類描4SPI模SPI SD SPI0保07r保DeviceGuideSD總線電源為1,主驅(qū)動(dòng)器將維持SD總線上的電壓。喚醒控制復(fù)位值字DeviceGuideSD總線電源為1,主驅(qū)動(dòng)器將維持SD總線上的電壓。喚醒控制復(fù)位值字位類描0關(guān)于卡上喚醒事件啟CISFN_WUS(喚醒支持)設(shè)置為1,該位就能設(shè)置為1。 禁 啟1關(guān)于SD卡插入喚醒事件啟醒事件。CISFN_WUS(喚醒支持)不會(huì)影響此 禁 啟2關(guān)于SD卡移除的喚醒事件醒事件。CISFN_WUS(喚醒支持)不影響此 禁 啟0r保DeviceGuideSD時(shí)鐘控制復(fù)位值DeviceGuideSD時(shí)鐘控制復(fù)位值字位類功0內(nèi)部時(shí)鐘事件時(shí),該位設(shè)置為0。主控制器將停止它的內(nèi)部時(shí)該位設(shè)置為1時(shí),時(shí)鐘開始震蕩。當(dāng)時(shí)鐘振蕩穩(wěn)定時(shí),主控制器將在該寄存器中設(shè)置內(nèi)部時(shí)鐘穩(wěn)定為0B1B1r內(nèi)部時(shí)鐘1后,SD1。注:為需要設(shè)置時(shí)間的時(shí)鐘振蕩器使PLL是有用 該位在復(fù)位時(shí)初始化為0DeviceGuide字位類功SDCLO2SDDeviceGuide字位類功SDCLO2SD時(shí)鐘啟0SDCLK0SDCLK頻率選擇。那么,主控制器將維持同一時(shí)鐘頻率直到SDCLK停止(停止于SDCLK=0處)。如果主控制器檢測(cè)到無卡狀態(tài),清0B1B0r保0保DeviceGuide字位類DeviceGuide字位類描SDCLK該寄存器用于選擇SDCLKSD時(shí)鐘的基準(zhǔn)時(shí)鐘頻率的分8 基準(zhǔn)時(shí)鐘(10MHz- 00HSD時(shí)鐘的最高頻率。在設(shè)置多位時(shí),SD時(shí)鐘(48MHz)來計(jì)算。25MHz分頻器400kHz分頻器SD最大頻率=48MHz(基準(zhǔn)時(shí)鐘MMC最大頻率=48MHz(基準(zhǔn)時(shí)鐘最小頻率=187.5KHz(48MHz/256),MMC也一DeviceGuide超時(shí)控制復(fù)位值DeviceGuide超時(shí)控制復(fù)位值字位類描數(shù)據(jù)超時(shí)DATSDTMCLK來產(chǎn)生。在設(shè)置該寄存器時(shí), TMCLK* TMCLK* TMCLK* 0r保DeviceGuide 軟件復(fù)位復(fù)位值DeviceGuide 軟件復(fù)位復(fù)位值字位類描SW_RST0軟件全復(fù)1CMD線的軟件正常中斷狀態(tài)寄存 工 復(fù)DeviceGuide字位類描_DAT_LIDeviceGuide字位類描_DAT_LI2DAT線軟件復(fù)緩沖寫啟用讀傳輸有效寫傳輸有效DAT正常中斷狀態(tài)寄存0B1B0r保DeviceGuide1。除了卡中斷和錯(cuò)誤中斷外的所有位,DeviceGuide1。除了卡中斷和錯(cuò)誤中斷外的所有位, 正常中斷狀態(tài)寄存復(fù)位值字位類描0命令完 CMD12)的結(jié)束位時(shí)1,它將被認(rèn)為是沒有正確接收響應(yīng)。 DeviceGuide字位類DeviceGuide字位類描1傳輸完在一個(gè)讀/寫事務(wù)完成時(shí)設(shè)置該位在 并且數(shù)據(jù)傳輸完成時(shí)。(SD卡和正1,會(huì)認(rèn)為數(shù)據(jù)傳輸完成。0B1B該位可用軟件寫1到此位清除。軟件寫0到此位無DeviceGuide字位類描2塊隙事DeviceGuide字位類描2塊隙事該位在DAT線有效狀態(tài)(在事務(wù)停止在SD總線計(jì)該位在讀傳輸有效狀態(tài)的下降沿(SD總線的計(jì)時(shí)CRC狀態(tài)后)置位。 03保4緩沖寫準(zhǔn)01 5緩沖讀準(zhǔn)01,就會(huì)設(shè)置該狀態(tài)。 10DeviceGuide字位類描6DeviceGuide字位類描6卡插如果當(dāng)前狀態(tài)寄存器的卡插入從011來清除該狀態(tài)時(shí),應(yīng)該 7卡移如果當(dāng)前狀態(tài)寄存器的卡插入從101來清除該狀態(tài)時(shí),應(yīng)該 DeviceGuide字位類描8r卡中DeviceGuide字位類描8r卡中1SD時(shí)4位模式下,在正常中斷狀態(tài)寄存器中的卡中斷狀態(tài)啟用將設(shè)置為0主系統(tǒng)。在卡中斷完成后(SD卡里的復(fù)位因素和沒有聲明中斷信號(hào)),1并且開始再當(dāng)卡處于槽中時(shí),支持由DAT[1]檢測(cè)的中斷。0B無卡中斷。1B0r保0保r錯(cuò)誤中 該位在復(fù)位后初始化為DeviceGuide13-傳輸完成和數(shù)據(jù)超時(shí)錯(cuò)誤間的13-命令完成和命令超時(shí)DeviceGuide13-傳輸完成和數(shù)據(jù)超時(shí)錯(cuò)誤間的13-命令完成和命令超時(shí)命令完命令超時(shí)狀態(tài)的意00任164SDCLK10傳輸完數(shù)據(jù)超時(shí)狀態(tài)的意00011任DeviceGuide1寫1清除該位,寫0錯(cuò)誤DeviceGuide1寫1清除該位,寫0錯(cuò)誤中斷狀態(tài)寄存復(fù)位值字位類描0命令超時(shí)64SDCLK有響應(yīng)返回時(shí)發(fā)生。如果主控制檢測(cè)到一個(gè)CMD線沖突,在此種情況下還應(yīng)該設(shè)置命令CRC錯(cuò)誤。因?yàn)橹骺刂破鲗⒔K止該命令,設(shè)置該位不用等待64個(gè)SDCLK周期。0B1B該位能用軟件寫1到此位清除。軟件寫0到此位無DeviceGuide字位類描1CRCDeviceGuide字位類描1CRCCRC應(yīng)和命令超時(shí)錯(cuò)誤設(shè)置為0,當(dāng)在命令響應(yīng)里檢測(cè)到一個(gè)CRT錯(cuò)誤時(shí),該位設(shè)置為1。當(dāng)發(fā)布一個(gè)命令CMDCMD線CMD1電平,但是在SDCLKCMD0電平,那么主控制器將終止命令(停止驅(qū)動(dòng)CMD線)并且設(shè)置該位為1。命令超時(shí)錯(cuò)誤也將設(shè)置為1用來區(qū)分CMD線沖突。0B1BCRC102結(jié)束位錯(cuò)在檢測(cè)到命令響應(yīng)結(jié)束位為0 10到此位無3命令指針 錯(cuò)10DeviceGuide字位類描4數(shù)DeviceGuide字位類描4數(shù)據(jù)超時(shí)用于R1b,R5b類型的正被占用超時(shí)在寫CRC狀態(tài)位后的正被占用超時(shí)CRC狀態(tài)超時(shí) 1B105CRC在當(dāng)利用DAT線傳輸讀數(shù)據(jù)時(shí)檢測(cè)到CRC 狀態(tài)的值不為”010”時(shí)產(chǎn)生 錯(cuò)106數(shù)據(jù)結(jié)束DAT0CRC 錯(cuò)10DeviceGuide字位類描7電流限制SDDeviceGuide字位類描7電流限制SDSD總線供電。如果主控制器支持電流限制功能,它能通過停止給卡供電方式來自防止非法1意味著SD0意0。0B1B108自動(dòng)CMDCMD12CMD誤狀態(tài)寄存器里的D00-D04其中一位從0變?yōu)?時(shí),設(shè)置該位。至于CMD12,不僅在自動(dòng)CMD12CMD12由于先前命令1。0B1B100保讀為0;必須寫0r保0保DeviceGuide13-命錯(cuò)誤和命令超時(shí)之間命令錯(cuò)命令超時(shí)錯(cuò)誤類0DeviceGuide13-命錯(cuò)誤和命令超時(shí)之間命令錯(cuò)命令超時(shí)錯(cuò)誤類000110響應(yīng)CRC11CMD字位類描CEATA_Ceata錯(cuò)誤狀A(yù)TA命令由于設(shè)備遇到錯(cuò)誤條件發(fā)生終止時(shí)發(fā)生 錯(cuò)100r保DeviceGuide 且可以保持其值在觸發(fā)器(flip-flop)中。如果卡中斷狀態(tài)啟用設(shè)置為0,主控制器將清除DeviceGuide 且可以保持其值在觸發(fā)器(flip-flop)中。如果卡中斷狀態(tài)啟用設(shè)置為0,主控制器將清除正常中斷狀態(tài)寄存復(fù)位值字位類描0命令完成 屏 啟1傳輸完成 屏 啟2塊隙事件 屏 啟3保4緩沖寫準(zhǔn)備好狀態(tài) 屏 啟5緩沖讀準(zhǔn)備好狀態(tài) 屏 啟DeviceGuide字位類描CARD_IN6卡插入狀 屏DeviceGuide字位類描CARD_IN6卡插入狀 屏 啟7卡移出狀 屏 啟CARD_IN8卡中斷狀如果該位設(shè)置為01時(shí),重新開始。為卡中斷服務(wù)前主驅(qū)動(dòng)器可以清除0B1B0保FIXED_Tr斷DeviceGuide1CMD1錯(cuò)誤中斷狀態(tài)啟用寄復(fù)位值DeviceGuide1CMD1錯(cuò)誤中斷狀態(tài)啟用寄復(fù)位值字位類描0命令超時(shí)錯(cuò)誤狀態(tài) 屏 啟1命令CRC錯(cuò)誤狀態(tài)啟 屏 啟2命令結(jié)束位錯(cuò)誤狀態(tài) 屏 啟3命令指針錯(cuò)誤狀態(tài) 屏 啟4數(shù)據(jù)超時(shí)錯(cuò)誤狀態(tài) 屏 啟DeviceGuide字位類描5數(shù)據(jù)CRC錯(cuò)誤狀態(tài)啟 屏 啟6DeviceGuide字位類描5數(shù)據(jù)CRC錯(cuò)誤狀態(tài)啟 屏 啟6數(shù)據(jù)結(jié)束位錯(cuò)誤狀態(tài) 屏 啟7電流限制錯(cuò)誤狀態(tài) 屏 啟8CMD12 屏 啟0保0r保目標(biāo)響應(yīng)錯(cuò)誤狀態(tài) 屏 啟Ceata錯(cuò)誤狀態(tài) 屏 啟0r保DeviceGuide1到正常中斷信號(hào)啟用寄復(fù)位值字位類描DeviceGuide1到正常中斷信號(hào)啟用寄復(fù)位值字位類描0命令完成 屏 啟1傳輸完成 屏 啟2塊間隙事件信號(hào)啟 屏 啟3保4緩沖寫準(zhǔn)備好信號(hào) 屏 啟5緩沖讀準(zhǔn)備好信號(hào) 屏 啟DeviceGuide字位類描CARD_IN6卡插入信 屏DeviceGuide字位類描CARD_IN6卡插入信 屏 啟7卡移除信 屏 啟CARD_IN8卡中斷信 屏 啟0保FIXED_Tr斷DeviceGuide1到錯(cuò)誤中斷信號(hào)啟用寄復(fù)位值字位DeviceGuide1到錯(cuò)誤中斷信號(hào)啟用寄復(fù)位值字位類描0命令超時(shí)錯(cuò)誤信號(hào) 屏 啟1命令CRC錯(cuò)誤信號(hào)啟 屏 啟2命令結(jié)束位錯(cuò)誤信號(hào) 屏 啟3命令指針錯(cuò)誤信號(hào) 屏 啟4數(shù)據(jù)超時(shí)錯(cuò)誤信號(hào) 屏 啟DeviceGuide字位類描5數(shù)據(jù)CRC錯(cuò)誤信號(hào)啟 屏 啟6DeviceGuide字位類描5數(shù)據(jù)CRC錯(cuò)誤信號(hào)啟 屏 啟6數(shù)據(jù)結(jié)束位錯(cuò)誤信號(hào) 屏 啟7當(dāng)前限制錯(cuò)誤信號(hào) 屏 啟8 屏 啟0保0r保目標(biāo)響應(yīng)錯(cuò)誤信號(hào) 屏 啟Ceata錯(cuò)誤信號(hào)啟 屏 啟0r保DeviceGuide該寄存器用于指示自動(dòng)CMD12的CMD12CMD12CMDCMD復(fù)位值DeviceGuide該寄存器用于指示自動(dòng)CMD12的CMD12CMD12CMDCMD復(fù)位值字位類描0rCMD12,不會(huì)設(shè)置該位。設(shè)0B1B該位在復(fù)位后被初始化為0EOUT_ER1rCMD64SDCLK響應(yīng)返回時(shí)發(fā)生。如果該位設(shè)置為1(D04-D02)無意義 超該位在復(fù)位后初始化為0DeviceGuide字位類描2rCMDCRC DeviceGuide字位類描2rCMDCRC 產(chǎn)生CRC該位在復(fù)位后初始化為03r在檢測(cè)到命令響應(yīng)結(jié)束位為0 該位在復(fù)位后初始化為04rCMD 錯(cuò)該位在復(fù)位后初始化為00r保7r通過CMD12錯(cuò)誤不能發(fā)布設(shè)置此位為1意味著在該寄存器中由于一個(gè)自動(dòng) 錯(cuò)誤(D04

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論