你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【中文文档】AN3997_如何使用STM32F4DISCOVERY对音频进行回播和...

[复制链接]
STMCU-管管 发布时间:2019-3-27 09:56
使用 STM32F4DISCOVERY 进行音频播放和录音5 Q) |8 Z$ [% O: C
. k6 K  o1 {' U$ Y/ e5 O
1 简介 ' C7 u/ w% A6 {8 r! w; a1 ~$ J7 Z

+ K2 b+ D4 X. o本应用笔记将介绍基于 STM32F4xx 微控制器和 STM32F4-DISCOVERY 板的音频 (wave) 播放和录音应用。
7 A( i. N# B. k8 B! R
% K$ Z7 ?: m( R9 u从 STM32F4xx 微控制器的内部 Flash 或在外部 U 盘上(通过主机模式中的 USB FS 内核)均可读取音频数据 (wave)。记录的波形文件只能存储在外部 U 盘中。
9 N9 ^+ M3 n/ y* m& z
) {' m/ ~) \! n; M/ r9 }' T录音流程基于使用 PDM 音频软件解码库的 ST MP45DT02 MEMS 麦克风硬件(将麦克风生成的 PDM 数据转换为存储在 U 盘中的 PCM 数据)。 1 ^! |5 q  @# }; q! H$ l
- B  `* V: H& K: l' j  {" y
本文档的内容编排如下:
2 Y$ K( `$ b' b& V- L9 g8 }2 X) \● 第 2 节:应用概述中介绍音频播放和录音固件的原理说明及固件运行演示。 1 u: V2 G) p/ k- u1 q! }
● 第 3 节说明如何开始使用相关软件和硬件。 7 K: c6 r- G# `+ W* L0 `1 t3 X
; y  m1 ?$ r) Z3 f
可在“STM32F4-DISCOVERY 板固件包”(v1.1.0 及更高版本)的“Project\Audio_playback_and_record”路径下找到此应用的源代码。 2 Z5 V+ d5 r: X+ ]7 E( H' T& K
$ @/ N/ u* S3 v( @9 A* |! ~
1.1 参考文档
# E; B5 K  A. h4 F% U8 d● STM32F4DISCOVERY 高性能 Discovery 板数据简要 + ]$ N" E7 ^2 ]
● 开始使用 STM32F4DISCOVERY 套件软件和固件环境 (UM1467) ' a! c( R. [2 V9 V8 @
● STM32 微控制器上的 PDM 音频软件解码 (AN3998) 8 T8 ^6 V) Q- |5 L0 P# {5 k
● STM32F40x 参考手册 (RM0090)
7 S$ G& {- ^  m● STM32F405xx STM32F407xx 数据手册
; ]) R7 \( R( b
* E# K+ H  b  `如需上述文档,请访问 www.st.com/stm32f4-discovery。, P2 w5 l2 k7 ~& [. a
% v% Y) q0 I: T7 Z
2 应用概述 $ }% l# v! Q4 Z" L* n& X8 j( \
2 {/ y: `# z. f* I) z7 k% z
2.1 应用说明 & v; U! ?: C& r2 i

  }  i% C) |& |4 _; H1 ?5 X音频播放和录音应用支持两种大容量存储介质。在微控制器的内部 Flash 或在外部 U 盘上均可播放音频数据,但记录数据时只能使用外部 U 盘。这通过 main.h 文件中的 DEFINE 语句选择。在工作区工具栏中,选择项目配置: 9 h; p# `9 ~" @$ S0 E
6 b0 M1 p! G7 v* f3 k$ G
● MEDIA_IntFLASH
2 d8 Y5 q2 ]& j1 s% Y: V; L, G● MEDIA_USB_KEY 2 l, j" s" J6 O0 ~+ G' m  y

5 j4 \3 F) V* h3 `固件驱动程序可以:   [: w1 Q! g: o! c6 r, n
● 从外部 U 盘或内部 Flash 播放存储的波形文件 5 m- G6 E; f0 z1 K4 V) N
● 在外部 U 盘中记录波形文件 2 S: O) j6 Z0 n
● 从播放切换为录音" b. I) n3 D* g% X
6 s1 ^' j% Y# j* a7 J' x
1.png

- h9 _- |6 j  O
此应用基于 STM32F4xx 器件和 STM32F4-DISCOVERY 板。
! X7 u; `3 ]5 h( W  r/ c" @( Z/ N+ ^
此应用的主要特性包括:

# Y1 Z1 w1 r9 O- [/ w0 [1 s
● MEMS 麦克风
0 E: {$ J  J% |8 l$ l* I7 Y. b
● 音频编解码器 DAC

! y3 y+ {% [* g, E  }3 Q
● 耳机

4 d( S. o; e  B, }$ w
● U 盘(如果使用该存储介质)

! `  L6 R/ S2 \( I# r9 _
● MEMS 加速计
$ Y, e2 o& y% L) O: @8 b* P
此应用使用的主要 STM32 模块包括:
3 k5 l: A2 `1 S# w; X4 w2 v; U) x
● USB 外设:主机模式下配置。使用大容量存储类 (MSC) 实现与 U 盘的音频数据交换。

$ |  k/ Q) |( R$ {9 p
● I2S 外设:在主发送器模式下配置,用于向外部音频编解码器 (DAC) 发送音频数据。它还可用作主接收器,作为 MEMS 麦克风的输入时钟。

$ j2 U; K, e' @, R& Y9 o
● DMA:用于将数据从缓冲器发送到 I2S 外设。这可以显著地降低 CPU 负载。
' ^* O; q8 t/ p0 ?/ V# ~$ N
● I2C 外设:用于控制多个外部器件(如音频编解码器)并从此器件获取数据。
" f6 }! s& S  ]4 a
● SPI 外设:用于控制 MEMS 加速计。
: c1 R+ n) L! |7 o8 u/ A; L3 ?
● 用户按钮:用于监视应用(播放或录音)。

9 D8 P5 y( H& {4 n

7 I  x( f0 ~( ?/ L# g( d; J
1.png
* g. a( K2 d+ Y& r! Z& l' x

7 H! b+ b% [3 [
注: 本应用笔记基于 STM32 USB On-The-Go (OTG) 主机和器件库。有关 USB 主机栈和大容量存储演示的详细信息,请参见“STM32F105/7、STM32F2xx 和 STM32F4xx USB On-TheGo主机和器件库”用户手册 (UM1021)。

# b* n' z( D! F; w- G/ I
2.2 固件驱动程序说明

6 ^9 @9 r# L; B, E: n' ^( H! X
此应用包含下列源文件:
' C: b9 Z. X1 E+ L! v% C8 ~8 m
● main.c:包含初始化代码,并根据所选的“MEDIA_IntFLASH”或“MEDIA_USB_KEY”配置启动应用。
* ]8 o9 |; L2 A" p+ |
● stm32f4xx_it.c:包含应用的中断处理程序。

0 U9 R' X5 l! B6 A8 S
● waveplayer.c:实施用于播放的功能。
+ @5 m+ G, m4 w+ E/ o0 u
● waverecorder.c:实施用于录音的功能。
8 [9 C) g; D: p0 v
● usb_bsp.c:实施 USB 主机库的开发板支持包。
( o- p+ u2 M1 e: J
● usbh_usr.c:包括 USB 主机库用户回调。
9 w4 S6 |( H+ ~  x% N6 q
$ }$ X7 ~4 o5 v. |) O
..............
0 Q- x. P9 }, C* f& @, e' ]
想了解更多,请下载原文阅读

. H6 ?$ U3 ^- X) Q3 L2 {+ L: r0 s% M. n
赞 收藏 评论1 发布时间:2019-3-27 09:56

举报

1个回答
单片机爱好者 回答时间:2019-5-26 23:10:34
支持~~~~~~~~~

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版