语音模块

来自YFRobotwiki
跳转至: 导航搜索

语音模块 588D用户手册 -- V1

模块简介

588D语音模块采用广州唯创电子语音芯片WT588D-20SS,采用32Mbit容量存储芯片(注:1byte=8bit),可存储约1000s语音(根据音频采样率决定),板载WT55U02-20SS下载芯片,通过588D电脑端上位机可直接给存储芯片下载音频数据,无需外部下载器。主要功能:自定义语音播报,可直接驱动0.5W小喇叭

模块特征

  • 支持加载6K~20KHz采样率,WAV格式音频
  • 支持DAC/PWM两种输出方式,PWM输出可直接推动0.5W/8Ω喇叭,推挽电流充沛
  • 支持按键控制模式、一线串口控制模式、三线串口控制模式
  • 按键模式下可设置多种IO口触发方式
  • 220段可控制地址位,单个地址为最多加载128段语音
  • 语音播放完毕进入休眠模式,省电(注:一线串口模式无法休眠模式)
  • 配套上位机软件,操作方便,任意组合语音
  • 内部独特语音处理器,声音更自然悦耳
  • 模块引出9引脚,使用方便简洁
  • 工作电压: DC3.3~5.5v
  • 休眠电流: < 10uA

模块使用

模块使用前,需先语音下载工具软件安装,软件安装包(资料->软件及使用说明文件夹->WT588D语音下载软件安装包.zip),软件使用说明书(资料->软件及使用说明文件夹->WT588D软件使用说明书.pdf)

驱动程序下载地址:链接:https://eyun.baidu.com/s/3kU6nxgr 密码:CXyl

模块测试

模块出厂默认都是已下载语音的,按照模块连接示意图中 "按键模式-PWM输出" 电路连接进行功能测试(喇叭参数 0.5W/8Ω喇叭)

  • 语音输出测试:P0短接地,触发语音,喇叭正常输出语音则模块可正常使用
  • 语音下载测试:USB-Micro数据线(安卓手机数据线)连接到模块,电脑会自动安装驱动,打开软件,加载工程文件,点击下载即可(具体操作步骤下文可见--下载自定义语音)

模块连接示意图

按键模式 - PWM输出

Voice_588D_circuit_a_pwm

按键模式 - DAC输出

Voice_588D_circuit_a_dac

一线串口 - PWM输出(模块和MCU电压需一致,不一致需要串联电阻)

Voice_588D_circuit_one_pwm

一线串口 - DAC输出(模块和MCU电压需一致,不一致需要串联电阻)

Voice_588D_circuit_one_pwm

三线串口 - PWM输出(模块和MCU电压需一致,不一致需要串联电阻)

Voice_588D_circuit_thr_pwm

三线串口 - DAC输出(模块和MCU电压需一致,不一致需要串联电阻)

Voice_588D_circuit_thr_dac

模块控制程序示例

按键模式

按键触发模式下包括脉冲可重复触发、脉冲不可重复触发、电平保持可循环、电平保持不可循环、电平非保持循环、上一曲不循环、下一曲不循环、上一曲可循环、下一曲可循环、无效按键、播放/暂停、停止、音量+、音量-以及播放/停止等 15 种触发方式。

IO口功能及触发地址可以通过软件设置,设置方法如下(当前模块可用IO口为4个):

Voice_588D_setting_a_g

Voice_588D_setting_a_c

一线串口控制模式

示例程序见资料 -> 一线及三线MCU控制程序示例文件夹

使用一线串口控制模式时,用P03口作为数据端口,可以实现语言播放、停止、音量调节和直接触发语音等。P0~P2可以屏蔽,也可以正常设置使用。

控制时序图

一线串口只通过一条数据通信线控制时序,依照电平占空比不同来代表不同的数据位。先把数据信号拉低5ms,然后再发送数据。高电平与低电平数据占空比1:3即代表数据位0,高电平于低电平数据位占空比为3:1代表数据位1。高电平在前,低电平在后。数据信号先发低位再发高位。 在发送数据时,无需先发送命令码再发送指令,直接发送地址数据便可触发播放语音,数据命令码对应:

  1. 00H~DBH 为地址指令
  2. E0H~E7H 为音量调节命令
  3. F2H 为循环播放命令
  4. FEH 为停止播放命令

详细时序请见下图(D0~D7表示一个地址或者命令数据):

Voice_588D_one

ps说明:一线串口模式下 WT588D-U 无法进入休眠状态,请在电池供电时慎用。 当音频为20KHz 采样率时,在播放过程中发送控制命令,有可能会产生轻微的 “BOBO”声。DATA 为一线串口数据通信线,WT588D-U 语音模块每次通电后要等17ms 才能开始发送数据信号,BUSY 为 WT588D-U 语音模块忙信号输出,数据成功发送后等待20ms,BUSY 输出将作出响应。数据位占空比对应详见下图。

Voice_588D_one

三线串口控制模式

示例程序见资料 -> 一线及三线MCU控制程序示例文件夹

三线串口控制模式由三条通信线组成,分别是P01 数据 DATA,P02 片选 CS,P03 时钟 CLK,时序根据标准 SPI 通信方式。通过三线串口可以实现对 WT588D-U 语音模块进行命令控制、语音播放。三线串口模式下,所有按键均无效。

三线串口控制模式由片选 CS、时钟 CLK 和数据 DATA 脚组成,时序仿照标准 SPI 通信方式,片选信号 CS 先拉低 5ms 以唤醒语 WT588D-U 语音模块,接收数据低位在先,在时钟的上升沿接收数据。时钟周期介于 100us~2ms之间,推荐使用 300us。数据成功接收后,语音播放忙信号 BUSY 输出在 20ms 之后做出响应。发数据时先发低位,再发高位。在发送数据时,无需先发送命令码再发送指令,直接发送地址数据便可触发播放语音,数据命令码对应:

  1. 00H~DBH 为地址指令
  2. E0H~E7H 为音量调节命令
  3. F2H 为循环播放命令
  4. FEH 为停止播放命令

详细时序请见下图(D0~D7表示一个地址或者命令数据):

Voice_588D_three

说明:每次通电后等待 17ms,才能给 WT588D-U 语音模块发送数据信号。

下载自定义语音

1、 准备好自定义语音(可通过文字转语音软件编辑自定义语音,如果是已有的语音文件但采样率无法使用,可通过GoldWave软件更改采样率),连接好模块

Voice_588D_download_1

2、 双击打开已安装好的软件

Voice_588D_download_2

3、 新建工程

Voice_588D_download_3

4、 载入语音(6~20KHz采样率,wav格式)

Voice_588D_download_4

5、 将语音拖入想要存放的地址(当前两个语音文件存放到 00 01 地址)

Voice_588D_download_5

Voice_588D_download_6

6、 设置参数

Voice_588D_download_7

7、 编译生成bin文件(这步骤不能忘,不然你下载的文件没有更改)

Voice_588D_download_8

8、 打开下载窗口

Voice_588D_download_9

9、 下载语音

Voice_588D_download_10

10、 测试

P0 、P1分别短接地,触发语音,喇叭正常输出自定义语音

模块尺寸

  • 模块尺寸:21x42.4mm
  • Voice_588D

SPI-Flash 存储器容量、采样率和时间的对应关系

存储器容量、采样率和时间的对应关系(以下数据为在 WT588D 的应用中计算得出,不代表存储器在其他应用场所的数据)

Voice_588D_flash

参考文档

  • GoldWave 软件使用(资料->软件及使用说明文件夹)
  • 文字转语音软件使用(资料->软件及使用说明文件夹)
  • WT588D芯片相关资料(资料-> 芯片资料)
  • 存储器相关资料(资料-> 芯片资料)
  • 语音工程文件--用于测试模块(不同模式下的应用示例)

文档版本记录

  • 11/10/2016 原始版本 V1




返回首页

更多建议和问题欢迎反馈至 YFRobot论坛

购买方式:YFRobot 电子工作室