Arduino蓝牙控制三色灯

最近开始研究arduino,网上关于arduino的材料,特别是中文的,不是很多。所以想要把自己实现的每一步都给记录一下。以后如果忘了,可以再看看。看到网上有不少人实现用蓝牙控制小灯,所以自己也动手小geek一下。

蓝牙模块用的是淘宝买的,40块钱一个,虽说也有贵的,但是便宜的感觉功能上差不多。

这里用到了arduino的扩展板,当然了,不用也行。完全是为了接下来做其他实验而准备的。蓝牙模块,要注意接线,TXRX与板上的TXRX要相反对接。然后在数字针脚9、10、11接上发光二极管。这里可加可不加电阻,不加的话亮一点。我在针脚8上加了一个灯,用于方便观察蓝牙的状态,接在蓝牙模块的state接口上。

 

接下来开发arduino程序。

int redLed = 9;   
int greenLed = 10;
int blueLed = 11;
int beep = 3;//指示灯,可以用蜂鸣器等代替
int state=8;//蓝牙state口
int signal;//test if connected
void setup()
{
  Serial.begin(9600); 
  pinMode(state,INPUT);
  pinMode(redLed, OUTPUT);
  pinMode(greenLed,OUTPUT);
  pinMode(blueLed,OUTPUT);
  pinMode(beep,OUTPUT);
  analogWrite(redLed, 0);
  analogWrite(greenLed, 0);
  analogWrite(blueLed, 0);
}

void loop(){
  int color;
    signal= digitalRead(state);
  if(signal==HIGH)
    digitalWrite(beep,HIGH);
   else
    digitalWrite(beep,LOW);
    
  if(Serial.available()>1){
    color = Serial.read();
    int val = Serial.read();
    if(color=='r'){
      analogWrite(redLed,val);
    }else if(color=='g'){
      analogWrite(greenLed,val);
    }else if(color=='b'){
      analogWrite(blueLed,val);
    }
    Serial.print("value is :");
    Serial.println(val);
  }
  delay(10);
  
}

 

ardunio端完成后,用android客户端调用。android端,网上也能找到例子,可以自己做一些合适的修改。如果需要,可联系我。


 

你可能感兴趣的:(arduino)