勵志

勵志人生知識庫

初始化sd卡

初始化SD卡的過程通常涉及以下步驟:

確保SD卡支持CMD8命令,因為只有2.0及以後的SD卡才支持CMD8命令。

使用CMD8命令時,需要告訴SD卡主機的供電電壓範圍是2.7至3.6V。如果SD卡支持該電壓範圍,它將通過CMD8的回響來確認。

在傳送CMD8命令之前,需要先傳送CMD55ACMD41命令,以確認SD卡的操作電壓範圍和是否支持高容量卡(SDHC)。

傳送CMD2命令來獲取CID暫存器數據,這將返回包含CID信息的136位回響。

傳送CMD3命令設定RCA(卡相對地址),對於SD卡,這將返回一個新的RCA給主機,以便主機定址。對於MMC卡,RCA由主機設定。

傳送CMD9命令來獲取SD卡的CSD暫存器內容,包括卡容量和扇區大小等重要信息。

傳送CMD7命令來選中並開始與SD卡的讀寫操作。

此外,在傳送CMD命令後,需要注意補償時鐘,並在讀暫存器位時保持select腳為低電平。在某些情況下,可能還需要傳送其他命令來進一步判斷SD卡的類型(如標準2.0卡SCSD或大容量HCSD),並確保在低速模式下傳送超過74個時鐘脈衝。