您的位置:首页 > 产品设计 > UI/UE

Arduino蓝牙控制三色灯

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

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



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





接下来开发arduino程序。

[cpp] view
plaincopy

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端,网上也能找到例子,可以自己做一些合适的修改。如果需要,可联系我。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: