你好,我目前做项目,使用CH378将数据存储到SD卡中,使用了并口方式,参照例程中单字节存储,目前实现了建立TXT文件,并写入了80个字节,
strcpy(FileName,"\\");
strcat(FileName,"2018");
strcat(FileName,".TXT");
status = CH378FileCreate( &FileName );
//写标题栏
mDelaymS( 100 );
status = CH378ByteWrite( Item, 80, NULL ); // 以字节为单位向文件写入数据
mDelaymS( 100 );
status = CH378FileClose( TRUE );
mDelaymS( 100 );
NewSize = 80;
然后再往里面写入240个字节,也没有问题,
CH378FileOpen( FileName );
mDelaymS( 200 );
StatusTemp=CH378ByteLocate(NewSize);
mDelaymS( 200 );
CH378ByteWrite(SDDataSave, 240, NULL ); // 以字节为单位向文件写入数据
mDelaymS( 200 );
CH378FileClose( TRUE );
NewSize=NewSize+240;
但是我写两次240个字节,用电脑读SD卡,可以看到“2018.TXT”文件,且大小为560个字节(80byte+240byte+240byte),双击打开文件提示“不能打开文件H:\2018.TXT”
CH378FileOpen( FileName );
mDelaymS( 200 );
StatusTemp=CH378ByteLocate(NewSize);
mDelaymS( 200 );
CH378ByteWrite(SDDataSave, 240, NULL ); // 以字节为单位向文件写入数据
mDelaymS( 200 );
CH378FileClose( TRUE );
NewSize=NewSize+240;
CH378FileOpen( FileName );重复写入相同的240个字节
mDelaymS( 200 );
StatusTemp=CH378ByteLocate(NewSize);StatusTemp的返回值为0
mDelaymS( 200 );
CH378ByteWrite(SDDataSave, 240, NULL ); // 以字节为单位向文件写入数据
mDelaymS( 200 );
CH378FileClose( TRUE );
NewSize=NewSize+240;
求指导,谢谢了。