当前位置: 首页 > news >正文

嵌入式通用硬件模块设计——串口音频播放模块

模块功能展示:

串口音频控制模块

在这里插入图片描述

一、简介

方案为串口音频播放芯片+功放芯片,口音频播放芯片IC为my1690-16s,功放为PAM8406。

1、my1690-16s

迈优科技的一款由串口控制的插卡MP3播放控制芯片,支持串口控制播放指定音频、音量调节等功能。 支持MP3、WAV格式双解码,支持24 位 DAC 输出,模块最大支持32G TF卡,也可外接U盘或USB数据线连接电脑更换SD卡音频文件;

2、PAM8406

PAM8406是一款数字功放芯片,支持双声道,能够驱动2个5W的喇叭,建议喇叭使用3-4w左右,5W在大音量长时间使用时会发热现象,不过问题不大,模块可以在很多店铺购买,如淘宝、立创商城等平台,价格从几毛钱到2块左右不等。

二、电路设计

1、my1690-16s

参考芯片手册:
在这里插入图片描述
例如:
在这里插入图片描述

2、PAM8406

参考芯片手册:
在这里插入图片描述

例如:
在这里插入图片描述

3、完整参考电路

在这里插入图片描述
PCB工程已上传至“立创开源硬件平台”:
立创开源硬件平台-通用串口音频播放模块设计

三、STM32串口控制音频播放例程

1、打开例程

在笔者测试时,最初使用的是串口调试助手,我们还可以使用任意带串口的MCU进行编程控制音频播放,可在公众号“IOT趣制作”私信回复“0839”获取工程文件,打开“MP3-my1690-16s模块测试代码-keil工程”文件夹,工程主要添加了MP3.c和MP3.h文件,位于工程目录下的“.\HARDWARE\MP3”文件夹内。
在这里插入图片描述
在这里插入图片描述

2、MP3.C/H

keil工程中主要是使用STM32的串口3来发送十六进制的串口指令,在MP3的资源文件中,例如播放指定MP3的功能如下所示:

/*
*********************************************************************************************************
* 函 数 名: PlayMp3
* 功能说明: 播放指定MP3
* 形 参:uint8_t mp3num:1-65535
* 返 回 值: 无
*********************************************************************************************************
*/
void PlayMp3(uint8_t mp3num)
{//起始码 长度 操作码 曲目高位 曲目低位 校验码 结束码//7E     05     41      00       01      45     EFuint8_t arry[]={0x7E,0x05,0x41,0x00,0x00,0x00,0xEF};    arry[3]=mp3num/256;arry[4]=mp3num%256;arry[5]=(arry[1]^arry[2]^arry[3]^arry[4]);USART3_Send_Hex_Buff(arry,7);
}

烧录例程,大家就可以尝试使用STM32控制音频模块播放各种MP3了。

相关文章:

嵌入式通用硬件模块设计——串口音频播放模块

模块功能展示: 串口音频控制模块 一、简介 方案为串口音频播放芯片功放芯片,口音频播放芯片IC为my1690-16s,功放为PAM8406。 1、my1690-16s 迈优科技的一款由串口控制的插卡MP3播放控制芯片,支持串口控制播放指定音频、音量调节…...

【PLSQL】PLSQL基础

文章目录 一:记录类型1.语法2.代码实例 二:字符转换三:%TYPE和%ROWTYPE1.%TYPE2.%ROWTYPE 四:循环1.LOOP2.WHILE(推荐)3.数字式循环 五:游标1.游标定义及读取2.游标属性3.NO_DATA_FOUND和%NOTFO…...

【C++笔记】C++内存管理

【C笔记】C内存管理 一、C中动态内存申请的方式二、new和delete的实现原理2.1、operator new和operator delete函数 一、C中动态内存申请的方式 在C语言中我们需要动态申请空间的时候我们通常都是用malloc函数,但是malloc函数对自定义类型是没什么问题的&#xff0…...

十四五双碳双控时代下的“低碳认证”

目录 前言 十四五双碳双控时代下的“低碳认证” 一、关于“低碳认证” 二、低碳认证优势 三、环境产品认证EPD 四、EPD相关运营机构 五、碳中和相关机构 六、EPD的认证流程 七、低碳产品认证认证流程和要求 八、相关机构认证证书样例 九、证书附件表 前言 通过本篇文…...

Android——基本控件(下)(十九)

1. 菜单:Menu 1.1 知识点 (1)掌握Android中菜单的使用; (2)掌握选项菜单(OptionsMenu)的使用; (3)掌握上下文菜单(ContextMenu&am…...

聚类分析 | MATLAB实现基于DBSCAD密度聚类算法可视化

聚类分析 | MATLAB实现基于LP拉普拉斯映射的聚类可视化 目录 聚类分析 | MATLAB实现基于LP拉普拉斯映射的聚类可视化效果一览基本介绍程序设计参考资料 效果一览 基本介绍 基于DBSCAD密度聚类算法可视化,MATLAB程序。 使用带有KD树加速的dbscan_with_kdtree函数进行…...

reactantd(12)动态表单的默认值问题

最近遇到一个需求是有一个表单可以输入各种信息,然后还需要有一个编辑功能,点击编辑的时候需要把当前数据填入到表单里面。在网上查了很多种方法,然后我的思路是使用initialValues搭配setState()使用。默认值都为空,然后点击单条数…...

无涯教程-Python机器学习 - Stochastic Gradient Boosting函数

它也称为梯度提升机。在下面的Python食谱中,我们将通过使用pima Indians糖尿病数据集上的 sklearn 的 GradientBoostingClassifier 类来创建随机梯度Boostingensemble模型进行分类。 首先,导入所需的软件包,如下所示: from pandas import read_csv from sklearn.model_select…...

SOLIDWORKS中多实体文件到装配体的转换技巧

我们在做机械等工程设计中,有时为了节省时间,需要把多实体的“零件”,直接转换为装配体,不再另外装配,这样能大大简化设计的操作时间,复杂程度。 在这里,我们首先要了解,SOLIDWORKS文…...

Transformer (Attention Is All You Need) 论文精读笔记

Transformer(Attention Is All You Need) Attention Is All You Need 参考:跟李沐学AI-Transformer论文逐段精读【论文精读】 摘要(Abstract) 首先摘要说明:目前,主流的序列转录(序列转录:给…...

Git企业开发控制理论和实操-从入门到深入(二)|Git的基本操作

前言 那么这里博主先安利一些干货满满的专栏了! 首先是博主的高质量博客的汇总,这个专栏里面的博客,都是博主最最用心写的一部分,干货满满,希望对大家有帮助。 高质量博客汇总https://blog.csdn.net/yu_cblog/cate…...

Positive Technologies 专家帮助修复 Western Digital 网络存储设备中的一个危险漏洞

Positive Technologies 专家帮助修复 Western Digital 网络存储设备中的一个危险漏洞 经过验证的攻击者可利用该漏洞在受攻击的设备上注入恶意软件并远程访问文件 Western Digital 感谢 Positive Technologies 专家 Nikita Abramov 发现 Western Digital NAS 固件中的一个漏洞…...

【springboot】springboot定时任务:

文章目录 一、文档:二、案例: 一、文档: 【cron表达式在线生成器】https://cron.qqe2.com/ 二、案例: EnableScheduling //开启任务调度package com.sky.task;import com.sky.entity.Orders; import com.sky.mapper.OrderMapper; …...

腾讯云学生服务器申请、学生认证入口及学生机价格表

腾讯云学生服务器申请、学生认证入口及学生机价格表,学生机申请流程,腾讯云学生服务器优惠活动:轻量应用服务器2核2G学生价30元3个月、58元6个月、112元一年,轻量应用服务器4核8G配置191.1元3个月、352.8元6个月、646.8元一年&…...

pip安装mysqlclient依赖报错 /bin/sh: 1: mysql_config: not found如何解决

报错信息: Collecting mysqlclient2.1.0Downloading https://mirrors.aliyun.com/pypi/packages/de/79/d02be3cb942afda6c99ca207858847572e38146eb73a7c4bfe3bdf154626/mysqlclient-2.1.0.tar.gz (87 kB)|███████████████████████████…...

基于paddleocr的版面分析

前处理: DocTr: Document Image Transformer for Geometric Unwarping and Illumination Correction (1)几何矫正 给定一张存在几何和光照畸变的文档图像,我们首先用一个包含六个卷积模块的特征提取器对其进行特征提取&#xf…...

网工内推 | IT网工,华为、华三认证优先,15k*13薪

01 广东善能科技发展股份有限公司 招聘岗位:IT网络工程师 职责描述: 1、负责公司项目售后技术支持工作; 2、负责项目交付实施,配置调试、运维等; 3、参加合作厂商产品技术知识培训; 4、参加合作厂商工程师…...

leetcode 739. 每日温度

2023.8.28 本题用暴力双层for循环解会超时&#xff0c;所以使用单调栈来解决&#xff0c;本质上是用空间换时间。维护一个单调递减栈&#xff0c;存储的是数组的下标。 代码如下&#xff1a; class Solution { public:vector<int> dailyTemperatures(vector<int>&…...

【活体检测模型】活体检测思路推演

ref:https://arxiv.org/pdf/1611.05431.pdf https://github.com/miraclewkf/ResNeXt-PyTorch 用分类的思想做活体检测&#xff0c;要求准确的分出正负样本&#xff0c;否则&#xff0c;支付宝被别人用了&#xff0c;问题就很严重。 大部分的商用场景还是 摇摇头、张张口&#x…...

【微服务部署】03-健康检查

文章目录 1. 探针集成实现高可用1.1 LivenessProbe1.2 ReadinessProbe1.3 StartupProbe 2. 健康检查看板2.1 组件包 1. 探针集成实现高可用 LivenessReadinessStartup 1.1 LivenessProbe 判断服务是否存活结束“非存活”状态服务根据重启策略决定是否重启服务 1.2 Readines…...

ARMv8/v9架构ID_AA64ISAR3_EL1寄存器详解与应用

1. AArch64指令集属性寄存器ID_AA64ISAR3_EL1概述 在ARMv8/v9架构中&#xff0c;ID_AA64ISAR3_EL1是一个关键的系统寄存器&#xff0c;它属于AArch64指令集属性寄存器家族。这个64位寄存器专门用于描述处理器在AArch64执行状态下实现的各种指令集扩展特性。作为ARM架构的标准实…...

2010-2024年省级农村居⺠消费价格指数

本数据为国家统计局编制的官方统计数据&#xff0c;具体编制方法参考国家统计局CPI调查方案及《中国统计年鉴》。农村居民消费价格指数&#xff08;Consumer Price Index for Rural Residents&#xff0c;简称农村CPI&#xff09;是综合反映农村居民家庭所购买的生活消费品价格…...

Redis 身份迷失

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…...

如何快速使用QVina:分子对接的终极完整指南

如何快速使用QVina&#xff1a;分子对接的终极完整指南 【免费下载链接】qvina Accurately speed up AutoDock Vina 项目地址: https://gitcode.com/gh_mirrors/qv/qvina QVina是一个高效准确的分子对接工具&#xff0c;专门用于加速AutoDock Vina的计算过程。如果你正在…...

Veo 2与Sora、Pika、Runway ML v4终极横评:18项指标实测(含时长支持、物理仿真、多主体追踪)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Veo 2视频生成技术全景概览 Veo 2 是 Google DeepMind 推出的下一代原生视频扩散模型&#xff0c;支持长达 60 秒、1080p 分辨率、24fps 的高质量视频生成&#xff0c;显著超越前代在时序一致性、物理…...

有限元分析前传:不懂‘最小势能原理’和‘自然边界条件’?从变分法开始说清楚

有限元分析前传&#xff1a;从变分法到最小势能原理的工程实践指南 在ANSYS或Abaqus中点击"求解"按钮时&#xff0c;软件究竟在背后执行什么数学魔法&#xff1f;许多工程师能熟练操作CAE界面&#xff0c;却对弹窗中"势能最小化计算中"的提示感到困惑。当我…...

011、逆Clark变换与逆Park变换

011、逆Clark变换与逆Park变换:从一次电机“鬼畜”抖动说起 有次调试一台永磁同步电机,电流环PI参数已经调得相当“丝滑”,转速响应也漂亮,结果一上负载,电机开始高频抖动,像踩了电门。示波器抓电流波形,发现三相电流里混着明显的6次谐波。当时第一反应是电流采样有问题…...

6月即将生效!TikTok Shop美区退货政策大改,商家承担所有买家责任退货运费

在跨境电商竞争日趋激烈的当下&#xff0c;任何平台规则的调整都直接关乎卖家的经营命脉。近日&#xff0c;TikTok Shop美区发布的一则公告&#xff0c;便在卖家群体中引发了广泛的关注与热议。根据公告&#xff0c;自2026年6月起&#xff0c;凡是因消费者个人原因发起的退货&a…...

3步解锁自动化:Elsevier Tracker智能追踪工具完全指南

3步解锁自动化&#xff1a;Elsevier Tracker智能追踪工具完全指南 【免费下载链接】Elsevier-Tracker 项目地址: https://gitcode.com/gh_mirrors/el/Elsevier-Tracker 在科研投稿的漫长等待中&#xff0c;每一次手动刷新Elsevier投稿系统都像是在黑暗中摸索。Elsevier…...

如何用WinUtil在5分钟内完成Windows系统优化和软件安装?

如何用WinUtil在5分钟内完成Windows系统优化和软件安装&#xff1f; 【免费下载链接】winutil Chris Titus Techs Windows Utility - Install Programs, Tweaks, Fixes, and Updates 项目地址: https://gitcode.com/GitHub_Trending/wi/winutil 你是否厌倦了每次重装系统…...