STM32驱动语音模块播报实时时间
2022-12-07 来源:zhihu
前几天有个学生在用一个语音模块,遇到了点困难,为了方便调试,自己也买了两个一起玩了一下。

今天就来简单分享一下这个模块。
模块概述
DY-SV17F 语音模块,包括IO 分段触发,UART 串口控制, ONE_line 单总线控制,标准 MP3 等 7 种工作模式;
板载 5W D 类功放,可直接驱动 4Ω, 3~5W 喇叭;
支持 MP3,WAV 解码格式;
板载4MBte flash 存储,可通过 USB 数据线连接模块上的MicroUSB接口,电脑可以将模块识别为一个U盘,打开此存储更新音频文件即可。
工作模式配置

硬件连接


原理图
为了测试方便,各位也可以画一个PCB板,这样就可以避免使用一堆杜邦线进行连接,也可以避免调试过程中遇到一些不必要的问题,底板的原理图可以参考下图所示。

因为我们要选择串口模式,所以实际使用过程中,CON1、CON2接地,CON3接高电平。
CON3/BUSY 引脚,上电 30mS 内作为模式配置引脚 3,30mS 后作为 BUSY 信号输出,播放曲目时,CON3输出高电平(3.3V),播放结束输出低电平(0V)。
注意:上述CON3引脚状态,我实际测试结果与手册中描述相反,此处自己使用时进行一下确认。
资源文件
要想实现语音播放当前时间,我们首先要找到或者制作一些基本语音的音频文件,如果想制作音频文件素材,可以用下面网址制作:
https://www.coder.work/text2audio
准备好组合播放的音频素材文件,将其放置在 ZH 文件夹下,曲目名要求固定两个字符,为了控制方便,我们选择以两位数字的形式命名文件名,本次实例的音频文件素材如下:

素材的语音内容具体如下:

协议
串口通信,波特率为9600,数据位:8,停止位1位,校验位N。

查询模块当前播放状态的串口指令,调试过程如截图所示:

模块的串口协议有很多,因为要播放实时时间,这个是一个变化的量,使用模块自带的组合播放功能,可以方便的实现实时时间的播报。

例如:串口发送 AA 1B 04 30 31 30 32 8C,模块会将文件名为“01.mp3”、“02.mp3”的歌曲进行组合播放。
结果展示
要进行组合播放,无非将要组合的文件名进行拼接,将这些内容按照组合播放的通信协议,组成一个字符数组进行发送即可,代码比较简单,
下一篇:STM32控制的电子负载
- 意法半导体中国本地造STM32微控制器启动规模量产
- 意法半导体全新STM32C5系列,重新定义入门级微控制器性能与价值,赋能万千智能设备
- 使用 Keil Studio for Visual Studio Code开发 STM32 设备
- 基于机智云与STM32的智能拐杖安全监测系统在养老物联网中的应用
- 内置全栈安全,一站式满足CRA法案与IEC 62443标准——米尔STM32MP257核心板
- 如何用 STM32 FLASH 实现等效 100 万次擦写的 EEPROM 功能?
- 实战解析:通过一个小项目掌握STM32所有外设
- STM32学了两年半,却还是不会做项目
- 意法半导体推出最新STM32MP21微处理器,兼具高性价比、低功耗、高灵活性
- 基于STM32的矿井作业环境监测系统设计与实现
- 六大全新产品系列推出,MCX A微控制器家族迎来创新
- 意法半导体全新STM32C5系列,重新定义入门级微控制器性能与价值,赋能万千智能设备
- 从控制到系统:TI利用边缘AI重塑嵌入式MCU的边界
- 模组复用与整机重测在SRRC、CCC、CTA/NAL认证中的实践操作指南
- 有源晶振与无源晶振的六大区别详解
- 英飞凌持续巩固全球微控制器市场领导地位
- 使用 Keil Studio for Visual Studio Code开发 STM32 设备
- 蓝牙信道探测技术原理与开发套件实践
- LoRa、LoRaWAN、NB-IoT与4G DTU技术对比及工业无线方案选型分析
- Microchip 推出生产就绪型全栈边缘 AI 解决方案,赋能MCU和MPU实现 智能实时决策




