不知為什么不能從U盤中讀到數(shù)據(jù),大家指教一下。

我自己的板子,已經(jīng)可以確認(rèn)375可以工作(用測(cè)試指令CHECK_EXIST測(cè)試通過)。 下面是我做的一個(gè)測(cè)試,用的是朗科32MU盤。不知為什么,從串口出來的數(shù)據(jù)一直是0xA2,請(qǐng)大家指點(diǎn)一下,問題出在什么地方,困擾好幾天了。謝謝。 void test_u() { uint i,j; strcpy( mCmdParam.Open.mPathName,"\AAA.TXT");  //U盤中的文件名 j=CH375FileOpen();

mCmdParam.ByteLocate.mByteOffset=0; //設(shè)定起始位置 j=CH375ByteLocate(); //定位 mCmdParam.ByteRead.mByteCount=1;    //一次只讀1字節(jié)

for (i=0;i<150;i++) { j=CH375ByteRead(); X_buffer[i]=mCmdParam.ByteRead.mByteBuffer[0]; } for(i=0;i<150;i++) { SBUF=X_buffer[i];while(TI==0);TI=0; } }

1:strcpy( mCmdParam.Open.mPathName,"\AAA.TXT");  //U盤中的文件名 應(yīng)該為"\\"才對(duì),C語言"\\"翻譯成\, 2:你前面有沒有執(zhí)行DISKREADY函數(shù). ' 3:檢查你的RAM讀寫是否正常. 4:你的U盤是否FAT或FAT32格式,或U盤是否錯(cuò)誤.


感謝您的回復(fù)。晚上我再試試。另外不知是否可以知道您的MSN或QQ,以方便隨時(shí)請(qǐng)教。 引用回復(fù):1:strcpy( mCmdParam.Open.mPathName,"\AAA.TXT");  //U盤中的文件名 應(yīng)該為"\\"才對(duì),C語言"\\"翻譯成\, 2:你前面有沒有執(zhí)行DISKREADY函數(shù). ' 3:檢查你的RAM讀寫是否正常. 4:你的U盤是否FAT或FAT32格式,或U盤是否錯(cuò)誤.


今晚測(cè)試如下: 1、將strcpy(mCmdParam.Open.mPathName,"\AAA.TXT")中的“\AAA.TXT”改為“\\AAA.TXT”; 2、在前面執(zhí)行了diskready 3、因?yàn)槭褂玫?7E58,應(yīng)該讀寫RAM是不會(huì)有問題的。 4、確認(rèn)U盤是FAT格式,U盤在PC上可以正常讀寫。 做了以上工作后,故障依舊,有意思的是:不插U盤時(shí),讀出的數(shù)據(jù)是0x03,插上U盤時(shí)讀出的數(shù)據(jù)中0xA2. 真是怪了?,F(xiàn)在的程序如下,請(qǐng)?jiān)僦更c(diǎn)一下。 void test_u() { uint i,j;

for ( i = 0; i < 10; i ++ ) { /* 有的U盤總是返回未準(zhǔn)備好,不過可以被忽略 */ mDelay100mS( );feed_dog();     if ( CH375DiskReady( ) == ERR_SUCCESS ) break; /* 查詢磁盤是否準(zhǔn)備好 */ }

strcpy( mCmdParam.Open.mPathName,"\\AAA.TXT"); j=CH375FileOpen();

mCmdParam.ByteLocate.mByteOffset=0; //設(shè)定起始位置 j=CH375ByteLocate(); //定位 mCmdParam.ByteRead.mByteCount=10;//一次讀10字節(jié) j=CH375ByteRead(); for (i=0;i<10;i++) { buffer[i]=mCmdParam.ByteRead.mByteBuffer[i]; } } for(i=0;i<10;i++) { SBUF=buffer[i];while(TI==0);TI=0; } 


diskready(),返回應(yīng)該是成功的吧, 出現(xiàn)0XA2的話,有可能是XRAM有問題,也就是你定義的磁盤緩沖區(qū)和文件緩沖區(qū)有問題,字節(jié)操作的話文件緩沖區(qū)用不到,另外你的XRAM是不是單片機(jī)默認(rèn)情況下就打開的,還是要通過設(shè)置寄存器后才打開的.你可以試一下XRAM讀寫對(duì)不對(duì).


感謝Nine Inch Nails及其他朋友的回復(fù)。問題解決了。 今晚測(cè)試了從XRAM讀寫數(shù)據(jù),發(fā)現(xiàn)不正確。再細(xì)查,發(fā)現(xiàn)77E58初始化時(shí)沒有使能1K的RAM。修改后一切都好了。 下面就好辦了。調(diào)試其他功能塊。

有問題會(huì)再次請(qǐng)教的。 再次由衷感謝!!!


好帖子!!


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

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