我遇到了Arduino Uno和HC-05蓝牙问题。 如果有人可以帮助我,我将不胜感激。
我的问题是:在将程序成功上传到Arduino Uno并将命令(由android studio创建的机器人手臂应用)发送到蓝牙HC-05之后,首先Hc-05收到了数据没有任何问题,但经过一些动作后,HC-05停止从应用程序接收数据,并且Arduino上的Tx和Rx LED均不起作用。如果我重新启动Arduino,它将首先工作,然后会发生同样的问题。
#include <Servo.h>
Servo arm1;
Servo arm2;
Servo arm3;
Servo arm4;
Servo arm5;
char c = ' ';
String strData = "";
void setup() {
arm1.attach(3);
arm2.attach(5);
arm3.attach(6);
arm4.attach(9);
arm5.attach(10);
arm1.write(0);
arm2.write(0);
arm3.write(0);
arm4.write(0);
arm5.write(90);
Serial.begin(9600);
}
void loop() {
if (Serial.available() > 0) {
while (Serial.available() > 0) {
c = ((byte)Serial.read());
if (c == '?') {
String strDegree = strData.substring(6, strData.length());
int intDegree = strDegree.toInt();
if(strData.indexOf("arm1") >= 0)
arm1.write(intDegree);
if(strData.indexOf("arm2") >= 0)
arm2.write(intDegree);
if(strData.indexOf("arm3") >= 0)
arm3.write(intDegree);
if(strData.indexOf("arm4") >= 0)
arm4.write(intDegree);
if(strData.indexOf("arm5") >= 0)
arm5.write(intDegree);
Serial.println(strData);
strData = "";
break;
}
else {
strData += c;
}
delay(1);
}
}
}
我正在等待听到您的消息。
最好的问候。
答案 0 :(得分:0)
我希望为时不晚:D 您的代码是好的(假设您拥有的应用程序也是正确的) 我认为问题出在硬件上。我认为在机械臂电机运动期间,arduin上存在明显的电压降,这就是失去连接的原因。 尝试将HC-05连接到单独的电源(VCC-3.3-5V,HC-05 GND-Arduino GND-GND外部电源),我想您的问题将得到解决。 我想知道您用于与Arduino集成的机械臂吗?我发现site的机械手臂很多,但都没有与Arduino兼容。