输入0后,Arduino不会关闭振动

时间:2016-11-12 04:37:27

标签: arduino

我有arduino UNO,附有蓝牙模块和振动电机。我可以打开振动器,但似乎无法将其关闭。这是代码

#include<SoftwareSerial.h>//import the serial library

int vib=8;
SoftwareSerial Genotronex(10,11);//RX,TX
int BluetoothData;//the data given

void setup() {
Genotronex.begin(9600);
Genotronex.println("Bluetooth on please press 1 to vibrate");
pinMode(vib,OUTPUT);
// put your setup code here, to run once:
}

void loop() {
if (Genotronex.available()){
BluetoothData=Genotronex.read();{
if(BluetoothData='1'){
  digitalWrite(vib,'1');
  Genotronex.println("Vibrator on");
  delay(500);

  }
  else if (BluetoothData='0'){
  digitalWrite(vib,'0');
  Genotronex.println("Vibrator off");
  delay(500);

  }   
  }
  }
delay(100);
// put your main code here, to run repeatedly:
}

在蓝牙终端,它说 &LT 1为卤素;振动器 当我输入&#39; 1&#39; 但也说 &lt; 0)振动器打开 当我输入&#39; 0&#39;什么时候应该关闭振动器。

感谢所有帮助

1 个答案:

答案 0 :(得分:2)

if(BluetoothData='1'){
                ^

=是作业。使用==进行比较。

此外,BluetoothData应该被定义为loop()中的局部变量。它可以以任何方式工作,但会编译为更高效(更易读!)的代码。