|
我用STM32F407 作USB host, 配置为FS。用它接声卡。如果STM32F407 单向给 声卡传送音频,输出声音正常。或者 407单向接收声卡的音频,工作也正常。但是同时发送和接收声音(即同时作同步IN和OUT),USB就会出错,具体出错中断信号为 未完成周期性传输中断 或 Tx FIFO 空中断。 因为ST 对USB host 提供的 audio class例程只有stream out, 没有stream in。不知道是不是407对于同步双向传输处理速度不够造成? |
ST TOF问题请教
STM32F4的SPI端口,如何实现多通道输入?
STM32F4标准库USB例程CDC_HID_Composite问题:第一次识别成功,后续插入电脑均识别失败
STM32F407 Flash 故障
STM32F407使用LAN8720A进行网口通信
USBX在F407上创建CDC不能正常使用
STM32F407 音频输入输出时 IFFT 无法正常工作
ai部署
keil有什么调试方法可以追踪链表被破坏的地方吗
stm32 usb hid设备能发数据给PC,但不能接收PC的数据!!!
微信公众号
手机版
但是,我用示波器测量STM32F4 USB host 同步传输时,一帧内In 288Bytes, Out 288 Bytes, 所需要的时间也<500us, 它完全有足够时间处理的。
并且,按照STM32F4中文参考手册上关于USB系统性能说的,“凭借大容量 RAM 缓冲区、高度可配置的 FIFO 大小、通过 AHB 压栈/出栈寄存器进行 32 位FIFO 快速访问。。。。。。
由于 OTG_FS 模块能够高效填充1.25 KB RAM 缓冲区且 1.25 KB 发送/接收数据足以满足一个全速帧所能容纳的数据量,因此USB 系统在一帧之内可以无需应用程序干预达到最大USB 带宽。”
既然一帧内都能够处理1.25KB的数据,现在实际处理576Bytes, 应该不成问题。
如果我遇到这个问题,真的是由于STM32F4处理速度跟不上,那就跟手册上说的有矛盾。
我做了这样的测试,第一帧只做同步OUT, 第二帧只做同步IN,即一帧只做一种同步传输,如此循环。但它依然会产生未完成周期性传输(Incomplete periodic transfer)中断。所以应该不是STM32F4速度不够。但为什么IN 和 OUT 通道都打开就会出现这样的问题?