用CH375的設(shè)備模式做數(shù)據(jù)傳輸時(shí),只能收數(shù)據(jù),不能發(fā)數(shù)據(jù)。程序如下: if(InterruptStatus==USB_INT_EP1_OUT || InterruptStatus==USB_INT_EP2_OUT){ LED=~LED; CH375_WR_CMD_PORT(CMD_RD_USB_DATA); length=CH375_RD_DAT_PORT(); c1=0; while(length--){ Content[c1++]=CH375_RD_DAT_PORT(); } _nop_(); CH375_WR_CMD_PORT(CMD_WR_USB_DATA5); CH375_WR_DAT_PORT(0x04); for(c1=0;c1<4;c1++){ CH375_WR_DAT_PORT(0xaf); }
_nop_(); } else if(InterruptStatus==USB_INT_EP1_IN || InterruptStatus==USB_INT_EP2_IN){ CH375_WR_CMD_PORT(CMD_UNLOCK_USB); } else{} }
運(yùn)行的時(shí)候,用bus hound監(jiān)視數(shù)據(jù),usb?。悖瑁澹悖氚l(fā)消息。每次發(fā)送消息后,LED是變化的,并且用仿真器設(shè)斷點(diǎn)也能觀察到數(shù)據(jù)接收正確。但就是無法收到CH375發(fā)送的數(shù)據(jù)。 請(qǐng)問為什么??程序流程有錯(cuò)嗎??