【STM32】SD卡讀寫(一)-初步認識SD卡

下面是幾種卡的類型(容量)


【STM32】SD卡讀寫(一)-初步認識SD卡

下面來說明一下SD卡的引腳


【STM32】SD卡讀寫(一)-初步認識SD卡

SD卡的讀取方式有兩種:SDIO、SPI

【SDIO模式】

CLK:時鐘,通信過程需要的東西,沒這個東西,數據會不穩定

CMD:命令,可下達命令,例如讀取SD卡的信息,或是寫入數據等等

DAT0、1、2、3:數據線

VCC、VSS:電源和地

【SPI模式】

CLK:時鐘,理由同SDIO裡面的CLK

MOSI:命令或數據輸出到SD卡

MISO:SD卡傳輸數據到主機

CS:片選,選擇是否要操作當前的SD卡

SDIO的存儲速度會高於SPI,假設都是SD卡傳輸數據到主機

SPI只有MISO這1條數據線,而SDIO有4條數據線(當然,SDIO也可以只使用1條數據線來傳輸)

另外,SDIO相當於總線,它可以掛載很多SD卡,但是STM32F4只支持一張SD卡

在與SD卡操作的過程中,會有兩種不同的操作頻率

第一種:識別SD卡階段的時鐘頻率FOD,最高為400KHz

第二種:後續數據傳輸的時鐘頻率FPP,默認最高為25MHz,還可以透過寄存器修改,修改後最高為50MHz

下面介紹SD卡的8個寄存器


【STM32】SD卡讀寫(一)-初步認識SD卡

CID:卡識別寄存器,一些製造商ID、版本、日期等相關訊息

RCA:相對卡地址寄存器,初始化時,動態由主機確定,後續掛載在SDIO總線上時,透過RCA找到對應的SD卡來進行操作

DSR:驅動級寄存器,配置卡的輸出驅動

CSD:卡的特殊數據寄存器,SD卡的操作信息

SCR:SD配置寄存器,SD卡的特殊信息

OCR:操作條件寄存器,例如SD卡的電壓信息

SSR:SD狀態寄存器,SD卡專有的特徵信息

CSR:SD卡狀態寄存器,SD卡的狀態信息


分享到:


相關文章: