<var id="fnfpo"><source id="fnfpo"></source></var>
<rp id="fnfpo"></rp>

<em id="fnfpo"><object id="fnfpo"><input id="fnfpo"></input></object></em>
<em id="fnfpo"><acronym id="fnfpo"></acronym></em>
  • <th id="fnfpo"><track id="fnfpo"></track></th>
  • <progress id="fnfpo"><track id="fnfpo"></track></progress>
  • <tbody id="fnfpo"><pre id="fnfpo"></pre></tbody>

  • 電子工程網

    標題: 一個關于FATFS 讀SDHC的問題 [打印本頁]

    作者: chichu9825    時間: 2010-5-28 08:57
    標題: 一個關于FATFS 讀SDHC的問題
    我在STM32上移植了一個FATFS R0.07c的文件系統,一直工作正常,手里的兩個SD卡都沒問題。昨天我買了一個新的SD卡,發現識別不出來。
    檢查一番發現,我的兩張卡,都是2G的,一張V1.1的 ,一張V2.0,而新的是2.0SDHC的。
    我在PC機上對這張卡進行了幾次格式化,也是同樣的現象。

    我跟蹤代碼發現:返回錯誤的地方在auto_mount 里調用的 check_fs函數

    if (LD_WORD(&fs->win[BS_55AA]) != 0xAA55){  /* Check record signature (always placed at offset 510 even if the sector size is >512) */
      return 2;
    }

    這里返回的如果是0xAA55
    但現在卻不是
    哪位兄弟知道是怎么回事,請告訴一下,謝謝了
    作者: chichu9825    時間: 2010-5-28 10:10
    disk_read(fs->drive, fs->win, sect, 1)

    fs->win[BS_55AA];
    fs->win[BS_55AA+1];
    第一次讀出來的是55AA
    第二次就是0000,
    這是啥問題呢
    作者: lhj200304    時間: 2010-5-28 11:19
    玩過fatfs  這個問題還真沒有碰到過
    作者: 老郭    時間: 2010-5-28 15:09
    樓主如果發帖子的時候把分類選為“提問”,那么此帖就顯示在最新100貼頂端,大家就都能看到了。(這個我幫你做了)

    如果在加上懸賞分,那大家都搶著回答你的問題了(發懸賞貼的話系統會獎勵你分數,所以不必擔心自己被扣分,自己還能落下點)


    作者: chichu9825    時間: 2010-5-28 15:21
    謝謝版主,我第一次提問,不懂啊。
    關于這個問題,到現在為止,我把問題范圍縮小了一些,
    文件系統掛載時,先讀第一個扇區MBR和DPT,這一步,我手頭所有的卡都能得到數據。
    下一步,文件系統要根據DPT的第一分區的一道信息去讀DBR
    沒問題的卡,都能都會正確的信息,在510和511位置 為0xAA和0x55
    但出問題的SDHC卡,讀回來的就是一個空白的數據包

    我肯定懷疑DBR的位置不對,
    另外2張卡 DBR的地址分別為0x000000F3 和  0x00000087
    我兩張出問題的SDHC 卡,DBR的地址都是 0x00002000

    卡我都在PC上多次格式化了,拷貝刪除都沒問題。

    我對這方面的知識只是一知半解,邊學邊干,哪個同學能看出問題在哪,請多多指教,我會不斷把我的進展添加上來,也能讓后來者少走彎路吧。
    作者: ttlasong    時間: 2010-5-29 19:46
    謝謝學
    作者: ttlasong    時間: 2010-5-29 19:46
    要好好學習
    作者: ttlasong    時間: 2010-5-29 19:54
    要好好學習
    作者: ttlasong    時間: 2010-5-29 19:54
    要好好學習
    作者: chichu9825    時間: 2010-6-4 11:26
    問題已解決,在于SD1.1   SD2.0   SDHC  三種卡的引導區位置不同,導致讀取的數據錯誤。寫驅動,必須要親自看一遍手冊,我就是圖快,移植的代碼沒有經過研究。
    作者: jieer191    時間: 2010-11-19 20:21
    回復10樓chichu9825

    我也碰到同樣的問題,樓主能詳細的介紹一下解決的思路嗎?
    謝謝謝謝!
    作者: thjym    時間: 2012-9-4 14:02
    我最近在移植到FATFS到NAND FLASH上,發現這個0XAA55是什么時候寫進去的?跟SD卡還是有很大不同,不知道哪位仁兄移植成功的,可否分享一下心得!謝謝,我QQ:34224308。




    歡迎光臨 電子工程網 (http://www.portaltwn.com/) Powered by Discuz! X3.4
    精品一区二区三区自拍图片区_国产成人亚洲精品_亚洲Va欧美va国产综合888_久久亚洲国产精品五月天婷