搜索
查看: 3326|回复: 10

[求助] 求助STM32F413 USB Audio问题

[复制链接]

该用户从未签到

2

主题

7

帖子

0

蝴蝶豆

初级会员

最后登录
2022-1-26
发表于 2019-7-20 09:21:44 | 显示全部楼层 |阅读模式
本人新手一枚。
我在 STM32F413 discovery 板子上试验 USB Audio,参考了本论坛的文章 https://www.stmcu.org.cn/module/forum/thread-615950-1-1.html
我先用 STM32CubeMX 5.2.1 生成代码框架,然后再把 STM32CubeF4 V1.24.1 里面的 stm32f413h_discovery.c, stm32f413h_discovery_audio.c, wm8994.c 这几个源文件添加到工程里,用的 toolchain 是 IAR 8.30。
现在的问题是,如果在 usbd_audio_if.c 里面函数 AUDIO_Init_FS 里面什么都不调那么能成功地枚举出 "STM32 Audio Class" 设备,
但是只要 AUDIO_Init_FS 里面调了 BSP_AUDIO_OUT_Init 就会枚举失败,显示“未知 USB 设备”,跟踪 BSP_AUDIO_OUT_Init 的执行过程没发现问题,
而且这个函数返回值也是OK,但是紧接着 AUDIO_DeInit_FS 就被调了,也跟踪了 USB 中断和 DMA 中断都有,查了好几天查不出原因,时钟配置好像也没问题,求助坛友帮忙指导,多谢!

回复

使用道具 举报

该用户从未签到

10

主题

195

帖子

65

蝴蝶豆

金牌会员

最后登录
2023-9-26
发表于 2019-7-20 10:24:15 | 显示全部楼层
慢慢调试,总会找到的
回复 支持 反对

使用道具 举报

该用户从未签到

2

主题

7

帖子

0

蝴蝶豆

初级会员

最后登录
2022-1-26
 楼主| 发表于 2019-7-20 22:14:24 | 显示全部楼层
天臆弄人 发表于 2019-7-20 10:24
慢慢调试,总会找到的

谢谢
回复 支持 反对

使用道具 举报

该用户从未签到

2

主题

7

帖子

0

蝴蝶豆

初级会员

最后登录
2022-1-26
 楼主| 发表于 2019-7-21 17:05:35 | 显示全部楼层
顶一顶
回复

使用道具 举报

该用户从未签到

2

主题

7

帖子

0

蝴蝶豆

初级会员

最后登录
2022-1-26
 楼主| 发表于 2019-7-23 11:41:23 | 显示全部楼层
USB枚举失败的原因找到了,还是因为时钟配置有问题。查看了 STM32CubeMX 里面的 Clock Configuration 里 USB 时钟缺省是从 PLLI2S 过来的,而 BSP_AUDIO_OUT_Init 里面会调 BSP_AUDIO_OUT_ClockConfig 对 I2S 时钟重新配置,结果同时改变了 USB 时钟造成 USB 不能正常通信所以出现 “未知 USB 设备”。重新配置了 USB 和 I2S 时钟,现在可以正常地枚举出 "STM32 Audio Class" 设备了。

但还是有问题:播放没有声音,目前查到 USB 数据过来了但是 DMA 往 I2S 传数据只传了一次就停了,发现 usbd_audio_if.c 里面调到 BSP_AUDIO_OUT_ChangeBuffer 时参数 size 是 0 所以停掉了,不知道为什么。高手们这个有经验吗?
回复 支持 反对

使用道具 举报

该用户从未签到

0

主题

10

帖子

0

蝴蝶豆

初级会员

最后登录
2021-8-17
发表于 2019-8-12 14:11:56 | 显示全部楼层
楼主,请问下,成功枚举后是否需要安装STM32 Audio Class的驱动,我的显示没有合适的驱动,其他都对。
找不到驱动。。。

11.jpg
回复 支持 反对

使用道具 举报

该用户从未签到

2

主题

7

帖子

0

蝴蝶豆

初级会员

最后登录
2022-1-26
 楼主| 发表于 2019-9-10 20:25:08 | 显示全部楼层
delei 发表于 2019-8-12 14:11
楼主,请问下,成功枚举后是否需要安装STM32 Audio Class的驱动,我的显示没有合适的驱动,其他都对。
找不 ...

不需要装驱动,Windows支持标准的USB Audio Class设备
回复 支持 反对

使用道具 举报

该用户从未签到

0

主题

10

帖子

0

蝴蝶豆

初级会员

最后登录
2021-8-17
发表于 2019-10-13 10:09:11 | 显示全部楼层
zhuangwf 发表于 2019-9-10 20:25
不需要装驱动,Windows支持标准的USB Audio Class设备

你说的是Win10吧,Win7是不支持的,我换了Win10系统就可以了
回复 支持 反对

使用道具 举报

该用户从未签到

0

主题

10

帖子

0

蝴蝶豆

初级会员

最后登录
2021-8-17
发表于 2019-10-13 10:10:47 | 显示全部楼层
zhuangwf 发表于 2019-9-10 20:25
不需要装驱动,Windows支持标准的USB Audio Class设备

需要换成Win10系统才行,如果你用的Win7或者之前的版本就不行,系统没有集成USB Audio Class设备驱动
回复 支持 反对

使用道具 举报

该用户从未签到

1

主题

41

帖子

0

蝴蝶豆

初级会员

最后登录
2019-11-28
发表于 2019-10-14 16:24:50 | 显示全部楼层
delei 发表于 2019-10-13 10:10
需要换成Win10系统才行,如果你用的Win7或者之前的版本就不行,系统没有集成USB Audio Class设备驱动 ...

额,不是吧,WIN7支持USB AUDIO 1.0也就是全速,如果你是USB AUDIO 2.0,win7是不支持的,win10支持。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|论坛-意法半导体STM32/STM8技术社区

GMT+8, 2024-5-2 18:23 , Processed in 0.195386 second(s), 41 queries .

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

快速回复 返回顶部 返回列表