- 打卡等级:以坛为家I
- 打卡总天数:237
- 最近打卡:2025-12-17 02:32:37
已绑定手机
金牌会员
- 积分
- 1582
|
情况介绍:
在做USB的printf_usb实验时,用到函数:USB_SendData(UsbOutBuffer, OutNumber);
这个函数中OutNumber变量在CDC库中有,但是HID库中没有。
参考HID库的样例程序发现,调用USB_SendData()时,HID的样例都是这样写的:USB_SendData(UsbOutBuffer, 64);
看到ai_usb.h中定义:extern BYTE xdata UsbOutBuffer[64];
可是发多少信息是变化的,为何固定为64?
还看到ai_usb.h中还有定义:extern BYTE xdata UsbInBuffer[64];
UsbOutBuffer和UsbInBuffer与输入输出缓冲是如何对应的?有什么关系?
按说用:USB_SendData(UsbOutBuffer, OutNumber);做的工作是MCU接收到的数据原路返回,接收的数据进入UsbInBuffer,用USB_SendData从UsbInBuffer中取数据感觉才合理。
我知道所有程序显示的实际情况与我预想不一致一定是我对逻辑框架不了解造成的。
谁能给指导一下,先谢谢您了!
|
|