找回密碼
         注冊會員
        搜索附件  

        SDSDv17.pdf

         

        SD卡的SPI模式的初始化:
        SD卡的SPI模式的初始化順序,編寫該程序所需要的知識:

        (我承認這個資料很垃圾,比起民間的技術總結它的內容可謂又臭又長,但是作為基礎也要了解一下,SD協議不用看)
        清晰明了的(雖然這個是MMC卡的,但是在初始化的時候CMD0的時序是一樣的)
        電路:我用的SD卡的電路其實很簡單,參考SD卡的官方資料中的電路鏈接就可以的。
        供電問題:由于SD卡的電壓是3.3V,所以你的CPU必須支持3.3V的IO端口輸出。
        再來說一說雞毛蒜皮的細節:

        為了使SD卡初始化進入SPI模式,我們需要使用的命令有3個:CMD0,ACMD41,CMD55(使用ACMD類的指令前應先發CMD55,CMD55起到一個切換到ACMD類命令的作用)。
        為什么在使用CMD0以后不使用CMD1?CMD1是MMC卡使用的指令,雖然本文并不想討論MMC卡的問題,但是我還是要說:為了實現兼容性,上電或者發送CMD0后,應該首先發送CMD55+ACMD41確認是否有回應,如果有回應則為SD卡,如果等回應超時,則可能是MMC卡,再發CMD1確認。
        正確的回應內容應該是:
        CMD0——0x01(SD卡處于in-idle-state)
        CMD55——0x01(SD卡處于in-idle-state)
        ACMD41——0x00(SD卡跳出in-idle-state,完成初始化準備接受下一條指令)
        這里要說的是如果最后的回應內容還是0x01的話,可以循環發送CMD55+ACMD41,直到回應的內容0x00。
        在所有的指令中,唯獨CMD0特殊,在向SD卡發送以前需要向SD卡發送74+個時鐘。那么為什么要74個CLK呢?因為在上電初期,電壓的上升過程據SD卡組織的計算約合64個CLK周期才能到達SD卡的正常工作電壓他們管這個叫做Supply ramp up time,其后的10個CLK是為了與SD卡同步,之后開始CMD0的操作,嚴格按照此項操作,一定沒有問題。
        關于SD卡的SPI總線,在讀入數據時SD卡的SPI是CLK的上升沿輸入鎖存,輸出數據也是在上升沿。
        向SD卡寫入一個CMD或者ACMD指令的過程是這樣的:
        首先使CS為低電平,SD卡使能;其次在SD卡的Din寫入指令;寫入指令后還要附加8個填充時鐘,是SD卡完成內部操作;之后在SD卡的Dout上接受回應;回應接受完畢使CS為低電平,再附加8個填充時鐘。
        在SD卡的Din沒有數據寫入時,應使Din保持高電平。

        QQ|手機版|MCU資訊論壇 ( 京ICP備18035221號-2 )|網站地圖

        GMT+8, 2025-5-2 17:35 , Processed in 0.040539 second(s), 8 queries , Redis On.

        Powered by Discuz! X3.5

        © 2001-2025 Discuz! Team.

        返回頂部
        亚欧无码精品无码有性视频| 欧美久久亚洲精品| 国产在线精品一区二区不卡麻豆| 少妇人妻偷人精品无码视频新浪| 亚洲精品无码久久久久去q| 91久久婷婷国产综合精品青草 | 久久精品国产亚洲AV电影| 国产精品久久精品| 精品国产婷婷久久久| 91久久精品国产一区二区| 精品亚洲欧美高清不卡高清| 精品水蜜桃久久久久久久| 99久久亚洲综合精品网站| 久久久WWW免费人成精品| 国产精品毛片无码| 亚洲欧洲久久久精品| 国产成人精品日本亚洲| 精品无码专区亚洲| 人人妻人人澡人人爽人人精品97 | 500av大全导航精品| 国产乱人伦精品一区二区在线观看| 综合色桃花久久亚洲| 亚洲精品国产va在线观看蜜芽| 亚洲精品无码不卡在线播HE | 伊人 久久 精品| 91精品美女在线| 欧美精品亚洲人成在线观看| 久久精品人人槡人妻人人玩AV| 国产AⅤ精品一区二区三区久久| 性色爽爱性色爽爱网站| 亚洲之色在线v中文字幕app| 999国内精品永久免费视频| 久久精品中文字幕第23页| 久久国产精品一国产精品金尊 | 欧美影院在线观看| 3级黄性日本午夜精品| 99久久综合国产精品二区| 亚洲精品无码专区在线播放| 91精品国产综合久久精品| 亚洲精品tv久久久久久久久久| 国产精品久久久久影院色|