零知智障小车系列4 - 蓝牙模块与手机APP通信

本次讲解蓝牙模块 JDY-18型号的透传模块与安卓手机APP进行通信。

一、实验材料:

JDY-18蓝牙模块

安卓手机(本次演示型号:荣耀10)

杜邦线若干

二、电路连接:

电路连接比较简单,按照如下线路连线即可

三、代码


							
/**
*    文件: jdy18-ble-test1.ino      by 零知实验室([url=http://www.lingzhilab.com]www.lingzhilab.com[/url])
*    -^^- 零知开源,让电子制作变得更简单! -^^-
*    时间: 2018/08/09 10:36
*    说明: 
**/
 
 
// the setup routine runs once when you press reset:
void setup() {
    // put your setup code here, to run once:
 
        Serial.begin(9600);
        Serial1.begin(9600);
         
        Serial1.println("AT+NAMEJDY-18TEST");
}
 
// the loop routine runs over and over again forever:
void loop() {
    // put your main code here, to run repeatedly:
        if(Serial1.available()>0){
                char x = Serial1.read();
                Serial.println(x);
//                Serial1.print(x+1);
        }
        if(Serial.available()>0){
                Serial1.print(Serial.read());
        }
        delay(100);
         
        //Serial1.print("test");
}
  
  

我们把程序上传到零知标准板上,然后在手机上打开你的蓝牙调试APP,就可以与蓝牙模块进行通信了。

注:本实验我使用的一个自己编写的蓝牙Demo程序- 蓝牙调试DEMO.apk(点击下载) 如果没有自己的蓝牙APP,可以试试这个已经写好的APP并在此基础上进行修改,有一点android编程基础的可以继续下面的工作-编写自己的APP。

当然,作为电子爱好者,已经有的APP是无法满足我们的需要的,这时候就需要自己编写自己的APP了。不过我们这里只需要在别人已有的基础上改写即可,并不需要自己从头造轮子。我们使用Android Studio工具改写一个我们自己蓝牙APP,这里使用一个开源的蓝牙库 - FastBLE进行设计,在它给的demo上进行修改即可。(注:FastBle源码请到GitHUB搜索下载即可) 这里提供一个我已经改写好的APP,界面如下:

如果搜索不到蓝牙设备,可以用NRF Connect调试工具试试。

连接设备

与蓝牙模块通信测试(注:十六进制形式)

4、完整的工程如下(注:Arduino Studio 3版本)


ble-send-recv-demo.7z(点击下载)