函数USB_1_LoadEP (1, BUFF, COUNT); COUNT值应该是8,BUFF应该是一个8元素的数组。试验成功,看看键盘报告描述符就知道了。
新的问题是:
BYTE KeyData[8] = {0,0,0x5b,0,0,0,0,0};//按下PageDown键的报告描述符
M8C_EnableGInt; //Enable Global Interrupts
USB_1_Start(0); //Start USB Operation using device 0
while (!USB_1_bGetConfiguration()); //Wait for Device to enumerate
USB_1_LoadEP (1, KeyData, 8); //Begin initial USB transfers
while(1)
{
if (USB_1_bGetEPAckState (1)) //Check and see if ACK has occured
{
USB_1_LoadEP (1, KeyData, 8); //Load EP1 with keyboard data
}
//while(1);
}
如果不加红色的那一句,也就是必须不停的发送报告描述符,PC才能收到;如果加上红色的原地等待语句,也就是只发送一次报告,发现PC机没有反应,打开的PPT文档并没有翻页,应该怎么解决呢?
|