CH32V103R8T6 的 USB 按照 Bluk 方式传输数据。CH32V103 每次都会等待上次传输完成后再开始传输。
按照:
1. CH32V103 接收计算机传输的数据。
2. CH32V103 处理数据。
3. CH32V103 将数据传输回电脑。
这个流程,USB 工作就是正常的。
按照:
1. 如果数据缓冲区未满,CH32V103 接收计算机传输的数据。并放入缓冲区。
2. 如果数据缓冲区未满,CH32V103 接收计算机传输的数据。CH32V103 处理缓冲中的数据。
3.如果数据缓冲区未满,CH32V103 接收计算机传输的数据。CH32V103 将处理后的数据传输回电脑。
这个流程,Windows 的 USB 函数传输函数就会报错。
好像是CH32V103 和计算机如果同时向对方传输大量数据,就会出错。如果控制流程,保证 CH32V103 向计算机传输数据的时候,计算机暂停传输数据。等到CH32V103数据传输完成,再控制计算机传输数据,就没问题了。