通过按下Android应用程序Roboremo上的这些按钮,数据将通过智能手机的蓝牙发送到HC-06蓝牙模块。从HC-06模块数据由Arduino接收,Arduino以特定按钮的代码中定义的角度旋转伺服。我们还对角度45 和 135 进行了编码,但由于 Roboremo 应用程序的限制,您只能创建 5个按钮,我们跳过了两个按钮。
这就是您可以使用蓝牙将数据从智能手机发送到Arduino以无线控制伺服的方法。
#include
#include
Servo myServo;
int TxD = 11;
int RxD = 10;
int servoposition;
int servopos;
int new1;
SoftwareSerial bluetooth(TxD, RxD);
void setup() {
int pos=0;
myServo.attach(9);
myServo.write(0);
Serial.begin(9600); // start serial communication at 9600bps
bluetooth.begin(9600);
}
void loop() {
if (bluetooth.available())
{
String value = bluetooth.readString();
servoposition = value.toInt();
if (value.toInt() == 0)
{
Serial.println(servoposition);
myServo.write(0);
}
if (value.toInt() == 45)
{
Serial.println(servoposition);
myServo.write(45);
}
if (value.toInt() == 90)
{
Serial.println(servoposition);
myServo.write(90);
}
if (value.toInt() == 135)
{
Serial.println(servoposition);
myServo.write(135);
}
if (value.toInt() == 180)
{
Serial.println(servoposition);
myServo.write(180);
}
while(value.toInt()==1){
if (bluetooth.available())
{
value = bluetooth.readString();
Serial.println(value);
if (value.toInt()==2)
{Serial.println("YYY"); break; }
}
servopos++;
delay(30);
Serial.println(servopos);
myServo.write(servopos);
if (servopos ==180 )
{servopos=0;break;}