STM32 音频应用
STM32 USB 音频应用 USB 音箱 音频编码 (WAV,MP3) 音频解码 (WAV,MP3,WMA,AAC) ipod Docking Android Docking 软件升级 (U_disk) STM32 其它音频应用 DSP 一些其它免费的编码和解码 Sound bar Smart Phone 音频开发板 ST 现有的音频应用 2
DMA USB 音箱 3 通用的应用 USB Device I2C 时钟同步 I2S Codec (DAC) 显示 FSMC / SPI TIM IO Expander 按键 IOs ADC / SPI STM32F105
在这个应用中我们会有如下几个时钟域 USB 主机时钟域 USB 设备时钟域 I2S 时钟域 喇叭 / 耳机时钟域 时钟域 4 USB Device USB 设备时钟域 I2S ADC Codec (DAC) USB 主机时钟域 显示 按键
STM32 异步同步方式 5 没有同步 动态时钟控制 增加或者减少一个样本 USB Pipe 反馈 采样率转换 (SRC) 根据下溢或者上溢情况, 设备调节它自己的内部时钟 ( 调节应该是在 10PPM 之内 ) 根据下溢或者上溢情况, 设备为了增加或者减少音频帧, 增加或者减少一个样本 设备通过一个专门的节点去通知主机下一帧需要送的字节数 根据下溢或者上溢情况, 设备应用 SRC 自动调节音频帧 低音质 低成本 中 / 高音质 高成本 ( 如. PLLs) 低音质 处理简单 高音质 处理简单 不是所有的主机都支持 中 / 高音质 低成本
应用占用的空间 6 FW 版本 V0.2.0 调试工具 KEIL MDK-ARM V4.21 编译软件版本 KEIL armcc compiler: 4.1.0.713 MCU STM32F105 模块 空间 ( 字节 ) Code Const RAM Total Demo (all options enabled) 43956 10292 11232 通用模块 24744 9964 9104 USB 10608 0 5439 LCD 2654 9168 518 同步管理 744 0 239 外部时钟 1376 184 120 反馈 Pipe 372 72 72 增加 - 移除 100 72 56 SRC 17364 0 1880
STM32 音频编码和解码 7 STM32 支持的编码格式 WAV MP3 STM32 支持的解码格式 WAV MP3 WMA AAC
STM32 WAV 编码 / 解码 8 44.1 KHz 16-bit PCM WAV 编码 / 解码 44.1 KHz 16-bit PCM STM32 支持的功能 标准格式化的 WAV 文件 44.1K 采样频率 16 位数字宽度 立体声 推荐应用型号 STM32F105
STM32 MP3 编码 9 8-48 KHz 16-bit PCM (Little Endian) MP3 编码 8-320 kbps MPEG1 - ISO-11172-3 STM32 支持的功能 MPEG-1, 2 或者 2.5 格式. Layer 3 编码. 单声道或者立体声输入. 固定比特率 推荐应用型号 STM32F105 STM32F205 MPEG 版本 khz kbps 每一帧的采用个数 MPEG-1 (ISO/IEC 11172-3) 32, 44.1, 48 32-320 1152 MPEG-2 (ISO/IEC 13818-3) 16, 22.05, 24 MPEG-2.5 8, 11.025, 12 8-160 576
STM32 MP3 解码 10 8-320 kbps MPEG1 - ISO-11172-3 MP3 解码 立体声 16-bit PCM MPEG 版本 khz kbps 每一帧的采样个数 MPEG-1 (ISO/IEC 11172-3) 32, 44.1, 48 32-320 1152 STM32 支持的功能 MPEG-1, 2 或者 2.5 格式 Layers 1, 2 和 3. 可变比特率 (VBR) 和固定比特率 (CBR). 支持一般的播放控制 ( 跳曲 快进, 快退重复..) 推荐应用型号 STM32F105 STM32F205 MPEG-2 (ISO/IEC 13818-3) 16, 22.05, 24 MPEG-2.5 8, 11.025, 12 8-160 576
STM32 WMA 解码 11 WMA decoder v9.1 5-384 Kbps 8-48 khz WMA 解码 立体声 16-bit PCM + ASF Parser 全面支持微软 Windows Media 技术规格 支持 5 Kbps 到 384 Kbps 比特率 支持固定比特率和可变比特率 支持 8 khz 到 48 khz 采样频率 提供 ASF 源码 推荐应用型号 STM32F105 STM32F205
STM32 解码 (AAC) 12 MPEG2/4 AAC 8-1152 Kbps 8 96 khz RAW (LOAS/LATM) ADTS ADIF AAC 解码 立体声 16-bit PCM 3 profiles 以及相对于的三个库文件 : AAC-LC AAC-HE v1 AAC-HE v2 正在开发支持 MP4. 推荐应用型号 STM32F205 STM32F407
音频编码和解码占用的 MCU 的资源 13 模块 MIPS avg MIPS peak ROM (KB) RAM (KB) CM3 CM4 CM3 CM4 CM3 CM4 CM3 CM4 Locked? MP3 编码 27 16.5 33 21 24.5 23.6 15.7 18 YES MP3 解码 20 9.53 22 12 22 19 12 14.5 YES WMA 解码 21 9.7 24 17.9 44 48.8 35.2 35.2 NO AAC LC AAC 解码 AAC++ v2 17 11.5 18 13.2 34 22 38 23.5 53.7 50 74.4 74.4 NO
STM32 ipod Docking 14 iap1 idevice 主机 Power 设备 idevice(ipod 的角色是设备 ) Apple 附件 Apple 设备 iap2 Data idevice ihost(ipod 的角色是主机 ) ihost 主机 Apple 设备 Power 设备 Apple 附件 Data 传输层 USB 推荐应用型号 STM32F105 STM32F205
ipod Docking 15 一般的应用如下 : USB 标准主机接口 PCM 和命令 USB Host I2C ipod/iphone 30/ 8 pin 连接器 PCM 和命令 认证芯片 I2C FW 同步 I2S Apple IAP & FW 标准音频软件 DAC 高音质高集成 Amplifier STM32F105
多平台应用 STM32 ipod Docking 的特点 16 免费的开放源代码 高度模块化, 方便客户移植和管理 跟 APPLE 合作关系 动态切换 iap1/iap2 Audio Class 2.0/ 1.0 16-bit 立体声 ihost + idevice 模式 STM32F2 / F4 少量占用 CPU 的资源 30-Pin & Lightning 接口数据零丢失的同步机制 免费的技术支持 高端机 STM32F105/7 STM32F401 中档机 STM32F052 低成本 可以应用 STM32 的多个平台 根据 Apple 的规格, 实时更新软件
占用的资源 17 idevice(f105) ihost (F105) ihost (F052) Flash (KB) 52 60 50 (est.) RAM (KB) 53 28 9 (est.)
STM32 Android Docking 18 播放音乐在所有的模式 : Mass Storage (USB 主机 ) MTP (USB 主机 ) USB PC 音箱 (USB 设备 ) AOA2.0(USB 主机 ) AOA 2: ADK, 软件升级 音频 Android Audio MSC: WAV, MP3, WMA 自动生成播放列表 Android 数据控制 : (AOA) 传感器 ( 温度, 亮度, 仪表..) 控制器 ( 马达, 继电器, 发光二极管..) 软件升级 STM32F205 支持的 MCU: STM32F2 和 F4 系列 推荐型号 STM32F205/STM32F407 软件开发平台 : Smartphone Accessory 板 Android Audio MTP: WAV, MP3, WMA 自动生成播放列表 Android Audio Streaming: In/Out 16-bit, Stereo, 44.1KHz
STM32 支持一些免费音频编 / 解码方案 19 脉冲密度调制 (PDM), 并且支持下列几种编 / 解码方式 : -G.711 -G.726 -IMA-ADPCM -Speex 推荐应用型号 STM32F205 占用很少量的 MCU 资源 ROM<2K RAM<200 字节 Codec Sample Rate (KHz) Speex 8 / 16 Input Bitrate (Kbps) 2.15-24.6 (NB) 4-44.2 (WB) ADPCM 8 16-bit 32 G.711 8 Mono 64 G.726 8 / 16 16, 24, 32, 40
STM32F4 Soundbar 应用 特点 : (WAV or MP3/WMA 解码 ) 8/16/32 khz/44.1 khz 到 48 khz 采样频率转换 (SRC) 音场扩展 (Stereo Widening) BIQ 滤波器 : 低 / 中 / 高以及 Loudness EQ(10 段 ) 低频管理 - 2.0 / 2.1 输出 音量控制 (SVC) 动态范围压缩 (DRC) 总共音频处理 = 85 MHz (~50% CPU load) 23 KB RAM ( 不包括输入 / 输出 buffers)
STM32 Smartphone 开发板 21 套件集成 ST-Link, 便于调试和编程 Android connector Iphone Iphone Micro AB 主要特性 支持多系列的 MCU STM32F052 STM32F107 STM32F207 STM32F401/407 支持多个功能扩展板 支持多种音频应用的开发 -ipod Docking -Android Docking -PDM -STM32 编码和解码 预留了多个接口, 方便客户扩展 多种供电方式可以选择 -ST-LINK - 外部 USB - 外部大电流供电 (PSU) Android extension board ~65mm D B 1 QFP176 QFP64 XTAL MCU daughter board ~75mm Lightning C11 B Apple device extension board D B 1 D B 3 D B 1 Pot ACP DB (MB1064) Smartphone accessory main board T P Boot RST ST- LINK DB4 Lightning C11 A Apple host extension board V B U S DB2 5V sw 3 V Pwr Select ~90mm XTAL Joy Cd c Audi o ADC DB4' Cuttable PCB D B 1 D B 3 Jack Jack Micro AB Micro B Micro B ~150mm Cuttable PCB Servo connector USBb connector ST-Link connector PSU connector
THANKS 22