概 述
DFRduino Player V2.0语音播放模块的设计初衷是为了让您的机器人会说话。如果机器人能与人进行简单的交流的话,那么机器人就会显的更加智能,同时也增加了不少可玩性。
模块具有立体声输出,可与有源音箱连接;2路功放输出,每路最大3W,可直接接喇叭;支持TTL串口模式,方便与各种Arduino、单片机以及电脑连接。通过一个ATMEGA168芯片进行处理,尽量不占用Arduino或其他控制器上的资源,只需要将语音文件放置在SD卡中,Arduino或其他控制器通过通讯发送文件名信息即可播放相应的语音文件。DFRduino Player V2.0还兼容.net gadgeteer标准接口。
性能描述
1.电压:+5V
2.工作电流:大于200mA(带负载时)
3.功放输出功率:每路最大3W,可直接接喇叭
4.接口:TTL串口
5.支持格式:.WAV、.MP3、.MIDI 这三种文件格式
6.串口通信波特率:19200bps,格式8 N 1
8.模块尺寸:52 X 37mm
9.模块重量:30g
引脚定义
1.+5V 供电负,需要准备500ma电源,因为功放如果大音量比较耗电。
2.GND 供电正。
3.RX 模块串口数据接收端。
4.TX 模块串口数据发送端。
5.OUT 语音结束中断输出,当语音结束输出一个1毫秒低电平。
模块通讯协议
串口模式,波特率19200bps,格式8N1。
通讯指令使用字符串形式,\r\n表示回车换行符。
使用串口模式时,才会有返回值,返回值为字符串形式;I2C模式无返回值。
功能名称 | 指令 | 返回值 | 备注 |
暂停播放 | \\:p\r\n | 成功返回pause\r\n | \r\n表示回车换行符 |
继续播放 | \\:s\r\n | 成功返回start\r\n | \r\n表示回车换行符 |
下一首 | \\:n\\n | 成功返回next\r\n 失败返回 false\r\n | \r\n表示回车换行符 |
上一首 | \\:u\r\n | 成功返回key up\r\n | \r\n表示回车换行符 |
音量设置 | \\:v X\r\n(备注:是v空格再跟数字,一般能听见的最小音量设置在150) | 成功返回vol set ok | X=0-255,数字越大音量越大 |
指定文件播放 | \\语音文件名称\r\n | 成功返回Play ok\r\n 失败返回 Not found\r\n 播放完毕返回 Play end\r\n | 语音文件名称不超过8个英文字母或者4个中文字 |
模块的使用
先将SD卡格式化为FAT格式,然后新建一个sound文件夹,音频文件放在sound文件夹内。
在使用模块时,要保证电源电压为5V,电流最好大于1000毫安,如果电流不够需需要将音量调小或者使用单个喇叭播放。
模块上的指示灯功能:等待初始化成功后将长亮,如果SD卡未插好或SD是坏的,指示灯将一直闪烁,同时串口会输出 Plese check micro SD card\r\n。
串口通信实验
将语音播放器模块上的+5V、GND、RX、TX分别换到Arduino xbee传感器扩展板的5V、GND、TX、RX上,如图:
将按钮模块接到Arduino xbee传感器扩展板的数字口3上。
待连线完毕后,给Arduino通电,建议使用外部供电。将下列程序编译后下载到Arduino中。
Arduino测试代码
/////////////////////////////////////////////////////////////////////////////////
//将音频文件放在根目录下的sound文件夹 (sound),支持.WAV、.MP3、.MIDI 这三种文件格式
//电压 5V,电流保证有1000毫安,如果电流不够需要将音量调小或者使用单个喇叭
//指示灯的功能:
// 等待初始化成功后将长亮,如果SD卡未插好将一直闪烁同时
// 如果是串口模块将输出 Plese check micro SD card\r\n
///////////////////////串口通信方式/////////////////////////////////////////////
// 播放音频:语音文件名称\r\n 播放相应名称的歌曲,如果找到歌曲播放正确将返回 Play ok\r\n
// 如果失败返回 Not found\r\n; 如果播放完毕返回 over\r\n(\r\n表示回车换行)
// 语音文件名称不超过8个英文字母,4个中文。
// 暂停播放\\:p\r\n 成功返回pause\r\n
// 继续播放\\:s\r\n 成功返回start\r\n
// 播放下一首\\:n\r\n 成功返回next\r\n,失败返回 false\r\n
// 播放上一首\\:u\r\n 成功返回key up\r\n
// 音量设置\\:v 255\r\n,设置音量大小 数字 0-255 数字越大音量越大,成功返回Play end\r\n
/////////////////////////////////////////////////////////////////////////////////
//串口接线方式
//Arduino --- MP3
//TX RX
//RX TX
//5V +5V
//GND GND
void setup() {
Serial.begin(19200);
delay(2000);//等待2秒钟播放器初始化完成
Serial.println("\\:v 200"); // 音量设置最大 数字 0-255 数字越大音量越大
delay(50);
}
void loop() {
delay(5000);
Serial.println("\\:n"); // 播放下一首
}
下载程序时拔掉Arduino XBEE传感器扩展板,或拔掉Arduino XBEE传感器扩展板与MP3模块的串口连线。