单片机/MCU论坛
直播中

的撒的

9年用户 739经验值
擅长:可编程逻辑
私信 关注

CYUSB3013在ISO模式下配置设备时,最后一个数据包缺少LPF设置,这是为什么?

我们的硬件产品是围绕 CYUSB3013 芯片构建的。 为了与设备通信,PC 使用同步端点。
当我们在 ISO 模式下配置设备时,突发长度为 11,每个间隔的 ISO 数据包数设置为 3,轮询间隔为 125us(导致每个 USB 微帧有 3*11 KB 的数据),设备按预期执行。 但是,当我们将突发长度设置为 12 时,设备会以 12 KB 的数据进行响应,但最后一个数据包缺少 LPF(突发结束)设置。 有人知道为什么会发生这种情况吗?



回帖(2)

徐歌

2024-2-26 10:17:47
请使用CyU3PUsbEPSetBurstMode() API处理突发
举报

杨平

2024-2-26 15:40:28
根据您描述的情况,"LPF(Lock Pattern Flag)"是指USB数据包中的一个字段,用于指示突发结束的标志。

在ISO模式下,每个连续的ISO数据包表示一个突发,并且通过设置LPF字段来指示数据包是否为突发的最后一个。

如果您将突发长度设置为11,设备以11KB的数据进行响应,然后设置LPF字段来标记该数据包为突发的最后一个。这是因为突发长度为11,每个间隔的ISO数据包数设置为3,这样每个USB微帧中就有3 * 11KB的数据,正好对应突发的结束。

然而,当您将突发长度设置为12时,设备以12KB的数据进行响应,但最后一个数据包缺少LPF设置。这可能是由于硬件或驱动程序问题导致的,具体原因可能需要进一步调查。

注意:请确保您的突发长度设置和ISO数据包设置与CYUSB3013的规格和要求相符,以确保正确的配置和通信。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分