蓝牙模块 (HC-05) 和语音识别模块 (V 3.1) 单独与 Arduino Uno 一起工作得很好,但是当我尝试一起运行它们时,其中一个停止工作,即语音模块停止工作。我一直无法弄清楚为什么。我的代码如下:
# include <SoftwareSerial.h>
#include "VoiceRecognitionV3.h"
VR myVR(2,3); // 2:RX 3:TX
uint8_t buf[64];
SoftwareSerial bluetooth(4,5); //for Bluetooth module RX FOLLOWD BY TX
void printSignature(uint8_t *buf, int len) {
int i;
for (i = 0; i < len; i++) {
if (buf[i] > 0x19 && buf[i] < 0x7F) {
Serial.write(buf[i]);
}
}
}
void setup() {
pinMode(A4,OUTPUT);// for VCC of voice module
digitalWrite(A4,HIGH);
myVR.begin(9600);
Serial.begin(9600);
myVR.load((uint8_t)0); //loading the data of voice module
myVR.load((uint8_t)1);
myVR.load((uint8_t)2);
myVR.load((uint8_t)3);
myVR.load((uint8_t)4);
bluetooth.begin(9600);
}
String one;
void loop() {
int ret = myVR.recognize(buf, 50);
if (bluetooth.available() > 0) {
one = bluetooth.readString();
Serial.println(one);
}
if (ret > 0) {
Serial.print("Voice module said ");
printSignature(buf+4, buf[3]); //priting the signature of command
Serial.println(""); //for new line
}
}
1)问题在于通信,因为当我删除 myVR.begin(9600) 时,蓝牙工作,语音模块不工作。
2)当我删除 bluetooth.begin(9600) 时,语音模块工作,蓝牙不工作。
他们一起不工作,只有一个工作。