一、简介
方案为串口音频播放芯片+功放芯片,音频播放芯片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、下载例程
点击下载:Gitee/ IOT趣制作 / STM32ExampleCode-13-MP3-MY1690S
1、打开例程
在笔者测试时,最初使用的是串口调试助手,我们还可以使用任意带串口的MCU进行编程控制音频播放
2、MP3.C/H
keil工程中主要是使用STM32的串口3来发送十六进制的串口指令,在MP3的资源文件中,例如播放指定MP3的功能如下所示:
烧录例程,大家就可以尝试使用STM32控制音频模块播放各种MP3了,或者通过一些在线文本转语音的网站[2]生成指定语句的MP3,实现智能语音提示等。