#include <Arduino.h>
#include <Wire.h>
#include "speech_recognizer.h"
#define INFINITE_LOOP_ON_FAILURE InfiniteLoopOnFailure(__FUNCTION__, __LINE__)
namespace {
void InfiniteLoopOnFailure(const char* function, const uint32_t line_number) {
Serial.println(String(F("entering an infinite loop due to failure in ")) + function + F(", at line number: ") + line_number);
while (true) {
yield();
}
}
switch (event) {
return F("kEventStartWaitingForTrigger");
return F("kEventStartRecognizing");
return F("kEventSpeechRecognized");
return F("kEventSpeechRecognitionTimedOut");
return F("kEventButtonTriggered");
return F("kEventKeywordTriggered");
default:
return F("");
}
}
}
void setup() {
Serial.begin(115200);
Serial.println("setup");
Wire.begin();
const auto ret = g_speech_recognizer.Initialize();
Serial.println(F("speech recognizer initialization was successful"));
} else {
Serial.println(String(F("speech recognizer initialization failed: ")) + ret);
INFINITE_LOOP_ON_FAILURE;
}
g_speech_recognizer.SetTimeout(10000);
g_speech_recognizer.AddKeyword(0, F("xiao yi xiao yi"));
g_speech_recognizer.AddKeyword(1, F("bei jing"));
g_speech_recognizer.AddKeyword(2, F("shang hai"));
g_speech_recognizer.AddKeyword(3, F("cheng du"));
Serial.println(F("setup successful"));
}
void loop() {
const auto result = g_speech_recognizer.Recognize();
if (result >= 0) {
Serial.print(F("result: "));
Serial.println(result);
}
Serial.print("event: ");
Serial.println(EventToString(g_speech_recognizer.GetEvent()));
}
}
语音识别模块类
Definition speech_recognizer.h:13
@ kButtonTrigger
按键触发识别模式
Definition speech_recognizer.h:45
@ kOK
Definition speech_recognizer.h:30
Event
事件类型
Definition speech_recognizer.h:54
@ kEventNone
无事件
Definition speech_recognizer.h:55
@ kEventStartWaitingForTrigger
开始等待触发
Definition speech_recognizer.h:56
@ kEventStartRecognizing
开始识别
Definition speech_recognizer.h:59
@ kEventSpeechRecognized
识别成功
Definition speech_recognizer.h:60
@ kEventSpeechRecognitionTimedOut
识别超时
Definition speech_recognizer.h:61
@ kEventButtonTriggered
被按键触发
Definition speech_recognizer.h:57
@ kEventKeywordTriggered
被关键词触发
Definition speech_recognizer.h:58