你好,我们现在在用407的USB模块。
代码是根据 官网例程里的 cdc 改的,有两个问题请教一下:
问题1
官网例子中,USB的处理是在OTG_FS_IRQHandler中断里处理的。
我们的使用场合对时间的要求比较高,所以 不希望 usb在中断里处理。
现在 将 usb 处理函数直接放到 1ms的定时器中去,枚举和数据传输可以,但丢数据比较频繁。 用的是176字节每10ms;
请问有没有 不在中断中处理usb功能 的 可靠的软件 方案或者例程?
问题2
关于 端点缓冲长度的配置。
我现在用了端点的配置时这样的,
现在发送管道2没ms发送176字节的数据可以, 如果发送大的数据,不如352字节,
开始 能正常运行一段时间, 但 之后 用电脑 busbond工具 监控提示 stall pid,之后 那个管道就停止工作了。
我想可能 和 这个配置有关系。
有没有 配置的建议 或者 是不是 这种模式下 每次 发送的 数据就 不能太大? |