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

【经验分享】STM32蜂鸣器播放音乐实例

[复制链接]
STMCU小助手 发布时间:2022-6-5 21:00
本文用STM32单片机蜂鸣器来演奏音乐,用的开发软件是STM32CubeIDE。

& A( a* ^" L4 E9 ]
蜂鸣器
  r: ]: j/ j. C. E: m
有源蜂鸣器
    内部有震荡源,只要通电就会有响声,但是声音频率固定。
无源蜂鸣器
    内部不含振荡源,蜂鸣器管脚输出一定频率的信号,才能发声。
    本实例中用到的是无源蜂鸣器,控制频率高低发出不同声调的声音。
. ^% l% T& P9 c6 p
电路原理图& @8 g' C- _% E
U](L20(NTB6$JV%I8X{KD1V.png
6 J! O3 b3 C& M* B, \* ^- Y
    由电路原理图可知,蜂鸣器在PB5管脚,以一定频率翻转PB5管脚的电平,可以使蜂鸣器发声。
( _3 r) Y" V% s7 p8 K; O/ F& Z
STM32工程
- n9 o) G8 f0 _! d* P
    打开STM32CubeIDE软件,新建STM32工程。  H; ?6 P% ~" {$ o6 k! V
    配置时钟。4 ]4 Q; F6 D! X$ ?! _' D# w; F
IF57{E]PMP1DR)K~$WH]M9V.png

% u" B# Z1 a& B- t) p( \
    项目设置。  b5 t+ H& Z+ l. A* V# V; x3 A" N
XJ052)}W]21Q7MRMAAH~T~W.png
    设置调试模式。
R3_FX78WLT%D(1PS(67C{GA.png
    开启PB5管脚。0 k1 O4 {+ K0 D8 \  p' w( ]
`W}@RR[WES%$}]8`EL{9)WS.png
! c+ G9 i* z9 w" p( M
    写延时函数。9 f5 i3 |& Z" W1 |
    开启定时器TIM7,是为了写延时函数HAL_Delay_us()。3 b6 K2 w- G6 h  D7 ^( {
V8)DDM)7YK1L5F2021RSLPL.png
    保存,生成代码。0 E& h8 E% F  e1 R+ ^$ ~
HAGH]ZHW@5UR(HSB}70%4)A.png
    打开gpio.c,添加如下代码。
AY[1DEX}Z$KYFJBO`Z6PZ@U.png
    依次从音调数组中取music。
    根据music的值在tone数组中得到该音的发声频率(tone[music]),调用sound函数控制蜂鸣器发声。
    声音的发声时间由time数组控制。
    蜂鸣器演奏音乐的两个要素就是声音频率、声音持续时间,分别对应乐谱中的音调、节拍。
FV0EJDJJ93@[6~87159N(_6.png
收藏 评论0 发布时间:2022-6-5 21:00

举报

0个回答

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版