当前位置:网站首页>Arduino DY-SV17F自动语音播报
Arduino DY-SV17F自动语音播报
2022-07-03 00:56:00 【优信电子】
Arduino DY-SV17F自动语音播报
语音播报DY-SV17F
DY-SV17F简介
DY-SV17F 是一款智能语音模块,集成 IO 分段触发,UART 串口控制,ONE_line 单总线串口控制,标准 MP3 等 7 种工作模式;板载 5W D 类功放,可直接驱动 4Ω,3~5W 喇叭;支持 MP3,WAV 解码格式,板载 32Mbit(4MByte)flash 存储,可通过 USB 数据线连接电脑更新音频文件。
本次将会以IO 分段触发实现语音自动播报
工作模式说明
- IO 组合模式0:
单片机控制 I/O 组合触发(低电平有效)指定的曲目后释放(IO0-IO7 恢复高电平),播放完当前曲目停止;播放中途重新触发,播放新的曲目,播放结束停止;若一直触发(不释放电平),循环播放。 - IO 组合模式 1:
单片机控制 IO 组合触发(低电平有效)指定的曲目,一直循环播放指定曲目,电平释放(IO0-IO7
恢复高电平)即停止播放。播放中途释放电平,即刻停止播放。 - IO 独立模式 0:
IO0-IO7 独立控制 8 首曲目, IO 触发(低电平有效)指定的曲目后释放(IO0-IO7 恢复高电平),播放完当前曲目停止;播放中途重新触发,播放新的曲目,播放结束停止;若一直触发(不释放电平),循环播放。 - IO 独立模式 1:
IO0-IO7 独立控制 8 首曲目,IO 触发(低电平有效)指定的曲目,一直循环播放指定曲目,
电平释放(IO0-IO7 恢复高电平)即停止播放。播放中途释放电平,即刻停止播放。 - UART 串口模式:
通过UART串口发送
起始码-指令类型-数据长度(n)-数据 1-数据 n-和检验(SM)
来实现模块的语音播报、上一曲、下一曲等功能。 - One_line 单总线串口模式:
通过特定的时序,往模块发送0码或1码的组合实现模块的语音播报、上一曲、下一曲等功能。
下文由Arduino控制DY-SV17F的“IO独立模式0”展开
IO 独立模式 0
电路配置
上图中的上下拉电阻不可以省略。
接线
按要求把外围电路搭建好
Arduino UNO | DY-SV17F |
---|---|
D9 | IO0 |
D8 | IO1 |
D7 | IO2 |
D6 | IO3 |
D5 | IO4 |
D4 | IO5 |
D3 | IO6 |
D2 | IO7 |
5V | 5V |
GND | GND |
先拔掉Arduino UNO上5V接口的线 然后用USB数据线把DY-SV17F模块连接上电脑,
打开我的电脑,会发现我的电脑中多了一个名称为“U盘”的盘符,空间大小只有不到4M,这就是我们放音频文件的地方,所以要注意音频文件的大小。导入需要播报的音频文件,注意命名格式为“0000X。mp3”其中X为1-8的数字
驱动
一切准备就绪后开始实验
通过改变Arduino UNO的IO口电平来驱动DY-SV17F播报预存的音频文件
由手册可知,IO独立模式是需要把DY-SV17F的8和IO口默认拉高,然后通过拉低某一个IO的口电平来选择播放该IO口对应的音频文件。
那么我们可以通过创建一个函数来专门用于把DY-SV17F的8个IO口拉高
void INIT()
{
digitalWrite(IO0,HIGH);
digitalWrite(IO1,HIGH);
digitalWrite(IO2,HIGH);
digitalWrite(IO3,HIGH);
digitalWrite(IO4,HIGH);
digitalWrite(IO5,HIGH);
digitalWrite(IO6,HIGH);
digitalWrite(IO7,HIGH);
}
每一次播放完一段音频后都要调用这个初始化函数去拉高所有IO口,使DY-SV17F恢复默认状态
现在来测试播放效果
主函数
void loop() {
// put your main code here, to run repeatedly:
Play(1);
delay(1000);
Play(2);
delay(1000);
Play(3);
delay(1000);
}
上面是播放DY-SV17F存储内的第1-3个音频文件,每个文件播放间隔1秒钟,
需要播放其它的音频文件只需要更改
Play(X);
“X”指需要播放的第几段音频文件。
下面来看看效果
DY-SV17F音频测试
边栏推荐
- 寻找标杆战友 | 百万级实时数据平台,终身免费使用
- R language ggplot2 visualization: use ggplot2 to display dataframe data that are all classified variables in the form of thermal diagram, and customize the legend color legend of factor
- [flutter] icons component (load the built-in icon of flutter | display the material design icon completely)
- 每日一题之干草堆的移动
- 【FH-GFSK】FH-GFSK信号分析与盲解调研究
- [untitled]
- Canvas drawing -- bingdd
- Asynchronous, email and scheduled tasks
- [introduction to AUTOSAR seven tool chain]
- Database SQL language 02 connection query
猜你喜欢
[overview of AUTOSAR four BSW]
攻克哈希的基本概念与实现
【FPGA教程案例6】基于vivado核的双口RAM设计与实现
MySQL foundation 04 MySQL architecture
Excel if formula determines whether the two columns are the same
excel去除小数点后面的数据,将数字取整
[shutter] image component (configure local GIF image resources | load placeholder with local resources)
【FH-GFSK】FH-GFSK信号分析与盲解调研究
安全运营四要素之资产、脆弱性、威胁和事件
Strongly connected components of digraph
随机推荐
Compare version number
excel去除小数点后面的数据,将数字取整
基本远程连接工具Xshell
465. 最优账单平衡 DFS 回溯
Machine learning terminology
18_ The wechat video number of wechat applet scrolls and automatically plays the video effect to achieve 2.0
Canvas drawing -- bingdd
拥抱平台化交付的安全理念
【FPGA教程案例6】基于vivado核的双口RAM设计与实现
信息熵的基础
Lu Zhe, chief scientist of Shiping information: building data and personnel centered security capabilities
[flutter] icons component (fluttericon Download Icon | customize SVG icon to generate TTF font file | use the downloaded TTF icon file)
[AUTOSAR + IO Architecture]
Basic concept and implementation of overcoming hash
Asynchronous, email and scheduled tasks
Kivy教程大全之 创建您的第一个kivy程序 hello word(教程含源码)
[AUTOSAR 11 communication related mechanism]
Key wizard play strange learning - front desk and Intranet send background verification code
[shutter] image component (cached_network_image network image caching plug-in)
1038 Recover the Smallest Number