[求助]CH374ByteWrite的問題

我用374的字節(jié)操作寫100k的文件 程序如下: MAX_PATH_LEN這個(gè)改成129了 TotalCount = 102400; while(TotalCount > 0) { for ( i=0; i { if ( TotalCount == 0 ) break; mCmdParam.ByteWrite.mByteBuffer[ i ] = 0x30; TotalCount--; } if ( i == 0 ) break; mCmdParam.ByteWrite.mByteCount = i; c = CH374ByteWrite( ); mStopIfError( c ); }

現(xiàn)有奇怪的問題: 文件能夠生成,里面應(yīng)該都是0x30的 但是每次到4096個(gè)字節(jié)就會(huì)有幾個(gè)0x00 而且每次個(gè)數(shù)并不相同 請問我哪里寫錯(cuò)了么? 201211216311863.jpg 20121121631423.jpg

問題找到了 pDISK_BASE_BUF 是這個(gè)東西在惹事! 374的庫在調(diào)用pDISK_BASE_BUF 數(shù)據(jù)緩沖區(qū)要完全獨(dú)立就沒事了

mCmdParam.ByteWrite.mByteBuffer = 0x30;

這是什么意思?你把一個(gè)指針賦值0X30,不代表mCmdParam.ByteWrite.mByteBuffer內(nèi)容為0X30。你看一下C語言的指針


不好意思 修改帖子縮進(jìn)的時(shí)候誤刪了 mCmdParam.ByteWrite.mByteBuffer[i] = 0x30; 劉工別激動(dòng)么


我擦…… 建議劉工看看論壇的后臺(tái) mCmdParam.ByteWrite.mByteBuffer[ i ] = 0x30; [ i ](不含空格)居然沒了 我編輯帖子還是有的 顯示居然沒了


你用的是什么單片機(jī)啊?還有每次寫數(shù)據(jù)都監(jiān)控下你的數(shù)據(jù)是否都是0X30


我用stm32模擬spi的 字節(jié)讀取沒問題

剛才用串口監(jiān)控了mByteBuffer[ 0 ]和mByteBuffer[ MAX_BYTE_IO - 1 ] 數(shù)據(jù)沒有異常

還有修改MAX_PATH_LEN后發(fā)現(xiàn) 不管怎么改,到了0x1000,0x2000...文件內(nèi)必定有異常數(shù)據(jù)

另外試了幾個(gè)u盤,都有這個(gè)問題 有一點(diǎn)差異就是有的u盤顯示亂碼,不是0x00 還有就是不同u盤亂碼的個(gè)數(shù)也不相同


你去監(jiān)控下變量i每次是多少?


試過了 寫8k的數(shù)據(jù) MAX_PATH_LEN定義129 i是128 到了0x1000就變0x00了 串口數(shù)據(jù)沒問題


我把代碼和生成的文件上傳在貼里了 請工程師幫我看一下吧


沒看到你的程序。一般只有在緩沖區(qū)出現(xiàn)問題的時(shí)候才會(huì)出現(xiàn)你說的上述現(xiàn)象。


在樓底 UploadImages/201211313455953.rar


怎么下載不下來? 有沒有上傳?


您這問題………… 我已經(jīng)發(fā)您郵箱了


不還意思,郵件收到了,拿你的工程修改了下時(shí)序以及優(yōu)化級別,還有把你的寫程序修改了下。你測試下看是否可以。


求助啊,修改后還是一樣問題

試過關(guān)閉文件后再打開 并且通過CH374ByteLocate繼續(xù)添加 還是不行 到了0x1000總有一組數(shù)據(jù)(MAX_BYTE_IO大小一致)寫不進(jìn)去(亂碼) 然后到了0x2000,0x3000都是一樣的問題


現(xiàn)在解決辦法只能算好位置 到了0x1000就寫一個(gè)數(shù)據(jù) 然后繼續(xù)操作,其他數(shù)據(jù)就沒有問題了 請各位工程師看看應(yīng)該怎么解決這問題??


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

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