Android 通过蓝牙语音控制 Arduino

38度高温,差点中暑。一怒之下洗了全部的衣服。

裸躺在六平米小房间的小床上,才发现他么的没衣服穿了。

所以随手做了这么个小东西,权当解闷。不BB,上图。


Android 通过蓝牙语音控制 Arduino_第1张图片
实物展示

视频演示地址 Youtube

翻不了墙头儿看这儿 Youku

(这个在手机APP上好像不能直接打开,要从浏览器里看)


兄弟,如果你也像我这么无聊,想出门没衣服穿,想买衣服兜里又没钱,那么你需要准备:

  1. 一块 Arduino 板子(Uno 或者其他版本都可以)和 一款Android 手机(最好像我这样的屌丝机不怕折腾)

  2. 支持 Arduino 的蓝牙模块(我的是 HC-05,还是 HC-06 来着。某宝有很多,20大洋左右,包邮还有详细文档)

  3. 一个LED小灯和一个电阻(几百欧姆的就差不多了,不用也可以,一时半会儿烧不坏,还更亮)

  4. 几条导线(最好带插针)和一块面包板,电源等等

以上都不是太硬性的要求,看你折腾的能力了。

连线图

用 Fritzing 这个软件做的,玩 Arduino 必备神器。

Android 通过蓝牙语音控制 Arduino_第2张图片
连接图示

源代码

全部代码如下,图省事的可以复制粘贴。

#include           
#define RxD 11                // 设置 RX 引脚为 11 
#define TxD 10                // 设置 TX 引脚为 10
#define LED_PIN 6             // 设置 LED 引脚为 6

SoftwareSerial btSerial(RxD,TxD);           //串口定义
String voice;                               //定义 voice 变量保存字符串指令

void setup() {  
    pinMode(LED_PIN, OUTPUT);               // LED 引脚模式为输出(OUTPUT) 
    btSerial.begin(9600);                   //串口码率
}

// 将串口传输的字符连接成完整的字符串指令
String getVoice(){
    while (btSerial.available()) {      
        delay(50);       
        char orderChar = btSerial.read();          
        if (orderChar == '#') 
            break;            
            voice += orderChar; 
    }  
    return voice;
}

//控制函数。解析字符串指令,调用相应的动作
void control(String voice){
    //打开 on
    if(voice.endsWith("on")){
        digitalWrite(LED_PIN,1);  
        Serial.println("Light ON");
    }
    //关闭 off
    if(voice.endsWith("off")){
        digitalWrite(LED_PIN,0);
        Serial.println("Light OFF");
    }
}

//主循环
void loop() {
    voice=getVoice();
    control(voice);
    voice="";           // voice 回到初始状态
}

其他

既然你已经看到这儿了,说明你应该是懂这些乱七八糟的东西的,所以我就不太详细地解释什么了。

我可不是那种乐于分享喜欢被人关注然后怎么怎么样的人(写个日记还要 SEO),我连个小白都不算。况且,哥们儿还很懒。

更详细点的内容就在Github(我的 Github )上找吧,懒得写了,没心情。

额,Android App下载链接 点这儿

翻不了墙头儿的 点这儿

你的手机系统最好不是国内阉割版的,最好还要有VPN可用。没有就自己想办法吧。再能折腾一点的话,加个继电器控制自己家家电也是可以的。(我他么怕房东砍我)

最后衷心的祝愿大家多游游山玩玩水泡泡妞别他么像我这么无聊

你可能感兴趣的:(Android 通过蓝牙语音控制 Arduino)