如題;我在用下位機(普通51單片機)讀數(shù)據(jù)時只能讀出其數(shù)據(jù)長度,而后面的數(shù)據(jù)讀不出,所有的讀出值都是數(shù)據(jù)長度!這個問題困擾我好幾天了!請高手指教! 下面是我的中斷程序 void mCH375Interrupt( void ) interrupt 0 { uchar cnt; uchar dat;
CH375_WR_CMD_PORT( CMD_GET_STATUS ); #define IntStatus dat /* 節(jié)約一個變量存儲單元 */ CH375_WR_CMD_PORT( CMD_GET_STATUS ); /* 獲取中斷狀態(tài)并取消中斷請求 */ delay(100); IntStatus = CH375_RD_DAT_PORT( ); /* 獲取中斷狀態(tài) */ if ( IntStatus == USB_INT_EP2_OUT ) { /* 批量端點下傳成功,接收到命令包 */ CH375_WR_CMD_PORT( CMD_RD_USB_DATA ); /* 從當(dāng)前USB中斷的端點緩沖區(qū)讀取數(shù)據(jù)塊,并釋放緩沖區(qū) */ delay(100); cnt = CH375_RD_DAT_PORT( ); /* 首先讀取后續(xù)數(shù)據(jù)長度 */
for(i=0;i { buf[i] = CH375_RD_DAT_PORT( ); /* 接收命令包的數(shù)據(jù) */ }