1.用户提交唤醒词及命令词需求表
2.我司生成固件DEMO,交付用户进行测试
3.测试完成后,进行批量生产,交付芯片
注意:
本型号芯片:每次最多支持500字节的文本合成;150条离线固定命令词。
本芯片是宇音天下最新推出的一款集语音识别、语音唤醒、语音合成功能于一身的功耗低、体积小、集成度高的单芯片解决方案。
支持离线语音合成,支持任意中文文本的合成;
支持非特定人声识别;
支持离线固定命令词条识别;
支持低功耗语音快速唤醒。
语音识别
语音唤醒
注意:用户在设计语音交互所需要的唤醒词和命令词时,可以参考以下几点来达到较好的识别效果。
1.通常建议唤醒词和命令词长度为4至6个字,其中4个字最为理想。如果词太短,可能会增加误唤醒和误识别的风险;而如果太长,则可能会给用户的记忆和呼叫带来不便。
2.在设计词时,应确保相邻的汉字在声母和韵母上有明显的区分,这样可以提高识别度,例如“打开空调”“关闭闹铃”
3.设计词中的字应该发音清晰,声音响亮,开口度要大。
4.为了减少误识别和误唤醒的情况,建议选择那些在日常对话中不常出现的词汇作为设计词。
5.应避免使用叠词,例如“语音语音”或“语语音音”,这样的重复使用可能会降低设计词的独特性和识别度。
6.为了增强发音的能量和清晰度,可以选择那些包含爆破音声母的音节,如p、b、t、d、k、g等。
7.在选择韵母时,应优先考虑那些大口型、开口音的韵母,例如a、ai、an、ian、ao等,而应避免使用e、i、en、in等较为闭口的韵母。
文本合成功能
清晰、自然、准确的中文语音合成效果。芯片支持任意中文文本的合成,可以采用GB2312、GBK、Unicode和UTF8四种编码方式。
芯片支持英文字母的合成,遇到英文单词时按字母方式发音。
详见 《文字编码说明》文档
文本智能分析处理
芯片具有文本智能分析处理功能,对常见的数值、电话号码、时间日期、度量衡符号等格式的文本,芯片能够根据内置的文本匹配规则进行正确的识别和处理。
多音字和姓氏处理
对存在多音字的文本,例如:“银行行长穿过人行道向骑着自行车的银行职员行走过去”,芯片可以自动对文本进行分析,判别文本中多音字的读法并合成正确的读音。
有些汉字作为姓氏使用时,会出现一些非常规的读法,芯片可以自动进行处理。例如:“他是一位姓朴的朴素的韩国艺人。”,句中两个“朴”字前面一个读作“piao2”,后面一个读作“pu3”。
音量、语速、语调调整
芯片可实现10级数字音量控制,音量更大,更广。支持30级语速、10级语调的调节,满足各种不同的应用需求。
提示音
芯片内集成了多首声音提示音,可用于不同行业不同场合的信息提醒、报警等功能。
详见 《提示音》章节
支持多个发音人
提供两男、两女、一个效果器和一个女童、两个男童声共8个中文发音人,可以通过使用特殊标记[m?]来切换芯片的发音人。
发音人标记 | 说明 |
---|---|
[m3] | 女声“晓玲” |
[m51] | 男声“尹小坚" |
[m52] | 男声“易小强” |
[m53] | 女声“田蓓蓓” |
[m54] | 效果器“唐老鸭” |
[m55] | 女童声“小燕子” |
[m56] | 男童声“贝童” |
[m57] | 男童声“晓可” |
多种文本控制标记
芯片支持多种文本控制标记。可通过发送“合成命令”发送文本控制标记,调节语速、语调、音量。
还可以使用控制标记提升文本处理的正确率,如:设置句子的韵律、设置数字读法、设置姓氏读音策略、设置号码中“1”的读法等。
多种控制命令
控制命令包括:合成文本、停止合成、暂停合成、恢复合成、状态查询、进入Deep Sleep模式。控制器通过通讯接口发送控制命令实现对芯片的控制。
查询芯片的工作状态
支持多种方式查询芯片的工作状态,包括:查询状态管脚电平、通过读芯片自动返回的回传、发送查询命令获得芯片工作状态的回传。
通讯模式
通讯模式:芯片支持UART通讯方式。
支持低功耗模式
芯片支持 Deep Sleep模式。使用控制命令可以使芯片进入 Deep Sleep模式。
支持 4 种通讯波特率
芯片支持的通讯波特率:9600bps、57600bps、115200bps 、460800 bps。
最小系统包括:上位机、语音识别合成芯片、麦克、功放模块和喇叭。
上位机和本芯片之间通过UART 接口连接,上位机可通过通讯接口向本芯片发送控制命令和文本,本芯片把接收到的文本合成为语音信号输出,输出的信号经功率放大器进行放大后连接到喇叭进行播放。
用户通过语音输入命令词,芯片收到正确命令后,将命令编号通过串口返回给上位机。
芯片支持UART接口通讯方式,可通过UART 接口接收上位机发送的命令和数据。
本芯片提供一组全双工的异步串行通讯(UART)接口,实现与微处理器或PC的数据传输。芯片利用TxD和RxD以及GND实现串口通信。其中GND作为信号地。芯片支持UART 接口通讯方式,通过UART 接口接收上位机发送的命令和数据。
通讯标准 | 波特率 | 起始位 | 数据位 | 停止位 | 校验 |
---|---|---|---|---|---|
UART | 9600bps、57600bps、115200bps、460800bps | 1bit | 8bits | 1bit | 无 |
本芯片的UART 通讯接口支持4 种通讯波特率:9600bps,57600bps,115200bps,460800bps,可以通过芯片上的两个管脚BAUD0、BAUD1上的电平来进行硬件配置,两个IO默认上拉,接10K电阻,如果悬空为115200bps。
0:表示低电平 1:表示高电平
波特率 | BAUD0 | BAUD1 |
---|---|---|
9600 bps | 0 | 1 |
57600 bps | 1 | 0 |
115200 bps | 1 | 1 |
460800 bps | 0 | 0 |
语音合成串口命令:《串口命令说明》文档
注意:
每次唤醒、识别成功后,Ready/Busy脚会拉高20ms后再拉低
命令名称 | 命令 | 回传 | 说明 |
循环语音唤醒识别命令 | 0xFD 0x00 0x01 0x31 | 0x41 接收成功 |
切“识别状态”,开始循环唤醒识别,识别成功后,切“识别状态” 当“连续识别开关”打开时,支持连续识别。 “连续识别开关”参数,详见《语音识别参数命令》章节) |
单次语音唤醒识别命令 | 0xFD 0x00 0x01 0x32 | 0x41 接收成功 |
切“识别状态”,开始单次唤醒识别,识别成功后,切“空闲状态” 不支持连续识别 |
单次纯语音识别命令 (无语音唤醒) |
0xFD 0x00 0x01 0x33 | 0x41 接收成功 |
切“识别状态”,开始单次纯识别(无唤醒),识别成功后,切“空闲状态” 不支持连续识别 |
停止识别 | 0xFD 0x00 0x01 0x34 | 0x41 接收成功 |
停止识别,切“空闲状态” |
唤醒成功和识别成功回传:
回传名称 | 回传字 | 回传参数 |
唤醒成功 | 0x31 | 1字节:识别得分(百分制) |
识别成功 | 0x32 | 2字节:识别词条ID 1字节:识别得分(百分制) |
识别超时 | 0x33 | 2字节:超时秒数 |
帧头 (1字节) |
数据区长度 (2字节) |
数据区 | ||
命令字 (1字节) |
识别参数类型值 (1字节) |
识别参数值 (N字节) |
||
0xFD | 0xXX XX | 0x36 | 0xXX | 0xXX...... |
回传:0x4F(设置成功)
识别参数类型说明:(以下参数按顺序存储)
识别参数类型值 | 识别参数类型说明 | 参数范围 | 出厂默认(16进制) | 参数字节数 | 备注 |
1 | 自动唤醒识别开关 | 0=关闭 1=打开 |
0x01 | 1字节 | =1(打开),芯片处于“识别状态”,等待循环语音唤醒识别中; =0(关闭),芯片处于“空闲状态”; 举例:设置开机循环唤醒识别为“关闭” |
2 | 连续识别开关 | 0=关闭 1=打开 |
0x01 | 1字节 | =0(关闭),唤醒后N秒(识别超时时间)内识别一次或超时后回到等待唤醒状态; =1(打开),唤醒后N秒内若有有效识别,N秒会清零重新计时,支持连续识别,直到N秒超时后回到等待唤醒状态; 举例:设置连续识别开关为“打开” |
3 | 自动播唤醒回复语开关 | 0=不播 1=播 |
0x01 | 1字节 | =1(打开),播唤醒回复语 =0(关闭),不播唤醒回复语; 举例:设置播唤醒回复语开关为“关闭” |
4 | (未开放) | 0x01 | 1字节 | ||
5 | 识别超时时间(秒) | 5 ~ 1000秒 | 0x00 0x0A =10秒 |
2字节 | 识别超时时间=N秒,开始计时的时间为:唤醒成功时(若有TTS唤醒回复语,则为TTS唤醒回复语播放完毕时);结束计时的时间为:识别成功时。 举例:设置连续识别超时时间为“6秒” |
6 | (未开放) | 0x00 0x00 | 2字节 | ||
7 | (未开放) | 0x00 0x00 | 2字节 | ||
8 | (未开放) | 0x00 0x00 | 2字节 | ||
9 | 唤醒回复语文本 | 0x01 0x00 0xD4 0xDA 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 "在" |
24字节 | 芯片被语音唤醒后,默认会回复“在”。客户可修改回复语(例如:“sound901”,“我在”),也可以将设置成空(即无回复语)。 1字节: 编码类型(0=GB2312,1=GBK,3=UNICODE小头,4=UNICODE大头,5=UTF8) 举例:设置唤醒回复语为“sound901” |
|
10 | 识别回传次数和时间间隔 | 回传次数:1-5 间隔:10-50ms 间隔为10倍数 |
0x00 0x00 | 2字节 | 默认情况(0,0),只回传1次,一般客户够用,无需修改此参数。 对于“上位机偶尔接收不正常的特殊客户”:可修改回传次数为多次。修改此参数后,这些回传都会回传多次(0x31唤醒成功,0x32识别成功,0x33识别超时) 举例:设置识别回传次数3次间隔30ms |
00 | 设置所有识别参数 | 以上所有参数 | 0x01 0x01 0x01 0x01 0x00 0x0A 0x00 0x00 0x00 0x00 0x00 0x00 0x01 0x00 0xD4 0xDA 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 | 38字节 | 举例:参数设置为:识别超时时间=5秒,唤醒回复语=我在,识别回传次数=3次,识别回传间隔=30ms,其它参数=默认 命令:0xFD 0x00 0x28 0x36 0x00 0x01 0x01 0x01 0x01 0x00 0x05 0x00 0x00 0x00 0x00 0x00 0x00 0x01 0x00 0xCE 0xD2 0xD4 0xDA 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x03 0x1E |
命令 | 回传 |
0xFD 0x00 0x01 0x38 | 0x4F:设置成功 |
帧头 (1字节) |
数据区长度 (2字节) |
数据区 | ||
命令字 (1字节) |
识别参数类型值 (1字节) |
|||
0xFD | 0x00 0x02 | 0x37 | 0xXX |
回传格式:0x37+XX(识别参数类型值)+XX…(识别参数值)
获取参数命令说明 | 命令 | 回传举例 |
---|---|---|
获取自动唤醒识别开关状态 | 0xFD 0x00 0x02 0x37 0x01 | 回传:0x37 0x01 0x00 解释:自动唤醒识别开关为“关闭” |
获取连续识别开关状态 | 0xFD 0x00 0x02 0x37 0x02 | 回传:0x37 0x02 0x01 解释:连续识别开关为“打开” |
获取播唤醒回复语开关状态 | 0xFD 0x00 0x02 0x37 0x03 | 回传:0x37 0x03 0x00 解释:播唤醒回复语开关为“关闭” |
获取连续识别超时时间秒数 | 0xFD 0x00 0x02 0x37 0x05 | 回传:0x37 0x05 0x00 0x06 解释:连续识别超时时间为“6秒” |
获取唤醒回复语 | 0xFD 0x00 0x02 0x37 0x09 | 回传:0x37 0x09 0x01 0x00 0x73 0x6F 0x75 0x6E 0x64 0x39 0x30 0x31 解释:唤醒回复语为“sound901” 回传:0x37 0x09 0x01 0x00 0xCE 0xD2 0xD4 0xDA 回传:0x37 0x09 |
获取识别回传次数和间隔 | 0xFD 0x00 0x02 0x37 0x0A | 回传:0x37 0x0A 0x03 0x1E 解释:识别回传次数为“1次”,间隔为“30ms” |
获取所有识别参数 | 0xFD 0x0 0x02 0x37 0x00 | 回传:0x37 0x00 0x01 0x01 0x01 0x01 0x00 0x05 0x00 0x00 0x00 0x00 0x00 0x00 0x01 0x00 0xCE 0xD2 0xD4 0xDA 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x03 0x1E 解释:识别超时时间=5秒,唤醒回复语=我在,识别回传次数=3次,识别回传间隔=30ms,其它参数=默认 |
命令名称 | 命令字 | 参数 |
播放MP3 | 0x61 | MP3序号,循环播放次数 |
单独停止TTS | 0x02 | 单独停止类型(0x01=单停TTS) |
单独停止MP3 | 0x02 | 单独停止类型(0x02=单停TTS) |
全部停止 | 0x02 | 无 |
设置MP3音量 | 0x67 | MP3音量 |
获取MP3音量 | 0x68 | 无 |
回传:(“0x4F”代表“全部空闲”,“非0x4F”代表:“至少有1个还在播音”):
播音情况 | 查询芯片忙闲 (0x21命令字) |
Ready/Busy 引脚 |
芯片主动回传 |
TTS正播音 + MP3正播音 | 0x4E | 忙 | |
TTS正播音 + MP3空闲 | 0x48 | 忙 | TTS和MP3都在播音,当MP3先播完时,先回传0x48,TTS后播完时,再回传0x4F |
TTS 空闲 + MP3正播音 | 0x49 | 忙 | TTS和MP3都在播音,当TTS 先播完时,先回传0x49,MP3后播完时,再回传0x4F |
TTS 空闲 + MP3空闲 | 0x4F | 闲 | TTS单独播音、MP3单独播音、或两者同时播音,只有在所有播完都完成时,才会回传0x4F |
帧头 (1字节) |
数据区长度 (2字节) |
数据区 | 说明 | |||
命令字 (1字节) |
备用 (1字节) |
MP3序号 (2字节) |
循环播放次数 (2字节) 固定1次,暂不支持循环多次 |
|||
0xFD | 0x00 0x06 | 0x61 | 0x00 | 0x00 0xXX | 0x00 0xXX | 标准命令格式 |
0xFD | 0x00 0x06 | 0x61 | 0x00 | 0x00 0x08 | 0x00 0x01 | 举例:播报序号8的MP3,循环1次 |
帧头(1字节) | 数据区长度(2字节) | 数据区 | |
命令字(1字节) | 命令参数(1字节) | ||
0xFD | 0x00 0x02 | 0x02 | 0x01 |
帧头(1字节) | 数据区长度(2字节) | 数据区 | |
命令字(1字节) | 命令参数(1字节) | ||
0xFD | 0x00 0x02 | 0x02 | 0x02 |
帧头(1字节) | 数据区长度(2字节) | 数据区 |
命令字(1字节) | ||
0xFD | 0x00 0x01 | 0x02 |
MP3的音量大小(范围为:0 ~ 10级),默认MP3音量为5级。
帧头(1字节) | 数据区长度(2字节) | 数据区 | 说明 | |
命令字(1字节) | 命令参数(1字节) | |||
0xFD | 0x00 0x02 | 0x67 | 0xXX | 标准命令格式 |
0xFD | 0x00 0x02 | 0x67 | 0x06 | 举例:设置MP3音量为6级 |
帧头(1字节) | 数据区长度(2字节) | 数据区 |
命令字(1字节) | ||
0xFD | 0x00 0x01 | 0x68 |
回传:
回传头 | MP3音量 |
0x68 | 0xXX |
为满足客户在各种复杂环境的个性化需求,特推出以下功能:
文本控制标记: 用于语音合成参数的设置,并可以灵活控制汉字发音的变化(例如:设置音量,设置语速,设置发音人,强制某个汉字的发音,强制某串数字按号码还是按数值发音等)
语音合成参数设置: 发送相应的“文本控制标记”即可进行语音合成参数的设置
下面以 51 单片机为作为上位机为例,用C51 语言实现一段文本合成的程序实例,假设要合成的文本内容为:“欢迎使用宇音天下研发的语音合成芯片”,以下为发送一帧TTS 文本数据的程序模块。
#include <reg51.h>
#include <string.h>
void main(void)
{
/****************需要发送的文本**********************************/
char code text[ ] = {"欢迎使用宇音天下研发的语音合成芯片"};
unsigned char headOfFrame[5];
unsigned char length ;
unsigned int i = 0;
length = strlen(text); //需要发送文本的长度
/****************串口的初始化************************************/
TL1 = 0xFA; // 在11.0592MHz 下,设置波特率9600bps,工作方式2
TH1 = 0xFA;
TMOD = 0x20;
SCON = 0x50; // 串口工作方式1,允许接收
PCON = 0x80;
EA = 0;
REN = 1;
TI = 0; //发送中断标志位置零
RI = 0; //接收中断标志位置零
TR1 = 1; //定时器1 用作波特率发生
/*****************发送过程**************************************/
headOfFrame[0] = 0xFD ; //构造帧头FD
headOfFrame[1] = 0x00 ; //构造数据区长度的高字节
headOfFrame[2] = length + 2; //构造数据区长度的低字节
headOfFrame[3] = 0x01 ; //构造命令字:合成播放命令
headOfFrame[4] = 0x01 ; //构造命令参数:编码格式为GBK
for(i = 0; i<5; i++) //依次发送构造好的5个帧头字节
{
SBUF = headOfFrame[i];
while (TI== 0) {;} //等待发送中断标志位置位
TI = 0; //发送中断标志位清零
}
for(i = 0; i<length; i++) //依次发送待合成的文本数据
{
SBUF = text[i];
while (TI== 0) {;}
TI = 0;
}
// while(1);
}
下面是 51 单片机为控制上位机的汇编语言示例,演示向芯片发送“宇音天下”这段文本进行合成。
“宇音天下”的GBK码是:
;晶振11.0592MHz
ORG 0030H
TABLE: DB 0xD3,0xEE,0xD2,0xF4,0xCC,0xEC,0xCF,0xC2 ;"宇音天下"的GBK码
ORG 0000H
LJMP MAIN
ORG 0200H
MAIN:
CLR EA ;串口初始化
MOV TMOD, #20H ;定时器1工作在方式2
MOV TH1, #0FAH ;装载定时器初值,波特率9600
MOV TL1, #00H
SETB TR1 ;启动定时器1
MOV SCON, #50H ;串口工作方式1,允许接收
MOV PCON, #80H ;波特率倍增
CLR TI ;发送中断标志位置零
CLR RI ;接收中断标志位置零
MOV A, #0FDh ;帧头FD
MOV SBUF, A ;串口发送
JNB TI, $
CLR TI
MOV A,#00h ;数据区长度的高字节
MOV SBUF, A
JNB TI, $
CLR TI
MOV A,#0Ah ;数据区长度的低字节
MOV SBUF, A
JNB TI, $
CLR TI
MOV A,#01h ;命令字:合成播放命令
MOV SBUF, A
JNB TI, $
CLR TI
MOV A,#01h ;命令参数:编码格式为GBK
MOV SBUF, A
JNB TI, $
CLR TI
MOV R7,#8 ;待播放文本的总字节数
MOV R6,#0 ;发送字节计数
MOV DPTR,#TABLE
LOOP: MOV A,R6
MOVC A,@A+DPTR
MOV SBUF, A ;播放"宇音天下"
JNB TI, $
CLR TI
INC R6
DJNZ R7,LOOP
SJMP $
END
注意:
1、发送后可接收到芯片的反馈信号,收到“RTN 0x41”,表明文本被正确接收;收到“RTN 0x4F”,说明合成播音完毕,芯片处于空闲状态;如果收到的是“RTN 0x45”,则说明文本没有正确的收到或是合成,则需要重新发送或者复位。
2、上面的Demo 主要说明了发送过程需要遵循的协议问题;发送完语句后要加入发送是否完成的判断程序,可以通过查询或者中断两种方式进行判断当前芯片的工作状态,然后才能发送下一个数据。
封装名称 | 封装描述 |
---|---|
QFN32 | 32脚,芯片尺寸4mm×4mm×0.80mm |
编号 | 引脚 | 说明 | 编号 | 引脚 | 说明 | |
1 | VCOM | 接一个1uF电容到AGND | 17 | XTAL24MI | 24M晶振输入 | |
2 | AO | 音频输出 | 18 | XTAL24MO | 24M晶振输出 | |
3 | NC | - | 19 | NC | - | |
4 | NC | - | 20 | NC | - | |
5 | NC | - | 21 | NC | - | |
6 | R/B | 芯片忙状态指示,低电平表示空闲 | 22 | NC | - | |
7 | POPEN | 默认为高电平,详见 POPEN+MUTE口方案 | 23 | RXD | 串口接收 | |
8 | NC | - | 24 | TXD | 串口发送 | |
9 | NC | - | 25 | BAUD0 | 波特率配置端口0 | |
10 | VCC | 芯片供电 2.8-5V | 26 | BAUD1 | 波特率配置端口1 | |
11 | AVDD | 接一个1uF电容到GND | 27 | NC | - | |
12 | NC | - | 28 | MUTE | 连接功放的静音端口,功放类型是高电平工作 低电平停止工作,详见 POPEN+MUTE口方案 |
|
13 | NC | - | 29 | MIC_BIAS | 接麦克风正极 | |
14 | RESET | 复位脚(保持1秒以上低电平后拉高复位) | 30 | MIC | 接100NF电容到MIC_BIAS | |
15 | WAKEUP | 睡眠时下降沿唤醒 | 31 | VDDIO | 接一个10uF电容到GND | |
16 | NC | - | 32 | AGND | 模拟地 |
用户根据自身情况合理选择方案,正确配置合成芯片的POPEN口(第7脚)与MUTE口(第28脚)。
方案 | POPEN口与MUTE口配置 | 芯片功耗 |
方案一 | POPEN口:低电平(接1K电阻到GND) MUTE口:接功放使能口 |
睡眠:不支持 启动:7mA 空闲:9mA TTS工作:11mA ASR工作:15mA |
方案二 | POPEN口:低电平(接1K电阻到GND) MUTE口:悬空 (上位机IO口自行控制功放使能) |
睡眠:不支持 启动:7mA 空闲:9mA TTS工作:11mA ASR工作:15mA |
方案三 | POPEN口:高电平(默认,无需处理) MUTE口:接功放使能口 |
睡眠:2uA 启动:6mA 空闲:8mA TTS工作:11mA ASR工作:14mA |
【最低功耗模式推荐】
1、上位机通过电源管理芯片控制本芯片的供电脚“VCC”的通断电(例如:播放完毕断电,播放前上电)
注意:芯片VCC管脚断电后,要注意防止电流倒灌现象。2、针对方案三,上位机通过串口发送睡眠指令“FD 00 01 22”让芯片进入睡眠状态(例如:播放完毕进入睡眠,播放前唤醒)。
注意:客户要注意防串口抖动,导致误唤醒芯片。
注意:
芯片启动或复位后,大约N毫秒后UART口会返回0x4A回传(回传只要包含0x4A即可,例如:0x00 0x4A 或 0x00 0x34 0x4A 或 0xF0 0x4A),代表“初始化成功”,此时用户可以发送命令控制芯片。
注意:
上位机满足以下条件之一才能确认是“启动唤醒成功”:
1、收到0x4A回传;
2、启动过程中识别到“R/B脚”(即READY/BUSY脚)拉高15ms的信号;
3、不推荐用上电后固定N毫秒来算“启动唤醒成功”,因芯片的个体差异或者生产批次的不同会有不同变化。
本芯片启动时间约200ms左右(默认“去上电POP音延时=0”)
画板完成后仔细与我公司提供的参考电路进行比对,若客户未按照我公司提供的参考电路设计而造成的损失我司概不负责。如需对参考电路进行优化设计,请将优化后的电路图提交我们核对。
UART转串口与PC机通讯原理图:
波特率配置方法以及R/B的应用:
本语音合成芯片的UART通信接口支持四种通信波特率:9600bps,57600bps,115200bps,460800bps,可以通过芯片上的两个管脚BAUD0和BAUD1 的电平来进行硬件配置.
0:表示低电平 1:表示高电平
波特率 | BAUD0 | BAUD1 |
---|---|---|
9600 bps | 0 | 1 |
57600 bps | 1 | 0 |
115200 bps | 1 | 1 |
460800 bps | 0 | 0 |
注意:
芯片通过管脚READY/BUSY的电平来指示芯片的工作状态,芯片空闲状态时READY/BUSY管脚输出低电平,芯片在语音合成状态时READY/BUSY管脚输出高电平。
2.6V-5V单独供电,接VCC口。POPEN、BAUD0、BAUD1、WAKEUP默认均有上拉电阻,如果IO需要上拉请上拉到VDDIO,而不是VCC。
CS8126T原理图:
CS8126T参数说明:
工作电压范围 | VDD | RL | 输出功率(典型值) | 封装 | 备注 |
2.5V ~ 5.5V | 3.6V | 4Ω | 1.3W | DFN8 | - |
5V | 4Ω | 3.1W |
如需更多功放选型参考,请见 《功放芯片推荐参考手册》文档
5V MCU作为上位机与本芯片通信时,需要做电平转换,参考电路如下两种。推荐使用电平转换芯片电路,需要注意VCCB接的是电平较高的一端。
注意:
TTSIC代表本语音合成芯片。
晶振应尽量靠近本芯片的XTAL24MI和XTAL24MI管脚放置,遵循距离最短、走线宽、走线包地原则。同时,晶振的谐振电容应紧靠其两侧。
本芯片的各PIN口的对应滤波电容应尽量靠近其相应管脚。
本芯片的AO,要包地、远离晶振及其他干扰源,否则可能会带来杂音。
标注 | 最小(mm) | 标准(mm) | 最大(mm) | 标注 | 最小(mm) | 标准(mm) | 最大(mm) | |
A | 0.7 | 0.8 | 0.9 | Nd | 2.80BSC | |||
A1 | - | 0.02 | 0.05 | E | 3.90 | 4.00 | 4.10 | |
b | 0.15 | 0.20 | 0.25 | E2 | 2.80 | 2.90 | 3.00 | |
e | 0.40BSC | Ne | 2.80BSC | |||||
c | 0.102REF | K | 0.25REF | |||||
D | 3.90 | 4.00 | 4.10 | L | 0.25 | 0.30 | 0.35 | |
D2 | 2.80 | 2.90 | 3.00 | h | 0.30 | 0.35 | 0.40 |
参数 | 符号 | 最小值 | 最大值 | 单位 |
---|---|---|---|---|
供电电压 | VCC | 2.8 | 5 | V |
3.3V IO输入电压 | V3.3IO | -0.3 | VDDIO+0.3 | V |
工作温度 | To | -40 | 85 | ℃ |
存储温度 | Ts | -60 | 150 | ℃ |
参数 | 符号 | 最小值 | 典型值 | 最大值 | 单位 |
---|---|---|---|---|---|
供电电压 | VCC | 2.8 | 3.3 | 5 | V |
参数 | 符号 | 最小值 | 典型值 | 最大值 | 单位 | 实验条件 |
---|---|---|---|---|---|---|
低电平输入电压 | VIL | -0.3 | - | 0.3*VDDIO | V | VDDIO=3.3 |
高电平输入电压 | VIH | 0.7*VDDIO | - | VDDIO+0.3 | V | VDDIO=3.3 |
参数 | 符号 | 最小值 | 典型值 | 最大值 | 单位 | 实验条件 |
---|---|---|---|---|---|---|
低电平输出电压 | VOL | - | - | 0.33 | V | VDDIO=3.3 |
高电平输出电压 | VOH | 2.7 | - | - | V | VDDIO=3.3 |
参数 | 最小值 | 典型值 | 最大值 | 单位 | 实验条件 |
---|---|---|---|---|---|
频率响应 | 20 | - | 20K | Hz | 1KHz/0dB 10Kohm负载,带A加权滤波器 |
THD+N | - | -75 | - | dB | |
S/N | - | 95 | - | dB | |
串扰 | - | -90 | - | dB | |
输出幅度 | - | 1 | - | Vrms | |
动态范围 | - | 90 | - | dB | 1KHz/-60dB 10Kohm负载,带加权滤波器 |
DAC输出功率 | 11 | - | - | mW | 32ohm负载 |
为方便客户评估测试芯片效果,我们提供模块供客户进行测试,客户只需要通过电源、UART、音频接口等几个简单的连线就能对本芯片的性能做整体评估。
注意:
模块板载CS8126T功放芯片,详见《功放芯片推荐参考手册》
注意:
板厚1.0mm
注意:
模块测试只需用到1 ~ 20管脚即可,21 ~ 40脚暂无用处
编号 | 引脚 | 说明 | 编号 | 引脚 | 说明 | |
1 | RXD | 模块串口接收 | 20 | RESET | 复位脚(保持1秒以上低电平复位) | |
2 | TXD | 模块串口发送 | 19 | WAKEUP | 睡眠时下降沿唤醒 | |
3 | NC | 不接 | 18 | BAUD1 | 波特率配置端口1 | |
4 | NC | 不接 | 17 | BAUD0 | 波特率配置端口0 | |
5 | MIC | MIC+ | 16 | GND | GND | |
6 | AGND | MIC- | 15 | VCC5 | 4 ~ 5V | |
7 | SP+ | 接喇叭正 | 14 | NC | 不接 | |
8 | SP- | 接喇叭负 | 13 | POPEN | 不接 | |
9 | AO | 音频输出 | 12 | R/B | 芯片忙状态指示,低电平表示空闲 | |
10 | MUTE | 不接 | 11 | NC | 不接 |
测试工具准备:
电脑
喇叭
麦克风
USB转TTL串口线
PC端演示程序
模块接线方法:
USB转TTL串口线、喇叭、麦克风与模块引脚对应关系,见下表
USB转TTL串口线 | 模块引脚 | 喇叭 | 麦克风 |
---|---|---|---|
TXD | 第1脚 RXD | - | - |
RXD | 第2脚 TXD | - | - |
GND | 第16脚 GND | - | - |
VCC(5V) | 第15脚 VCC5 | - | - |
- | 第7脚 SP+ | SP+ | - |
- | 第8脚 SP- | SP- | - |
- | 第5脚 MIC+ | - | MIC+ |
- | 第6脚 AGND | - | MIC- |
注意:
请配套我司提供的PC端演示程序,程序在下方《资料下载》章节中