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

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

1.改变PWM频率,输出不同音调
2.改变占空比,调节音量大小
3.按键弹奏,支持按按键录取弹奏音
4.播放:中高低音;录取音;指定歌曲
5.支持按上一首,下一首,调弹奏速度(播放时间),切模式,暂停播放

简单的乐谱知识

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

音长:

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

	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电容的波形(后输入功放):

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/685198.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

To C道路越走越夯实,1688彻底变身了?

在偌大的电商市场,消费者都是专业的“掘宝者”,热衷于发现各种新奇商品和采购新通路。 拼多多、1688等平台也正是在这种情况下,成为消费市场的“宠儿”。其中,1688的发展路径较为独特,据天眼查,其为源头厂…

springboot大学生就业管理系统-计算机毕业设计源码89344

摘 要 信息化社会内需要与之针对性的信息获取途径,但是途径的扩展基本上为人们所努力的方向,由于站在的角度存在偏差,人们经常能够获得不同类型信息,这也是技术最为难以攻克的课题。针对大学生就业管理系统等问题,对大…

【Linux取经路】信号的发送与保存

文章目录 一、重新理解发送信号二、信号的保存、阻塞信号的概念三、信号集操作函数3.1 sigprocmask3.2 sigpending 四、阻塞信号代码验证五、结语 一、重新理解发送信号 进程通过位图来实现对普通信号(1-31号信号)的保存,该位图保存在进程的…

TikTok广告投放攻略——广告类型详解

TikTok广告是品牌或创作者付费向特定目标受众展示的推广内容(通常是全屏视频)。TikTok 上的广告是一种社交媒体营销形式,通常旨在提高广告商的知名度或销售特定产品或服务。 就 TikTok广告投放而言,其组织层级分为三个层级&#x…

数据库基本知识

感觉面试的时候面试官大多数都必问数据库,也可以理解,企业肯定会涉及到大规模数据存储,那么数据库存储就一定会用到数据库。做一些数据库相关的基本知识总结,持续更新~ 【死锁专题】 1.如何解决数据库并发造成的安全问题&#x…

【LeetCode 滑动窗口】LC_3_无重复字符的最长子串

文章目录 1. 无重复字符的最长子串 1. 无重复字符的最长子串 题目链接🔗 🍎题目思路:🐧① 滑动窗口的思想;🐧② 用什么来维护窗口呢 ? 用 双指针 和 unordered_set来维护,为什么呢…

从 LangChain 中学习检索增强

前言 之前讲了一些关于 RAG 的使用技巧和经验,今天我们提供两个进阶版的文本切分和检索的方法,希望对你有所帮助。以下两种方法取自 LangChain 的官方示例,感兴趣也可以直接去阅读官方文档。 一、父文档检索 Parent Document Retriever 当…

瑞萨芯片简介和工具链使用

文章目录 前言一、RH850简介二、瑞萨开发工具链1.e2studio2.IAR For RH8503.CS+ for CC4.GHS前言 瑞萨RH850 MCU家族,专为高端汽车应用而设计。MCU家族中的不同成员,如RH850/F1x、RH850/P1x、RH850/D1x、RH850/E1x和RH850/C1x,每个成员针对特定的应用领域。 RH850 F系列的…

数据结构(3)栈、队列、数组

1 栈 1.1 栈的定义 后进先出【LIFO】 1.2 基本操作 元素进栈出栈 只能在栈顶进行!!! 经常考的题: 穿插的进行进栈和出栈 可能有多个选项 1.3 顺序栈 1.3.1 初始化 下标是从0开始的 1.3.2 进栈 更简单的写法: 1.3…

【经典算法】最短路径算法——Dijkstra

🌈 个人主页:十二月的猫-CSDN博客 🔥 系列专栏: 🏀算法启示录 💪🏻 十二月的寒冬阻挡不了春天的脚步,十二点的黑夜遮蔽不住黎明的曙光 目录 前言 松弛视角 伪代码展示 三角形理…

GlaDS缘起

题目:Modeling channelized and distributed subglacial drainage in two dimensions 近年来,冰盖表面融化与冰盖动态之间的联系及其对海平面上升的影响引起了广泛关注。特别是格陵兰冰盖的研究显示,表面融水显著影响冰川移动速度,而冰下排水系统对冰川动力学及冰川水文学…

锂电池寿命预测 | Matlab基于SSA-SVR麻雀优化支持向量回归的锂离子电池剩余寿命预测

目录 预测效果基本介绍程序设计参考资料 预测效果 基本介绍 【锂电池剩余寿命RUL预测案例】 锂电池寿命预测 | Matlab基于SSA-SVR麻雀优化支持向量回归的锂离子电池剩余寿命预测(完整源码和数据) 1、提取NASA数据集的电池容量,以历史容量作…

《尚庭公寓》项目部署之Docker + Nginx

docker rmi nginx docker pull nginx docker rm -f nginx #先创建一个简易的nginx容器(后面会删),然后通过 docker cp命令把容器里面的nginx配置反向拷贝到宿主主机上。 docker run --name nginx -p 80:80 -d nginx# 将容器nginx.conf文件复…

[ubuntu]docker 卡登录 You‘ve been signed out

Setting->Resources->Proxies设置当前使用的proxies即可 参考:https://github.com/docker/for-mac/issues/7160#issuecomment-2061040813

C++ 利用模板对不同类型的数组元素排序

一、问题描述&#xff1a; 使用template函数模板对一个长度为5的int数组和char数组元素进行排序&#xff08;升序&#xff09;。 二、代码&#xff1a; #include <iostream>using namespace std;template<typename T> void swapWWW(T &a, T &b) {T c a;…

乡村振兴与脱贫攻坚相结合:巩固拓展脱贫攻坚成果,推动乡村全面振兴,建设更加美好的乡村生活

目录 一、引言 二、巩固拓展脱贫攻坚成果 1、精准施策&#xff0c;确保稳定脱贫 2、强化政策支持&#xff0c;巩固脱贫成果 3、激发内生动力&#xff0c;促进持续发展 三、推动乡村全面振兴 1、加快产业发展&#xff0c;增强乡村经济实力 2、推进乡村治理体系和治理能力…

uniapp中父子组件的传值

1. uniapp中父子组件的传值 1.1. 父子组件的传值 通过props来实现, 子组件通过props来接收父组件传过来的值 1.1.1. 父组件 <!-- 父组件 --> <template><view><my-son :title"title" sendData"getSonData"></my-son><…

巧用docker+jmeter快速实现分布式百万级并发

分享背景 碰到的问题&#xff1a; 一个JMeter实例可能无法产生足够的负载来对你的应用程序进行压力测试&#xff5e; 解决办法&#xff1a; 1、修改jmeter配置文件里的内存堆 2、引入jmeter分布式压测 带来的问题&#xff1a; 如果我们要做分布式负载测试–我们需要1个…

win10下,python3.7安装xlrd和xlwt

win10下&#xff0c;执行import xlwt&#xff0c;结果报错 No module named xlwt。 原因&#xff1a;使用的python没有安装xlwt包。 解决方法&#xff1a; 1&#xff09;打开一个命令窗口&#xff0c;执行&#xff1a;where python&#xff0c;可以看到使用的python路径及版…

5.31.8 学习深度特征以实现判别定位

1. 介绍 尽管没有对物体的位置提供监督,但卷积神经网络 (CNN) 各层的卷积单元实际上可以充当物体检测器。尽管卷积层具有这种出色的物体定位能力,但当使用全连接层进行分类时,这种能力就会丧失。最近,一些流行的全卷积神经网络,如 Network in Network (NIN) [13] 和 Goog…