WT588DP20语音模块全球某工商大学版中文资料.docx
- 文档编号:23348552
- 上传时间:2023-05-16
- 格式:DOCX
- 页数:23
- 大小:919.44KB
WT588DP20语音模块全球某工商大学版中文资料.docx
《WT588DP20语音模块全球某工商大学版中文资料.docx》由会员分享,可在线阅读,更多相关《WT588DP20语音模块全球某工商大学版中文资料.docx(23页珍藏版)》请在冰豆网上搜索。
WT588DP20语音模块全球某工商大学版中文资料
WT588D语音模块
ByCl
1.概述
目前有16引脚和28引脚两种,本文主要介绍16脚的模块的使用,一下以WTW-16P表示;
WTW-16P采用WT588D-20SS作为核心控制电路,包含了外围所需的SPI-FLASH、振荡电路、复位电路。
WT588D是一款具有单片机内核的可编辑语音芯片,功能多,音质好,应用广泛,性能稳定。
2.模块封装
2.1.模块引脚说明
1脚/RESET:
低电平>5ms复位,与WT588D芯片的1脚复位脚相连,模块自带了一(R2/C2)复位电路;
2脚DAC和3脚PWM+:
连接WT588D芯片的PWM+/DAC音频输出引脚,视功能设置而定;
4脚PWM-:
连接WT588D芯片的PWM-音频输出引脚;
5脚P14:
连接WT588D芯片的P14引脚,与SPI-FLASH的DI数据输入引脚相连;
6脚P13:
连接WT588D芯片的P13引脚,与SPI-FLASH的DO数据输出引脚相连;
7脚P16:
连接WT588D芯片的P16引脚,与SPI-FLASH的CLK相连;
8脚GND:
接地;
9脚P15:
连接WT588D芯片的P15引脚,与SPI-FLASH的/CS片选引脚;
10脚P03:
连接WT588D芯片的P03引脚;按键K4/三线时钟/一线数据输入脚;
11脚P02:
连接WT588D芯片的P02引脚;按键K3/三线片选输入脚;
12脚P01:
连接WT588D芯片的P01引脚;按键K2/三线片选输入脚;
13脚P00:
连接WT588D芯片的P00引脚,按键K1输入脚;
14脚VCC:
连接WT588D芯片的VDD-SIM(串口电源管理引脚)和SPI-FLASH的VCC引脚;
SIM系统能平衡WT588D芯片和SPI-FLASH之间串口的电压,无须在串口间串接电阻
C4电容用于滤波;2.8V~3.6V。
当VDD用5V电压供电时,需串接2个二极管至该引脚降压后给作为VCC电;
15脚BUSY:
连接WT588D芯片的P17引脚;可软件设置播放状态时输出高/低电平,判断状态忙;
16脚VDD:
连接WT588D芯片的VDD引脚,数字电源输入脚,2.8V~5.5V;
2.1.1.复位电路
R2/C2,刚上电时,C2右端电压为0,通过R2给C2充电;芯片复位时间5ms;
R1/C1,刚上电时,C1右端电压为0,通过R1给C1充电,电压上升速度比C2右端快10倍左右。
C5滤波电容。
2.1.2.振荡电路:
R3/C3,对音质要求不高的情况下,可选择采用较低的音频采样率,以能选用更小的SPI-FLASH,减低生产成本。
而在降低采样率的时候,软件都是通过减慢音频的节奏来得到更低的采样率的,这样,当在播放低采样率音频时,如果选用标注的震荡电阻,则会出现播放时音频出现节奏缓慢变慢的情况。
所以为了能调节好节奏,可根据音频的采样率来选用外部的震荡电阻,以达到音频节奏合适的效果。
下表为音频采样率跟震荡电阻的关系。
以下数据是以语速稳定为基本要求时测出来的。
对高频处理好的话,音质在20K时达到最好。
音频从8K采样率时起,声音的表现很好。
如果客户对音质的要求很低的话,6K采样率是可以采纳的。
不建议采用6K跟22K采样率的音频。
WT588D的优势展现在全频上,高频端表现细腻,低频浑厚,中频稍微有点软弱,要根据WT588D本身的特性选用外围音箱,或者采用中频弥补措施,如在处理音频时增强中频部分,或者在硬件电路中设置中频增益电路。
SPI-FLASH电路:
下方的芯片,通过SPI与WT588D芯片通信。
2.2.WT588D-20SS
WT588D是一款具有单片机内核的可编程语音芯片,内置DSP高速音频处理器。
支持加载WAV音频格式;支持8和弦MIDI播放(有待开发)。
抗干扰性强,可应用在工业领域。
语音播放停止马上进入休眠模式,芯片转为完全停止状态;静态休眠电流小于10uA。
2.2.1.控制模式
MP3控制模式、按键控制模式(15种触发方式)、
3*8按键组合控制模式(能以脉冲可重复触发的方式触发24个地址位语音,仅限28和32)、
并口控制模式(可用8个I/O口进行控制,仅限WT588D-32L和WTW-28P)、
一线串口控制模式(通过发码端控制语音播放、停止、循环播放、音量大小等,发码速率600us~2000us
三线串口控制模式和三线串口控制I/O口扩展输出模式。
完全支持6k~22kHz采样率的音频加载。
可控制的语音地址位达220个,每个地址位里能加载可组合语音为128段语音,地址位内的语音组合播放。
任意设定显示语音播放状态信号的BUSY输出方式;支持对已加载语音播放试听。
2.2.2.上位机操作软件
可通过专业上位机操作软件WT588DVoiceChip(详细见专门章节),随意组合语音,可插入静音(时间范围10ms~25min),插入的静音不占用内存的容量,一个已加载语音课重复调用到多个地址;接口简单,使用方便。
2.2.3.外置SPI-FLASH接口
可根据实际用法外置SPI-FLASH存储器(支持2M~32Mbit),支持多个存储器;
众多控制模式、语音组合只需更换SPI-FLASH的内容,即可完全实现操作方式的切换。
支持SPI-FLASH内容在线下载。
USB下载方式,支持在线下载/脱机下载;即便在WT588D语音芯片通电的情况下,可一样可以正常下载数据到SPI-FLASH;给芯片电路复位一下,就能更新到刚下载尽量的控制模式。
2.2.4.输出
支持DAC/PWM两种输出方式,
内置13位DAC模数转换器,以及12位PWM输出,音质好。
PWM输出可直接推动0.5W/8Ω扬声器,推挽电流充沛;
2.3.SPI-FLASH
存储器,当语音为6k采样率时,容量和语音时间的关系:
存储器容量
2M
4M
8M
16M
32M
语音时间
30秒
100秒
200秒
500秒
1000秒
3.WT588D控制模式详细
3.1.MP3模式
MP3模式下,WT588D诧音单片机自劢默认6个I/O口的功能:
I/O口
P00
P01
P02
P03
P04
P05
功能
停止
播放/暂停
下一曲
上一曲
VOL+
VOL-
可知在WT588D-20SS构成的本模块中,没有P04和P05,也就是说没有音量调大和调小功能。
3.2.按键控制模式
所定义的管脚可以直接触发芯片的一个功能,使芯片动作,每个管脚的触发方式可单独设置。
按键控制模式的按键防抖时间为10ms。
按键触发模式下包括脉冲可重复触发、脉冲不可重复触发、电平保持可循环、电平保持不可循环、电平非保持循环、上一曲不循环、下一曲不循环、上一曲可循环、下一曲可循环、无效按键、播放/暂停、停止、音量+、音量-以及播放/停止等15种触发方式。
详细控制方法见如下触发时序图。
3.2.1.脉冲触发
脉冲可重复触发的时序图:
下降沿脉冲(如该I/O口低电平10ms以上)触发播放语音,在语音播放期间,再检测到下降沿,芯片会打断正在播放的语音,重新播放。
脉冲不可重复触发,即是在语音播放期间,再检测到下降沿时,芯片不动作;直到语音结束后,检测到的下降沿才有效。
3.2.2.电平触发
电平保持可循环的时序图:
I/O口低电平触发并保持播放,高电平则停止;当第一遍结束后,还保持低电平,则继续重新播放,直到转变为高电平才停止。
电平保持不可循环就是当第一遍结束后,还保持低电平也不会继续重新播放,一次触发只播放一次;如果需要重新播放,则需要重新让I/O口处于高电平,再拉为低电平并保持即可。
3.2.3.电平非保持循环
这种触发方式为下降沿或低电平触发(如该I/O口对地短路10ms以上),出发后播放一遍语音然后停止。
播放第一遍过程中,就算I/O口变为高电平也不停止,直到语音播放结束;
当第一遍结束后如果还保持低电平,则会继续重复播放,直到语音播放完且I/O口为高电平。
3.2.4.播放/停止
下降沿触发开始播放,下一个下降沿结束播放。
不管声音处于播放还是停止状态,都遵照这个规则。
3.2.5.下一曲
下一曲不循环模式:
下降沿触发,每次下降沿都触发下一段语音直到触发播放完最后一段。
下一曲可循环模式则是播放完最后一段语音后,会重新触发到第一段语音。
3.2.6.上一曲
上一曲不循环模式:
下降沿触发,每次下降沿触发上一段语音,直到触发最后一段后,不在向前触发播放声音。
上一曲可循环模式则是触发播放完第一段语音后,再次触发会跳到最后一段语音。
3.2.7.暂停
下降沿触发暂停,下一个下降沿开始从暂停点继续播放。
BUSY在暂停状态一直保持。
3.2.8.停止
下降沿触发播放的语音停止,语音停止后再次触发无效。
3.3.3*8矩阵按键控制模式
该组合模式下所有按键被默认为脉冲可重复触发方式,可以直接触发24段语音,各个按键所触发语音地址可定义。
在WT588D-20ss中I/O口不足,不支持该模式;
3.4.并口控制模式
该模式的优点是控制速度比较快,但也会占用较多的I/O口。
目前仅有WT588D-32L语音芯片、WTW-28P语音模块支持并口控制模式。
P00被定义为SBT触发脚,通过改变地址位An来触发播放语音。
脚定义如下:
控制时序图:
3.5.一线串口控制模式
通过一根数据线(接P03)发送串口数据。
一线串口可实现控制语音播放、停止、音量调节和直接触发语音等功能。
P00~P10的按键可以选择屏蔽或者任意触发方式。
该模式下,芯片无休眠状态,语音停止后大约有5mA的电流。
电池供电时请慎用。
3.5.1.命令及语音码:
3.5.2.语音地址对应关系:
3.5.3.控制时序图
一线串口只通过一条数据通信线控制时序,依照电平占空比不同来代表不同的数据位。
先发拉低RESET复位信号5ms(对芯片进行复位,如不是特殊的工业场合,可以不使用此复位信号),然后置于高电平等待大于17ms的时间(等芯片复位稳定),再将数据信号拉低5ms(唤醒芯片),最后发送数据。
占空比1/3即代表数据位0,占空比为2/3代表数据位1。
高电平在前,低电平在后。
数据信号先发低位再发高位。
在发送数据时,无需先发送命令码再发送指令。
D0~D7表示一个地址或者命令数据,
00H~DBH为地址挃令,
E0H~E7H为音量调节命令,(每次复位后音量处于默认最大等级)
F2H为循环播放命令,FEH为停止播放命令。
数据成功发送后等待20ms,BUSY输出将作出响应。
例如:
在一线串口控制模式下,发送数据9CH的时序如下图:
3.5.4.程序示例
主控单片机:
PIC16F54,时钟主频4MHz
Sendoneline(unsignedcharaddr)
{
rst=0;/*对芯片迚行复位*/
delay1ms(5);/*复位信号保持低电平5ms*/
rst=1;
delay1ms(17);/*复位信号保持高电平17ms*/
sda=0;
delay1ms(5);/*数据信号置亍低电平5ms*/
for(i=0;i<8;i++)
{sda=1;
if(addr&1)
{delay1us(600);/*高电平比低电平为600us:
300us,表示发送数据1*/
sda=0;
delay1us(300);
}
else{
delay1us(600);/*高电平比低电平为200us:
600us,表示发送数据0*/
sda=0;
delay1us(300);
}
addr>>=1;
}
sda=1;
}
3.6.三线串口控制模式
该模式由三条同心县组成,分别是片选CS(对应P02引脚)、数据DATA(对应P01引脚)、时钟SCK(对应P03引脚),时序仿照标准SPI通信方式,可实现语音芯片命令控制、语音播放。
3.6.1.端口分配表
3.6.2.语音及命令码对应表
3.6.3.语音地址对应表
3.6.4.三线串口控制时序
三线串口控制模式由片选CS、时钟CLK和数据DATA脚组成,时序仿照标准SPI通信方式,复位信号在发码前先拉低5ms,然后拉高等待17ms。
工作时RESET需要一直保持高电平。
片选信号CS拉低2ms~10ms以唤醒WT588D语音芯片
接收数据低位在先,高位在后,在时钟的上升沿接收数据。
时钟周期介于200us~2ms之间,推荐使用300us。
数据成功接收后,语音播放忙信号BUSY输出在20ms之后做出响应。
发码完成后DATA、CLK、CS均要保持高电平。
在发送数据时,无需先发送命令码再发送指令。
D0~D7表示一个地址或者命令数据,
00H~DBH为地址挃令,
E0H~E7H为音量调节命令,
F2H为循环播放命令,
FEH为停止播放命令,
F5H为进入三线串口控制I/O口扩展输出命令,
F6H为退出三线串口控制I/O口扩展输出命令
3.6.5.地址/命令发送规则
循环播放命令F2H:
该命令需要在发送语音地址信号或者其他命令30ms之后、语音停止播放前发送,否则不能有效接收。
停止播放命令FEH:
在语音播放的过程中发送此命令可以停止播放语音,在发送DATA信号1ms之后、语音停止前发送有效。
音量调节命令E0H~E7H:
在语音芯片工作状态中发送此命令可调节音量大小,不管语音芯片是否处于播放状态。
如果是先触发地址语音或者其他的命令,则需要等待90ms才能发送音量调节命令,否则无效。
3.6.6.示例程序
(主控单片机PIC16F54,系统频率4MHz)
Sendthreelines(unsignedcharaddr)
{rst=0;/*对芯片迚行复位*/
delay1ms(5);/*复位信号保持低电平5ms*/
rst=1;
delay1ms(17);/*复位信号保持高电平17ms*/
cs=0;
delay1ms
(2);/*片选信号保持低电平2ms*/
for(i=0;i<8;i++)
{scl=0;
if(addr&1)sda=1;
elsesda=0;
addr>>=1;
delay1us(300);/*时钟周期300us*/
scl=1;
delay1us(300);
}
cs=1;
}
4.上位机软件WT588D VoiceChip
上位机软件只能也仅支持6000Hz、8000Hz、10000Hz、12000Hz、14000Hz、16000Hz、18000Hz、20000Hz、22000Hz采样率音频的加载。
如16001Hz、22050Hz这些采样率的音频是不能加载到软件中的,需要在音频编辑软件上进行转换,或者用上位机自带的转换工具进行转换。
在上位机软件中自带一个音频转换工具,如果对音质要求高的话,建议不要采用WT588D VoiceChip软件中的转换工具进行转换。
4.1.下载
ISP在线下载时(WT588D在应用环境中直接下载内容),须让WT588D处于停止工作的状态,如下载时把WT588D的RESET脚拉低接地,或者接到WTU02的P17脚,WTU02的P17在下载数据时为低电平,平时为高电平,从而起到在下载时对WT588D进行复位。
5.应用
5.1.按键控制PWM输出应用电路
在模块的基础上于P00至P03这4个引脚处各接一个按键;
PWM+和PWM-处接扬声器;在这种输出方式下,PWM+、PWM-均不能短接到地或者接电阻电容倒地,也不能PWM+/PWM-直接短路,否则容易造成音质失真,甚至引起WT588D芯片或者模块烧坏。
5.2.按键控制DAC输出(接三极管)应用电路
按键连接相同;
音频输出方式改成DAC方式,DAC引脚连接一个三极管的基极,
三极管的集电极接扬声器到VDD;三极管的发射极直接接地。
C6用于滤波,R6为分流电阻,取值为270Ω~1.2kΩ用于控制音量,阻值越大音量越大。
5.3.按键控制DAC输出(接功放)应用电路
其他地方与上相同,只有三极管电路放大改成功率放大芯片电路,C9为交流耦合作用。
5.4.控制方式变化
除了用4个按键控制方式外,还可用一线控制方式和3线控制方式;
一线控制方式:
P03作为数据DATA输入口,外部MCU发送数据给WT588D
三线控制方式:
P03作为时钟CLK口;
P02作为片选CS控制口;
P01作为数据口。
6.三线串口系统程序示例
说明:
此程序跟《WT588D诧音芯片及模块应用电路》中的三线串口控制模式应用电路相对应。
测试芯片:
AT89C2051。
#include
sbitKEY=P1^1;/*P1_1为P1口的第2位*/
sbitRST=P1^4;/*P1_4为P3口的第3位*/
sbitCS=P3^1;/*P3_1为P3口的第4位*/
sbitSCL=P3^2;/*P3_2为P3口的第5位*/
sbitSDA=P3^0;/*P3_0为P3口的第6位*/
//sbitDENG=P3^7;/*P3_5为P3口的第6位*/
voiddelay1ms(unsignedcharcount)//1MS延时子程序
{unsignedchari,j,k;
for(k=count;k>0;k--)
for(i=2;i>0;i--)
for(j=248;j>0;j--);
}
voiddelay100us(void)//100US延时子程序
{unsignedcharj;
for(j=50;j>0;j--);
}
Send_threelines(unsignedcharaddr)//三线发码子程序
{unsignedchari;
RST=0;
delay1ms(5);
RST=1;
delay1ms(17);/*17ms*/
CS=0;
delay1ms
(2);
for(i=0;i<8;i++)
{SCL=0;
if(addr&1)SDA=1;
elseSDA=0;
addr>>=1;
delay100us();/*100us*/
SCL=1;
delay100us();
}
CS=1;
}
main()
{unsignedcharFD=0;
P3=0XFF;
while
(1)
{if(KEY==0)
{
delay1ms(20);
if(KEY==0)//通过挄键P1.1来迚行发码值的递增
{Send_threelines(FD);
FD++;
if(FD==220//三线串口时,诧音段暂时最多为220段
{FD=0;}
while(KEY==0);//等待挄键释放,以免一次挄键诨判成几次
}
}
}
}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- WT588DP20 语音 模块 全球 工商大学 中文 资料
![提示](https://static.bdocx.com/images/bang_tan.gif)