LD3320语音识别模块+Arduino UNO 开发板(控制LED灯和SG90舵机)

这是一篇LD3320+Arduino学习后的分享文章:(程序+接线)

       最近在网上看到很多关于LD3320语音识别模块+Arduino的使用教程,给我第一感觉高大上,对于一个小白的我来说,一开始以为会挺难的,后来学习过后发现也还可以,不是那么的遥不可及,于是就买了一个LD3320语音识别模块,在网上找了各个版本的程序进行学习,接下来就和大家分享一下吧!

       可以选择LED灯或者是SG90舵机(180度),舵机的话不一定是SG90舵机180度的,其他的都可以,比如360度舵机、MG995舵机、MG90S舵机都可以,我是把LED灯和SG90舵机放在一块控制的,这里只是分享一下我的学习经验。


  • 需要准备的材料
  1. LD3320语音识别模块
  2. Arduino
  3. 杜邦线
  4. LED灯/SG90舵机(180度)
  5. 面包板

 LD3320语音识别模块 LD3320语音识别模块+Arduino UNO 开发板(控制LED灯和SG90舵机)_第1张图片


接线对照表

LD3320 语音识别模块 Arduino UNO 开发板
3.3V(两个) 3.3V
GND(两个) GND
MISO D12
MOSI D11
SCK D13
CS/NSS D4
NC(5V) 不用接
RST D9
WR GND
IRQ D2


 

注意:在接LD3320 语音识别模块的时候如果Arduino UNO 开发板上面的(GND3.3V接口不够用可以用面包板来辅助以下)

LED灯与Arduino UNO开发板接线

LED灯 Arduino UNO开发板
负极(短头) GND
正极(长头) D8

SG90舵机+Arduino UNO开发板

SG90舵机(180度) Arduino UNO开发板
正极(红色线) 5V
负极(棕色线) GND
脉冲输入(黄色线) ~D6

 

以上的Arduino UNO 开发板上面的数字接口(除了GND和3.3V接口)都是够用的,用不到拓展板,当然你想控制更多的东西,你可以看情况而定


LD3320 语音识别模块的库文件下载链接:https://pan.baidu.com/s/142FuthhR2O9mg6LTFHCYzg

提取码:f65e


 程序:

#include                         //舵机头文件
#include                        //LD3320语音识别模块的头文件

Servo myservo;                                  //声明一个舵机对象
VoiceRecognition Voice;                         //声明一个语音识别对象

#define Led 8                                   //定义LED控制引脚

void setup()                                   
{
    myservo.attach(6);                          //定义6号引脚为舵机的脉冲输入引脚
    pinMode(Led,OUTPUT);                        //初始化LED引脚为输出模式
    digitalWrite(Led,LOW);                      //LED引脚低电平
    
    Voice.init();                               //初始化VoiceRecognition模块
    Voice.noiseTime(0x10);                      //上电噪声略过
    Voice.micVol(0x30);                         //调整ADC增益
    Voice.voiceMaxLength(0x14);                 //最长语音段时间
    Voice.addCommand("kai",0);             //"开"添加指令,参数(指令内容,指令标签(可重复))
    Voice.addCommand("guan",1);            //"关"添加指令,参数(指令内容,指令标签(可重复))
    Voice.addCommand("jiu shi du",2);           //90度
    Voice.addCommand("yi bai ba shi du",3);     //180度
    Voice.start();                              //开始识别
}
void loop() 
{
  switch(Voice.read())                          //判断识别
  {
    case 0:                                     //若是指令“kai deng”
    digitalWrite(Led,HIGH);                       //点亮LED
    break;

    case 1:                                     //若是指令“guan deng”
    digitalWrite(Led,LOW);                        //熄灭LED
    break;
 
    case 2:
    myservo.write(90);                            //90度
    break;

    case 3:
    myservo.write(180);                           //180度
    break;
  
    default:
    break;
  }
}

具体可以看这个这个网址可以提供一些具体的LD3320语音识别模块的具体参数调整:https://www.arduino.cn/thread-78023-1-20.html

你可能感兴趣的:(LD3320语音识别模块+Arduino UNO 开发板(控制LED灯和SG90舵机))