|
各位大佬好~ 小弟刚开始摸索STM32,结合工作方向,正在学习USB部分,看到STM32_USB-FS-Device_Lib_V4.1.0这个USB库的pack,这个里面的示例有个地方看不明白了。 具体位置是:STM32_USB-FS-Device_Lib_V4.1.0\Projects\Composite_Examples\MSC_HID_Composite这个例子。在这个例子的usb-prop.c中的CustomHID_Reset函数中,这里面是对USB端点的配置,但是里面对Endpoint 2 IN的配置就有点怪。代码片段如下:
就是红框中的这行,为什么这里配置的是端点1的发送count,而不是端点2? 非常感谢各位大佬的任何热心回答~ 谢谢 |
STM32F2xx 是否有 UVC 相关示例工程
STM32F103C8T6 上电后无法通过串口发出数据的问题?
STM32F417IG 单端外部时钟旁路HSE Bypass问题
VL53L5CX无法使用
STM32L4A6 SDMMC 无法使用 1.8V IO 驱动 microSD 卡
stm32f107裸机+HR911105A+lwIP 1.31 SYN发送失败的问题
STM32L4P5xx 系统内 Bootloader:RAM3 能否用作栈指针内存?
MCU的ADC进行电压采集时,外部输入阻抗最大能到多少?
在 STM32CubeIDE 中生成 ioc 配置文件
CAN 总线多节点环境下进行固件升级
微信公众号
手机版
那下面那句,将端点2的发送地址设置到端点1的tx地址上是不是也不太对?
SetEPTxAddr(ENDP2, ENDP1_TXADDR);
因为根据定义:
define ENDP1_TXADDR (0x118)
define ENDP1_RXADDR (0x11C)
这样看,端点1的TX地址后面只有4个字节就是TX1的接收地址了,这个长度也是明显不足64的,否则数据就串了。似乎也应该是ENDP2_TXADDR才是正确的。
/* EP2 *//* tx buffer base address */
#define ENDP2_TXADDR (0x98)
/* Rx buffer base address */
#define ENDP2_RXADDR (0xD8)
/* EP1 */
tx buffer base address
#define ENDP1_TXADDR (0x118)
#define ENDP1_RXADDR (0x11C)