1. JQ8900-16P语音模块

JQ8900-16P语音模块支持mp4、wav格式硬件解码,支持U盘、TF卡、SPIFLASH,支持SPIFLASH模拟U盘操作,支持多种控制模式(一线串口、两线串口、引脚短接),支持多种音频控制操作,是一款性价比较高的语音模块。

2. 芯片参数

image.png

3. 芯片管脚

image.png

image.png

4. 一线串口控制

相比于引脚短接方式复杂的电路,串口控制接线简单,功能控制灵活。虽然一线串口控制功能有限,但是胜在开发起来更加简单。一线串口模式通过向模块传递一个16进制数字,实现模块的控制。

通信协议如下图:

image.png

根据通信协议,Arduino IDE下,编写通信函数:

void SendData (char addr){
  //开始拉高
  digitalWrite(SOUNDPIN, HIGH);
  delayMicroseconds ( 1000 );
  //开始引导码
  digitalWrite(SOUNDPIN, LOW); 
  //此处延时最少要大于2ms
  delayMicroseconds ( 3200 );
  //总共8位数据
  for (int i = 0; i < 8; i++ )
    digitalWrite(SOUNDPIN, HIGH);    
    if ( addr & 0x01 ){
      //3:1表示数据位1 
      delayMicroseconds ( 600 );
      //SOUNDPIN连接模块VPP PIN
      digitalWrite(SOUNDPIN, LOW);     
      delayMicroseconds ( 200 );    
    }else{
   
   //1:3表示数据位0
      delayMicroseconds (200); 
      digitalWrite(SOUNDPIN, LOW);
      delayMicroseconds ( 600 );
    }
    addr >>= 1;  
  }
  digitalWrite(SOUNDPIN, HIGH);
}

利用函数就可以实现模块控制。

数字与控制功能对应表:
image.png
image.png

示例:播放歌曲1:

    //清空指令
    SendData(0x0a);
    //选择歌曲00001
    SendData(0x01);
    //确认播放
    SendData(0x0b);

所有的音频需要将名称设置为 00001.mp300002.wav这样的格式,才会被指令识别,并且要拷贝到SPIFLASH根目录。


wei4118268
88 声望1 粉丝

前端从业者


引用和评论

0 条评论