Arduino Uno接JQ8900-16p语音播报模块

Arduino Uno接JQ8900-16p语音播报模块

前言

​ 记录一个比较好用的语音播报模块JQ8900,这个模块成本低廉(十几块就能买到),使用方便。

​ 此外,这个模块还有以下优点:

​ ①搭载配套的软件可以支持文字转语音,生成mp3格式的文件,可以像U盘一样拷贝到模块中,并在代码中选择播放某个mp3文件;

​ ②有多种人声可选,可调音量、音调和音速。

一、所需材料及接线

所需主要材料:

1.Arduino Uno开发板一块;

2.JQ8900-16p语音播报模块( 含喇叭)一个;

3.杜邦线若干

语音播报模块如下图:

Arduino Uno接JQ8900-16p语音播报模块

将mp3文件拷贝进入模块的内存接线:找到一根合适的数据线,一端接JQ8900模块,另一端连接电脑的USB口,将文件直接复制进去即可。

Arduino Uno接JQ8900-16p语音播报模块

Arduino控制JQ8900模块接线:

Arduino UnoJQ8900-16p3VPPGNDGND5VDC-5V JQ8900-16p喇叭SPK-正极SPK+负极

Arduino Uno接JQ8900-16p语音播报模块
(白色的是喇叭)

; 二、代码

通过串口控制选择对应的mp3文件播放:


char val="";

int pin = 3;

void setup()
{
    pinMode(pin,OUTPUT);
    Serial.begin(9600);
    Serial.println("请输入你要发送的数据:");
}

void loop()
{
  while(Serial.available()>0){
    val = char(Serial.read());
    delay(10);

  if(val=='S')
    Sys_start();
  if(val=='T')
    Say_thanks();
  }

}

void Sys_start()
{

    SendData(0x0a);
    SendData(0x02);
    SendData(0x00);
    SendData(0x0c);
    delay(2000);

    SendData(0x0a);
    SendData(0x01);
    SendData(0x0b);
    delay(2000);

}

void Say_thanks()
{

    SendData(0x0a);
    SendData(0x02);
    SendData(0x00);
    SendData(0x0c);
    delay(2000);

    SendData(0x0a);
    SendData(0x02);
    SendData(0x0b);
    delay(2000);

}

void SendData (char addr )
{
    digitalWrite(pin,HIGH);
    delayMicroseconds ( 1000 );
    digitalWrite(pin,LOW);
    delayMicroseconds ( 3200 );
    for (int i = 0; i < 8; i++ )
    {
        digitalWrite(pin,HIGH);
        if ( addr & 0x01 )
        {
            delayMicroseconds ( 600 );
            digitalWrite(pin,LOW);
            delayMicroseconds ( 200 );
        }
        else
        {
            delayMicroseconds (200);
            digitalWrite(pin,LOW);
            delayMicroseconds ( 600 );
        }
        addr >>= 1;
    }
    digitalWrite(pin,HIGH);
}

实现的效果是通过串口输入不同的值选择不同的mp3播放。

相关资料

与语音播放模块相关的语音合成软件和资料:

[En]

Speech synthesis software and materials related to the voice broadcast module:

链接:https://pan.baidu.com/s/1q0tWEnxipMKokLdAQdNoUQ?pwd=sv4m
提取码:sv4m
–来自百度网盘超级会员V5的分享

Original: https://blog.csdn.net/Aiden_yan/article/details/125133162
Author: 三个臭皮姜
Title: Arduino Uno接JQ8900-16p语音播报模块

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/498082/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球