5465浏览
查看: 5465|回复: 4

[已解决] 语音识别模块问题,求教

[复制链接]
#include <avr/wdt.h>  
#include <Servo.h>
#include <VoiceRecognition.h>
VoiceRecognition Voice;
#define Led 8 //定义Led引脚为8
Servo myservo;

void setup() {
   myservo.attach(9);
    Serial.begin(9600);
    pinMode(Led,OUTPUT);              //初始化LED引脚为输出模式
    digitalWrite(Led,LOW);            //LED引脚低电平

    Voice.init();//初始化VoiceRecognition模块   
    Voice.addCommand("kai deng",0);   //添加指令,参数1:指令内容,参数2:指令标签(可重复)
    Voice.addCommand("zhuan dong",2);                                  //如“北京”和“首都”代表同样含义,则可共用标签。无返回
    Voice.addCommand("guan deng",1); //添加指令,参数(指令内容,指令标签(可重复))
    Voice.addCommand("hui fu",3);
    Voice.start();//开始识别
    //wdt_enable(WDTO_1S);//打开看门狗(防止死机)              

}
void loop() {
  switch(Voice.read())               //判断识别内容,在有识别结果的情况下Voice.Read()会返回该指令标签,否则返回-1
  {
    case 0://若是指令“kai deng”
        digitalWrite(Led,HIGH);     //点亮LED
        Serial.println("received'kai deng',command flag'0'"); //串口发送received"kai deng",command flag"0"
    break;
    case 1://若是指令“guan deng”
        digitalWrite(Led,LOW);     //熄灭LED
        Serial.println("received'guan deng',command flag'1'"); //串口发送received"guan deng",command flag"1"
    break;
  /*  case 2:
        for(int i=0;i<180;i=i+8)
        myservo.write(i);
     break;
    case 3:
        for(int i=180;i>0;i=i-18)
        myservo.write(i);
    break; */
   default:
  break;
  }
  //wdt_reset();   
}
想要用语音识别模块进行开关灯,和舵机转动控制,但是只要程序中一加上我标记的这条定义舵机信号口,程序就会失效,开关灯也无法语音控制,去掉这条语句就可以,为什么呢?问题出现在哪里,小白求教啊

tyjjr  中级技匠

发表于 2015-3-25 22:22:45

语音模块正常工作需要占用 D2 D4 D9 D10 D11 D12 D13端口,您可以尝试更换其他接口测试
回复

使用道具 举报

i小酷99  中级技师
 楼主|

发表于 2015-3-26 11:26:32

tyjjr 发表于 2015-3-25 22:22
语音模块正常工作需要占用 D2 D4 D9 D10 D11 D12 D13端口,您可以尝试更换其他接口测试 ...

谢谢您,我换了接口,测试成功了,但是无法识别2,3指令,是这款模块默认识别两种指令吗?怎样修改能控制舵机呢?
回复

使用道具 举报

tyjjr  中级技匠

发表于 2015-3-26 12:03:29

i小酷99 发表于 2015-3-26 11:26
谢谢您,我换了接口,测试成功了,但是无法识别2,3指令,是这款模块默认识别两种指令吗?怎样修改能控制 ...

没有默认识别的,您可以在case 2或者case 3的位置通过串口推送数据观察,排查可能出现问题的原因。或者尝试更换识别指令测试。
回复

使用道具 举报

i小酷99  中级技师
 楼主|

发表于 2015-3-26 17:27:18

tyjjr 发表于 2015-3-26 12:03
没有默认识别的,您可以在case 2或者case 3的位置通过串口推送数据观察,排查可能出现问题的原因。或者尝 ...

谢谢您,问题解决了,嘿嘿
回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies |上传

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail