我是利用你們的光盤(pán)中的程序 c51中的exam7中的程序 在調(diào)試過(guò)程中,寫(xiě)入到U盤(pán)中的數(shù)據(jù)的格式不正確 我用的程序?yàn)椋? i = sprintf( mCmdParam.ByteWrite.mByteBuffer, "序號(hào) 操作員1 操作員2 日期 時(shí)間 \xd\xa", CH375vFileSize ); mCmdParam.ByteWrite.mByteCount = i; /* 指定本次寫(xiě)入的字節(jié)數(shù),單次讀寫(xiě)的長(zhǎng)度不能超過(guò)MAX_BYTE_IO */ i = CH375ByteWrite( ); /* 以字節(jié)為單位向文件寫(xiě)入數(shù)據(jù),單次讀寫(xiě)的長(zhǎng)度不能超過(guò)MAX_BYTE_IO */ mStopIfError( i );
/*Catch_Address(buffer); addr=0; number=buffer[2]*0x100+buffer[3];*/ addr=0; number=0x05; if(number) { for(number=5;number>0;number--) { user1=0x0201; user2=0x020a; year=0x06; month=0x05; day=0x26; hour=0x15; minite=0x39; second=0x30; len = sprintf( mCmdParam.ByteWrite.mByteBuffer, "%05d %04x %04x %02x.%02x.%02x %02x:%02x:%02x\xd\xa",(UINT16)number,(UINT16)user1,(UINT16)user2,(UINT8)year,(UINT8)month,(UINT8)day,(UINT8)hour,(UINT8)minite,(UINT8)second); /* 將二制制數(shù)據(jù)格式為一行字符串 */
輸出的結(jié)果為: 序號(hào) 操作員1 操作員2 日期 時(shí)間 00005 0201 020a 605.260c.200 22:2930:3030 00004 0201 020a 605.260c.200 22:3030:3030 00003 0201 020a 605.260c.200 22:3030:3030 00002 0201 020a 605.260c.200 22:3030:3030 00001 0201 020a 605.260c.200 22:3030:3030 開(kāi)門(mén)記錄讀取完畢 很顯然,時(shí)間和日期應(yīng)該是字節(jié)型的,為什么卻有4位呢? 另外#define MAX_BYTE_IO 50
請(qǐng)問(wèn)斑竹和各位大蝦這是什么原因呢?