站内搜索
更多
STM32F446VETx 双 USB 开发板
专业版

STM32F446VETx 双 USB 开发板

简介

支持 USB Slave/Host 双端接口的 STM32F446VETx 开发板。主要用于 USB 的实验以及相关原型开发。含有一个截取 USB 音频流,计算 RMS、频谱的 demo。

简介:支持 USB Slave/Host 双端接口的 STM32F446VETx 开发板。主要用于 USB 的实验以及相关原型开发。含有一个截取 USB 音频流,计算 RMS、频谱的 demo。
复刻成本:50

开源协议

MIT License

创建时间:2026-05-17 01:18:11更新时间:2026-06-26 10:37:32

描述

update 2026/6/23:更新了面板图纸

彩色丝印实拍图(画师链接:狮子城恋路的个人空间-狮子城恋路个人主页-哔哩哔哩视频):

最近打算给我的 usb 耳机做一个灯效,要求能够转发 USB Audio 流数据,然后 MCU 能从 USB Audio 流中截取数据计算一些东西,再做一些显示效果。

于是做了个双 USB 开发板,用于原型机的开发验证。Demo中的程序效果如下:

屏幕使用四线 SPI,MCU 使用 Transmit Only Master,屏幕链接:0.96寸OLED显示屏12864液晶屏串口屏ssd1306 12864OLED串口屏-淘宝网

Demo 见附件。

STM32F446 的 USB 外设有 OTG_FS 和 OTG_HS 两个,HS 硬件上 MCU 内部 PHY 还是 FS,不过对于音频完全足够了。板上 OTG_FS 对应的是 Type-C,为板子的 Slave(Device) 端,从 pc 接收数据;OTG_HS 对应 Type-A,为 Host,输出音频给耳机。

USB Slave 端是 pc 供电,顺手做了一些保护。

由于裸机的 USB 一整套转发流程,需要在 while (1) 中不停调用 Host 服务函数,不然状态机会饿死,也就是说做不了别的事情了。我没想到别的办法,最后使用 FreeRTOS,总体用 CubeMX 配置还算方便,不需要手动移植。

在 FreeRTOS 开了一个 AudioProc 任务,用于 USB Host 处理之余抽空执行,主要计算 RMS(音量)和 Mel 频谱,然后通过 OLED 显示。

代码很多是 AI 搞定的,不得不说现在 AI 真好用啊,只需要把握项目的思路和方向就好了,细节和驱动就让 AI 搞定了。

设计图

未生成预览图,请在编辑器重新保存一次

BOM

暂无BOM

3D模型

序号文件名称下载次数
暂无数据

附件

序号文件名称下载次数
1
firmware.zip
11
克隆工程
添加到专辑
0
0
分享
侵权投诉
知识产权声明&复刻说明

本项目为开源硬件项目,其相关的知识产权归创作者所有。创作者在本平台上传该硬件项目仅供平台用户用于学习交流及研究,不包括任何商业性使用,请勿用于商业售卖或其他盈利性的用途;如您认为本项目涉嫌侵犯了您的相关权益,请点击上方“侵权投诉”按钮,我们将按照嘉立创《侵权投诉与申诉规则》进行处理。

请在进行项目复刻时自行验证电路的可行性,并自行辨别该项目是否对您适用。您对复刻项目的任何后果负责,无论何种情况,本平台将不对您在复刻项目时,遇到的任何因开源项目电路设计问题所导致的直接、间接等损害负责。

底部导航