STM32 音乐播放器之音频入门实验(pwm、dac、.wav、.mp3)

1.pwm实现简易电子琴实验

1.改变PWM频率,输出不同音调

2.改变占空比,调节音量大小

3.按键弹奏,支持按按键录取弹奏音

4.播放:中高低音;录取音;指定歌曲

5.支持按上一首,下一首,调弹奏速度(播放时间),切模式,暂停播放

简单的乐谱知识

音调:音阶分为中音、高音、低音,点在上面为高音,没有点为中音,点在下面为低音

音长:

简谱对应音阶下无横线为一拍,有单横线为半拍,双横线为1/4拍。音阶数字后有点加半拍音长,有横线加一拍。对应曲谱可以搜索一下。

cpp 复制代码
	int16_t solitary_brave[]=
	{
		M6,50,M7,50,H1,50,H2,50,M7,50,H1,50,H1,100,Z0,10,	//爱你孤身走暗巷
		H1,50,M7,50,H1,50,H2,50,M7,50,H1,50,H1,100,Z0,10, 	//爱你不跪的模样
		H1,50,H2,50,H3,50,H2,50,H3,50,H2,50,H3,100,H3,50,H3,50,H2,50,H3,100,H5,100,H3,100,Z0,10 
		//爱你对峙过绝望不肯哭一场
	};

2.普通dac播放wav文件

3.普通dac播放mp3文件

4.编解码芯片vs1053播放wav文件

5.编解码芯片WM8978播放mp3文件

6.音频知识总结

(1)dac波形

dac引脚的波形:

接上106 10uf的电容,没接喇叭的波形:

(2)pwm波形

pwm引脚波形:

经过1uF电容的波形:

再经过1uf电容的波形(后输入功放):

功放出来喇叭差分的波形:

相关推荐
起个网名真难~8 小时前
STM32F103_Bootloader_从零到UART升级成功_博客原稿
stm32·单片机·嵌入式硬件
二本咕咕-机械转码9 小时前
FreeRTOS深入解析(一)_链表与并发保护——哨兵循环链表、排序键游标、临界区与关调度
单片机·算法·链表
Zwawa10 小时前
串口命令如何从字符串长成协议:帧头、长度、校验和与状态机
c语言·单片机·嵌入式
小李不想当小白10 小时前
BKP备份寄存器与RTC实时时钟(STM32标准库学习笔记)
笔记·stm32·单片机·嵌入式硬件·学习·嵌入式
Zw-awa12 小时前
串口命令如何从字符串长成协议:帧头、长度、校验和与状态机
stm32
La Pulga13 小时前
【FreeRTOS源码学习笔记】链表的实现
数据结构·笔记·stm32·mcu·链表·嵌入式·freertos
铅笔小新z16 小时前
【stm32】WWDG(窗口看门狗)
stm32·单片机·嵌入式硬件
comyccccc17 小时前
平衡车底板设计:精准布局与高效布线学习笔记
单片机·嵌入式硬件
La Pulga17 小时前
【FreeRTOS源码学习笔记】任务创建
笔记·stm32·mcu·学习·嵌入式·freertos·实时操作系统
芯片人00718 小时前
GEK100系列芯片进入上市公司上海移远通信供应链
人工智能·单片机·嵌入式硬件·物联网·芯片