[求助]工作于主機(jī)方式,頭文件里的設(shè)備方式可以去掉嗎?

比如是這樣的 :#define CMD_SET_ENDP2 0x18 /* 設(shè)備方式: 設(shè)置USB端點(diǎn)0的接收器 */ /* 輸入: 工作方式 */ /* 位7為1則位6為同步觸發(fā)位, 否則同步觸發(fā)位不變 */ /* 位3~位0為事務(wù)響應(yīng)方式: 0000-就緒ACK, 1110-正忙NAK, 1111-錯誤STALL */

#define CMD_SET_ENDP3 0x19 /* 設(shè)備方式: 設(shè)置USB端點(diǎn)0的發(fā)送器 */ /* 輸入: 工作方式 */ /* 位7為1則位6為同步觸發(fā)位, 否則同步觸發(fā)位不變 */ /* 位3~位0為事務(wù)響應(yīng)方式: 0000~1000-就緒ACK, 1110-正忙NAK, 1111-錯誤STALL */ 我把頭文件的這些去掉,那么主機(jī)方式的CH375FileCreate會受到影響嗎?我還把設(shè)備方式的端點(diǎn)1也刪除了呢?

不會影響的


但是我Create的文件里面,文件是建立了。但是里面沒有我要寫進(jìn)去的東西??!頭文件的那些定義被我刪除了會不會影響到了CH375FileWriteX寫這個函數(shù)呢?


應(yīng)該不會的,你再看看你程序?qū)懥藘?nèi)容后有沒有更新文件長度,還有就是你的緩沖區(qū)是否正確。


頭文件相關(guān)定義最好不要刪除,除非你完全明白, 這可是高手寫的啊^_^,用好頭文件不會產(chǎn)生多余的代碼,程序能正確穩(wěn)定的執(zhí)行.


我是用CH375FileWriteX這個函數(shù)寫的,緩沖區(qū)的地址是在參數(shù)中指定的。比如unsigned char a_sub[512];接著mCmdParam.WriteX.mDataBuffer=a_sub;用函數(shù)CH375FileClose();它會自動更新文件長度。這樣應(yīng)該不會錯吧?


你把這段相關(guān)程序貼出來看看可以嗎???


strcpy((char*)(mCmdParam.Create.mPathName), "\\ZYJ_TEST.TXT"); tmp = CH375FileCreate( ); if(tmp == ERR_SUCCESS) { PRT("CH375FileCreate:OK\r\n"); } else { PRT("CH375FileCreate:ERR %d\r\n",tmp); } { T_U16 i; for(i=0;i sec_buf[i] = '*'; for(i=0;i<4;i++) { mCmdParam.WriteX.mSectorCount = 1; mCmdParam.WriteX.mDataBuffer = sec_buf; current_buffer = sec_buf; tmp = CH375FileWriteX(); if(tmp == ERR_SUCCESS) { PRT("CH375FileWrite:Sector[%d] OK\r\n",i); } else { PRT("CH375FileWrite:Sector[%d] ERR=%d\r\n",i,tmp); } } PRT("CH375vFileSize=%d\r\n",CH375vFileSize); CH375vFileSize = 2048; tmp = CH375FileClose(); 其中sec_buf已經(jīng)定義 unsigned char sec_buf[512]={0}.[b]文字[/b]


全局變量CH375vFileSize不能隨意更改的,你把這一行換成 mCmdParam.Close.mUpdateLen = 1;/*關(guān)閉時更新文件長度*/


還是不行.我用讀的程序調(diào)試模塊,還是讀這個文件,顯示可以打開.里面只有一個字節(jié).


感覺還是文件長度的更新沒有成功,要不你用另外兩種更新文件的方法試一試。 1、最后再用CH375FileWrite,寫入0 扇區(qū)數(shù)據(jù),強(qiáng)制更新文件長度; 2、調(diào)用CH375FileModify,指定修改文件長度;


搞定,用CH375FileModify可以做到。謝謝了。


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

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