请问不能把 ENDP1_TXADDR 赋给 ENDP4的吗?
我并没有使用到ENDP1啊
在这里只是测试,简单描述下现象,实际项目当然是都有缓冲区的
如果我把改动部分改为下面的,则完全正常,不知作何解释
改动处1
#define EP_NUM (5) //(2)
改动处2
/* Initialize Endpoint 1 */
/* SetEPType(ENDP1, EP_INTERRUPT);
SetEPTxAddr(ENDP1, ENDP1_TXADDR);
SetEPTxCount(ENDP1, 4);
SetEPRxStatus(ENDP1, EP_RX_DIS);
SetEPTxStatus(ENDP1, EP_TX_NAK);
*/
/* Initialize Endpoint 1 */
SetEPType(ENDP3, EP_INTERRUPT);
SetEPTxAddr(ENDP3, ENDP1_TXADDR);
SetEPTxCount(ENDP3, 4);
SetEPRxStatus(ENDP3, EP_RX_DIS);
SetEPTxStatus(ENDP3, EP_TX_NAK);
改动处3
0x83,//0x81, /*bEndpointAddress: Endpoint Address (IN)*/
改动处4
/* prepare buffer to send */
Mouse_Buffer[1] = X;
Mouse_Buffer[2] = Y;
/*copy mouse position info in ENDP1 Tx Packet Memory Area*/
// UserToPMABufferCopy(Mouse_Buffer, GetEPTxAddr(ENDP1), 4);
UserToPMABufferCopy(Mouse_Buffer, GetEPTxAddr(ENDP3), 4);
/* enable endpoint for transmission */
// SetEPTxValid(ENDP1);
SetEPTxValid(ENDP3);
|