Synthesis Shield V1.1

概述

技术规格

模块开关按钮功能

英语语音合成

芯片状态回传说明

实现功能函数介绍

实现该模块功能由两个函数组成:语音合成函数和执行函数。

初始化函数

    初始化函数是用来初始化存储语音内容的数组的函数。

语音合成函数

    语音合成函数是用来合成需要合成的语音内容和指点如何读该语音内容的函数。

注意:

cmd取值及其意义(语音合成命令) :

执行函数

    执行函数是用来指定工作模式、发音人和读音格式的函数。

注意:

Cmda取值及其意义(工作模式):

Cmdb取值及其意义 (选择发音人):

Cmdc取值及其意义 (读音格式):

英文示例代码


#include <SpeechSynthesis.h>//加入语音合成库
void setup()
{
  Serial.begin(9600);//初始化串口
}
 byte ssr[500];//定义一个缓存
void loop()
{
SpeechSynthesis.buf_init(ssr);//清空或者初始化缓存
SpeechSynthesis.English(ssr,6,"cooki");//编辑合成内容函数
SpeechSynthesis.English(ssr,4,"5");//音量调节为5级
SpeechSynthesis.English(ssr,6,"cooki Clock, reset and supply management");//编辑合成内容函数
SpeechSynthesis.English(ssr,2,"10");//合成语速设置为10级
SpeechSynthesis.English(ssr,6,"cooki Clock, reset and supply management");//编辑合成内容函数
SpeechSynthesis.English(ssr,2,"5");//合成语速设置为5级
SpeechSynthesis.English(ssr,5," ");///恢复到默认的语速、音量、语调进行合成
SpeechSynthesis.English(ssr,6,"cooki Clock, reset and supply management");//编辑合成内容函数
SpeechSynthesis.Espeaking(0,19,4,ssr);//开始将编辑好的内容转为语音内容

 while(Serial.read()!=0x41)//等待语音合成完成
  {}
 while(Serial.read()!=0x4F)//等待语音播放完成
  {}
SpeechSynthesis.buf_init(ssr);//清空或者初始化缓存
SpeechSynthesis.English(ssr,6,"hello cooki 123");//编辑合成内容函数
SpeechSynthesis.Espeaking(0,19,4,ssr);//开始将编辑好的内容转为语音内容
   while(Serial.read()!=0x41)//等待语音合成完成
  {}
 while(Serial.read()!=0x4F)//等待语音播放完成
  {}
SpeechSynthesis.buf_init(ssr);//清空或者初始化缓存
SpeechSynthesis.English(ssr,6,"hello cooki 123");//编辑合成内容函数
SpeechSynthesis.Espeaking(0,19,7,ssr);//开始将编辑好的内容转为语音内容

while(1);

}

中文英文语音合成

芯片状态回传说明

实现功能函数介绍

实现该模块功能由三个函数组成:初始化函数、语音合成函数和执行函数。

初始化函数

    初始化函数是用来初始化存储语音内容的数组的函数。

语音合成函数

    语音合成函数是用来合成需要合成的语音内容和指点如何读该语音内容的函数。

注意: Cmda取值及其意义(语音合成函数的命令) : /*参数取值*/参数意义

执行函数

    执行函数是用来指定工作模式、发音人和读音格式的函数。

Cmda取值及其意义 (工作模式):
Cmdb取值及其意义 (选择发音人):
Cmdc取值及其意义(读音格式) :

中英文示例代码


#include <SpeechSynthesis.h>//加入语音合成库
void setup()
{
  Serial.begin(9600);//初始化串口
}
byte sr[200];//定义一个缓存
byte d[]={0xB3,0xC9,0xB6,0xBC,0xBC,0xAB,0xC8,0xA4};//中文内容(GB2312)
void loop()
{
SpeechSynthesis.buf_init(sr);//清空或者初始化缓存
SpeechSynthesis.Chinese_english(sr,0,0,4,"10");//设置为最大音量
SpeechSynthesis.Chinese_english(sr,d,sizeof(d),6,0);//编辑合成内容函数
SpeechSynthesis.Chinese_english(sr,0,0,7,"hello d f robot");//编辑合成内容函数
SpeechSynthesis.Chinese_english(sr,0,0,1,"26");//停顿26毫秒
SpeechSynthesis.Chinese_english(sr,0,0,7," hello d f robot");//编辑合成内容函数
SpeechSynthesis.Chinese_english(sr,d,sizeof(d),6,0);//编辑合成内容函数
SpeechSynthesis.Speaking(0,0,7,sr);//开始将编辑好的内容转为语音内容
while(Serial.read()!=0x41)//等待语音合成完成
  {}
while(Serial.read()!=0x4F)//等待语音播放完成
  {}
SpeechSynthesis.buf_init(sr);//清空或者初始化缓存
SpeechSynthesis.Chinese_english(sr,0,0,7,"hello d f robot");//编辑合成内容函数
SpeechSynthesis.Chinese_english(sr,d,sizeof(d),6,0);//编辑合成内容函数
SpeechSynthesis.Speaking(0,0,7,sr);//开始将编辑好的内容转为语音内容
while(1);
}

<File:nextredirectltr.png>购买Speech Synthesis Shield中英文语音合成模块(SKU:DFR0273)