你好! 我買(mǎi)了貴公司的CH375,想用來(lái)寫(xiě)U盤(pán),用的是AVR M32,下了論壇上的程序,有個(gè)是AVRICC讀寫(xiě)的程序,燒入單片機(jī)后能用!但是我想改成符合我要求的用法,我用一個(gè)數(shù)組保存我隨時(shí)采集到的數(shù)據(jù),每次采集完后用CH375寫(xiě)入U(xiǎn)盤(pán),但是不知道怎么改那個(gè)程序,改了之后每次都只能寫(xiě)最初設(shè)定的那個(gè)值,并不能往下面寫(xiě)每次采集到的值,不知道要怎么用那個(gè)程序,公司好像把寫(xiě)數(shù)據(jù)的程序給封裝在.A文件中了,能給我點(diǎn)幫助嗎? 謝謝了 void main( ) { UINT8 i, c; UINT16 TotalCount; UINT8 *pCodeStr; unsigned char t[8]={'1','2','3','4','5','b','c',0};//此數(shù)組用來(lái)保存每次采集到的數(shù)據(jù)
CH375_PORT_INIT( ); LED_OUT_INIT( ); LED_OUT_ACT( ); /* 開(kāi)機(jī)后LED亮一下以示工作 */ mDelaymS( 100 ); /* 延時(shí)100毫秒 */ LED_OUT_INACT( ); mInitSTDIO( ); /* 為了讓計(jì)算機(jī)通過(guò)串口監(jiān)控演示過(guò)程 */ //printf( "Start\n" );
i = CH375LibInit( ); /* 初始化CH375程序庫(kù)和CH375芯片,操作成功返回0 */ //mStopIfError( i );
while ( 1 ) { #ifdef EN_DISK_WRITE /* 子程序庫(kù)支持寫(xiě)操作 */ /* 產(chǎn)生新文件 */ strcpy( (char *)mCmdParam.Create.mPathName, "/NEWFILE.TXT" ); /* 新文件名,在根目錄下,中文文件名 */ i = CH375FileCreate( ); /* 新建文件并打開(kāi),如果文件已經(jīng)存在則先刪除后再新建 */ pCodeStr = t; put_char('a'); //while( 1 ) //{ /* 分多次寫(xiě)入文件數(shù)據(jù) */ // printf( "Write\n" ); put_char('b'); for ( i=0; i<8; i++ ) { c = *pCodeStr; mCmdParam.ByteWrite.mByteBuffer[i] = c; if ( c == 0 ) break; /* 源字符串結(jié)束 */ pCodeStr++; put_char('c'); } if ( i == 0 ) break; /* 源字符串結(jié)束,完成寫(xiě)文件 */ mCmdParam.ByteWrite.mByteCount = i; /* 寫(xiě)入數(shù)據(jù)的字符數(shù),單次讀寫(xiě)的長(zhǎng)度不能超過(guò)MAX_BYTE_IO,第二次調(diào)用時(shí)接著剛才的向后寫(xiě) */ i = CH375ByteWrite( ); /* 向文件寫(xiě)入數(shù)據(jù) */ put_char('x'); //mStopIfError( i ); //} //下面這句一定要加 否則會(huì)出現(xiàn)問(wèn)題 顯示的只有一個(gè)字符 //printf( "Close\n" ); mCmdParam.Close.mUpdateLen = 1; /* 自動(dòng)計(jì)算文件長(zhǎng)度,以字節(jié)為單位寫(xiě)文件,建議讓程序庫(kù)關(guān)閉文件以便自動(dòng)更新文件長(zhǎng)度 */ put_char('y'); i = CH375FileClose( ); put_char('z'); // mStopIfError( i ); #endif //printf( "Take out\n" ); put_char('n'); //while ( CH375DiskStatus != DISK_DISCONNECT ) xQueryInterrupt( ); /* 查詢CH375中斷并更新中斷狀態(tài),等待U盤(pán)拔出 */ //LED_OUT_INACT( ); /* LED滅 */ //mDelaymS( 200 ); put_char('m'); /* i = FILE_DATA_BUF[0]; 因?yàn)槭且宰止?jié)為單位讀寫(xiě)文件,未用到文件數(shù)據(jù)緩沖區(qū),為了防止編譯器優(yōu)化掉該緩沖區(qū)而用一下緩沖區(qū) */ } } //FILE_DATA_BUF_LEN