美文网首页程序员单片机学习程序园
通过Android连接HC-05控制arduino

通过Android连接HC-05控制arduino

作者: Houwing | 来源:发表于2019-05-27 16:43 被阅读5次

    之前我们已经使用HC-05进入AT模式进行配置\查看配置。现在我们需要用手机连接HC-05控制小灯的亮灭

    使用材料

    • arduino uno board
    • HC-05 bluetooth module(with en pin and state pin)
    • 电阻1个
    • 二极管小灯1个
    • 杜邦线若干
    • andriod手机(APP:蓝牙串口)


      蓝牙串口app

    连接电路

    hc-05_test_with_light.png

    arduino code

    #include <SoftwareSerial.h>
    #define AnalogPin 9
    
    char ch=' ';//用来存储手机发送过来的数据
    
    SoftwareSerial BT(3,2);//RX TX on the board
    void setup() {
      // put your setup code here, to run once:
      Serial.begin(9600);//这里应该和你的模块通信波特率一致
           delay(100);
           Serial.println("Arduino is ready.");
           pinMode(AnalogPin,OUTPUT);
           Serial.println("Analog pin is ready.");
           BT.begin(9600);//初始化蓝牙模块波特率
           Serial.println("Bluetooth is ready.");
    }
    
    void loop() {
      // put your main code here, to run repeatedly:
        if(Serial.available())
        BT.write(Serial.read());
      //把hc-05的串口输出的字符 输出到电脑串口中
      if(BT.available()){
        ch=BT.read();
        Serial.write(ch);
      } 
        switch(ch){
          case '1':Serial.println("Read from bluetooth is 1.");
          analogWrite(AnalogPin,100);
          ch=' ';
          break;
          case '2':Serial.println("Read from bluetooth is 2.");
          analogWrite(AnalogPin,120);
          ch=' ';
          break;
          case '3':Serial.println("Read from bluetooth is 3.");
          analogWrite(AnalogPin,180);
          delay(500);
          analogWrite(AnalogPin,60);
          ch=' ';
          break;
          default: analogWrite(AnalogPin,0);
          break;
        }
      delay(1000);
    }
    

    操作步骤

    • 按照电路图连接电路,烧写arduino代码进芯片,上电
    • 先进入系统设置里面的蓝牙设置,和HC-05进行配对(name:HC-05 pin:1234/0000)如果是默认配置进行配对,pin码一般是1234或者0000pin码都是4位数
    • 打开下载好的app,开始发送内容
    • 发送1,触发case1中的代码块,发送2触发case2中的代码块。

    发现的问题(有大牛可以给解答一下吗?谢谢)

    • 用这个手机app发送串口数据,在pc的串口能够正常接收,但是pc端口发送的数据在手机里面接收是乱码。我认为这个问题要么是手机接收的波特率不对,要么是手机设置的字符集不对,但是具体应该怎么设置到现在我还没能摸索到。

    以上就是关于用手机通过串口控制arduino的测试内容。可以基于此基础开发其他物联网或者智能家居的设备。

    相关文章

      网友评论

        本文标题:通过Android连接HC-05控制arduino

        本文链接:https://www.haomeiwen.com/subject/jabhtctx.html