在SD卡 txt文件里 寫數(shù)據(jù)成功后,為什么再次寫都是重頭開始的?
s = CH376FileOpen( "/MY_ADC.TXT" ); /* 打開文件,該文件在根目錄下 */ if ( s == USB_INT_SUCCESS ) { /* 文件存在并且已經(jīng)被打開,移動文件指針到尾部以便添加數(shù)據(jù) */ NewSize = CH376GetFileSize( ); /* 讀取當前文件長度,如果沒有零頭數(shù)據(jù),那么文件長度是DEF_SECTOR_SIZE的倍數(shù) */ s = CH376SecLocate( 0xFFFFFFFF ); /* 以扇區(qū)為單位移到文件尾部,如果文件尾部有不足一個扇區(qū)的零頭數(shù)據(jù)則被忽略,如果不做處理那么零頭數(shù)據(jù)將可能被寫入數(shù)據(jù)覆蓋 */ if ( s == USB_INT_SUCCESS ) {/* 操作成功 */ } else { SDerror=1; /* 操作失敗 */ } } else if ( s == ERR_MISS_FILE ) { /* 沒有找到文件,必須新建文件 */ //printf( "Create\n" ); s = CH376FileCreate( NULL ); /* 新建文件并打開,如果文件已經(jīng)存在則先刪除后再新建,不必再提供文件名,剛才已經(jīng)提供給CH376FileOpen */ if ( s == USB_INT_SUCCESS ) {/* 操作成功 */ } else { SDerror=1; /* 操作失敗 */ } //mStopIfError( s ); total = 0; /* 此前沒有零頭數(shù)據(jù) */ NewSize = 0; } else// mStopIfError( s ); /* 打開文件時出錯 */ { NewSize = 0; } for(j=0;j<500;) { for(i=0;i<10;i++) { Buf[j]=i+0x31; j++; } } 注意字符串長度不能溢出buf,否則加大緩沖區(qū)或者分多次寫入 */ WDTE=0xAC; s = CH376ByteWrite( Buf, 500, NULL ); /* 以字節(jié)為單位向文件寫入數(shù)據(jù) */ Delay_XMS(50); s = CH376FileClose( TRUE );