用CH375的设备模式做数据传输时,只能收数据,不能发数据。程序如下: 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{} }
运行的时候,用bus hound监视数据,usb check发消息。每次发送消息后,LED是变化的,并且用仿真器设断点也能观察到数据接收正确。但就是无法收到CH375发送的数据。 请问为什么??程序流程有错吗??