連續(xù)讀兩個扇區(qū)之間必須加一段延時么?

仿真時發(fā)現(xiàn),不加延時連續(xù)讀兩個扇區(qū),第二個扇區(qū)就會讀錯 必須要加延時么?

連續(xù)讀扇區(qū)的時候不需要加延時的 你把仿真器去掉試試


試了下 仿真器去掉也還是一樣 如下程序

mmcReadSector(BIOS_PARAMETER_BLOCK,buff); CH375_DelayNus(30); // 添加的延時 if(buff[0] != 0xEB) //this is mbr { VBRadd = buff[0x1C6] + (buff[0x1C7] << 8); } else { VBRadd = 0; } mmcReadSector(VBRadd,buff); CH375_DelayNus(30); // 添加的延時

bootp=(struct BootSec *)buff;

上面如果去掉那兩端延時的話 buff 中接收到的數(shù)據(jù)就不會 加了延時,一切正常,很奇怪 。。。


延時是不需要的,你讀取的第一個扇區(qū)的數(shù)據(jù)是正確的嗎?還有在你讀取第2個扇區(qū)的時候,如果出錯,會是什么樣的錯誤,同時你還需要去看下在你的三個讀寫子函數(shù)里面的延時是否夠,按照我們的CH375操作時序,命令與命令之間的延時是2US,數(shù)據(jù)與命令,數(shù)據(jù)與數(shù)據(jù)之間的延時是1US。


讀取第一個扇區(qū)的數(shù)據(jù)是對的 不加延時讀取第二個扇區(qū),讀出來的數(shù)據(jù)還是第一個扇區(qū)里面的數(shù)據(jù)


只有登錄才能回復(fù),可以選擇微信賬號登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频