当前位置:网站首页>Arduino Uno接JQ8900-16p语音播报模块
Arduino Uno接JQ8900-16p语音播报模块
2022-06-11 02:27:00 【三个臭皮姜】
Arduino Uno接JQ8900-16p语音播报模块
前言
记录一个比较好用的语音播报模块JQ8900,这个模块成本低廉(十几块就能买到),使用方便。
此外,这个模块还有以下优点:
①搭载配套的软件可以支持文字转语音,生成mp3格式的文件,可以像U盘一样拷贝到模块中,并在代码中选择播放某个mp3文件;
②有多种人声可选,可调音量、音调和音速。
一、所需材料及接线
所需主要材料:
1.Arduino Uno开发板一块;
2.JQ8900-16p语音播报模块(含喇叭)一个;
3.杜邦线若干
语音播报模块如下图:
将mp3文件拷贝进入模块的内存接线:找到一根合适的数据线,一端接JQ8900模块,另一端连接电脑的USB口,将文件直接复制进去即可。
Arduino控制JQ8900模块接线:
| Arduino Uno | JQ8900-16p |
|---|---|
| 3 | VPP |
| GND | GND |
| 5V | DC-5V |
| JQ8900-16p | 喇叭 |
|---|---|
| SPK- | 正极 |
| SPK+ | 负极 |

(白色的是喇叭)
二、代码
通过串口控制选择对应的mp3文件播放:
/* 整合系统功能: 1.语音提示-串口选择mp3播放 */
char val="";//接收串口发送过来的值
int pin = 3;//接vpp引脚
void setup()
{
pinMode(pin,OUTPUT);
Serial.begin(9600);//设置波特率
Serial.println("请输入你要发送的数据:");//提示字符
}
void loop()
{
while(Serial.available()>0){
//检验在串口缓存区中是否有数据,如果有则返回1,没有就是0.
val = char(Serial.read());//Serial.read()一位一位的从串口缓存区里读数据
delay(10);
if(val=='S')
Sys_start();
if(val=='T')
Say_thanks();
}
}
//系统已启动-语音提示
void Sys_start()
{
//设置音量为20
SendData(0x0a); //清空数字
SendData(0x02); //音量20
SendData(0x00);
SendData(0x0c); //设置音量
delay(2000); //延时
//选取曲目1播放
SendData(0x0a);//清空数字
SendData(0x01);//曲目数字,对应00001.mp3
SendData(0x0b);//选曲播放
delay(2000);
//开始播放
//SendData(0x11);//开始播放
//delay(2000);
}
//谢谢使用-语音提示
void Say_thanks()
{
//设置音量为20
SendData(0x0a); //清空数字
SendData(0x02); //音量20
SendData(0x00);
SendData(0x0c); //设置音量
delay(2000); //延时
//选取曲目2播放
SendData(0x0a);//清空数字
SendData(0x02);//曲目数字,对应00002.mp3
SendData(0x0b);//选曲播放
delay(2000);
//开始播放
//SendData(0x11);//开始播放,这部分可以没有
//delay(2000);
}
void SendData (char addr )//发送函数
{
digitalWrite(pin,HIGH); /*开始拉高*/
delayMicroseconds ( 1000 );
digitalWrite(pin,LOW); /*开始引导码*/
delayMicroseconds ( 3200 );/*此处延时最少要大于2ms*/
for (int i = 0; i < 8; i++ ) /*总共8位数据 */
{
digitalWrite(pin,HIGH);
if ( addr & 0x01 ) /*3:1表示数据位1,每个位用两个脉冲表示 */
{
delayMicroseconds ( 600 );
digitalWrite(pin,LOW);
delayMicroseconds ( 200 );
}
else /*1:3表示数据位0 ,每个位用两个脉冲表示 */
{
delayMicroseconds (200);
digitalWrite(pin,LOW);
delayMicroseconds ( 600 );
}
addr >>= 1;
}
digitalWrite(pin,HIGH);
}
实现的效果是通过串口输入不同的值选择不同的mp3播放。
相关资料
语音播报模块相关的语音合成软件和资料:
链接:https://pan.baidu.com/s/1q0tWEnxipMKokLdAQdNoUQ?pwd=sv4m
提取码:sv4m
–来自百度网盘超级会员V5的分享
边栏推荐
猜你喜欢

你的公司会选择开发数据中台吗?

MOFs, metal organic framework materials of folic acid ligands, are loaded with small molecule drugs such as 5-fluorouracil, sidabelamine, taxol, doxorubicin, daunorubicin, ibuprofen, camptothecin, cur

MySQL备份与恢复

Navicat Premium 15 工具自动被杀毒防护软件删除解决方法

软件测试英语常见词汇

Limiting visibility of symbols when linking shared libraries

Jetpack Compose Scaffold和TopAppBar(顶部导航)

What can the enterprise exhibition hall design bring to the enterprise?

How to add two factor authentication for WordPress websites

Jetpack compose scaffold and topappbar (top navigation)
随机推荐
92. actual combat of completable future
Istio installation and use
mysql重装时写my.ini配置文件出错
AOSP ~ modify WebView default implementation
Necessity for banks to choose electronic bidding procurement
Why did those who left Beijing, Shanghai and Guangzhou with a smile cry in the end?
AOSP ~ logcat chatty line expired
靠贴牌飞利浦冲击上市,德尔玛的自有品牌又该如何“起跳”?
牛客网:数组中只出现一次的两个数字
P4338 [ZJOI2018]历史(树剖)(暴力)
ADVANCE.AI首席执行官寿栋将在2022新兴市场品牌出海线上峰会分享跨境电商运用AI技术合规
Write my Ini configuration file error
CPT 102_ LEC 13-14
Can Xiaoxiang life become the "Yonghui" in the discount industry after the completion of the round a financing of tens of millions of yuan?
Navicat Premium 15 工具自动被杀毒防护软件删除解决方法
Why can some programmers get good offers with average ability?
企业展厅设计能为企业带来什么?
Link list of high frequency written interview question brushing summary (distribution explanation & code annotation)
【斐波那契数列】
Databinding escaping with presentation symbols