“Microduino BLE Android-202KIT/zh”的版本间的差异

来自Microduino Wikipedia
跳转至: 导航搜索
材料清单
注意问题
 
(未显示3个用户的17个中间版本)
第6行: 第6行:
 
项目名称:Microduino BT与Android设备进行通讯
 
项目名称:Microduino BT与Android设备进行通讯
  
目的:Android手机发送字符给Microduino-Core和Microduino BT,并通过OLED显示字符数据。
+
目的:Android手机通过手机App发送字符串给Microduino-Core和Microduino BT,并通过串口监视器显示字符数据。
  
 
难度:初级
 
难度:初级
第27行: 第27行:
 
|-
 
|-
 
|[[Microduino-BT/zh]]||1||蓝牙通讯  
 
|[[Microduino-BT/zh]]||1||蓝牙通讯  
|-
 
|[[Microduino-Cube-S1/zh]]||1||连接OLED
 
|-
 
|[[Microduino-OLED/zh]]||1||显示
 
  
 
|}
 
|}
 
|-
 
|-
 
|
 
|
[[File:Android-202KIT-module1.jpg|600px|center|thumb|202KIT图片]]
+
[[File:Android-202KIT2-module.png|600px|center|thumb|202KIT图片]]
 
|-
 
|-
 
|
 
|
 
*软件设备
 
*软件设备
Arduino IDE(1.0版本以上)、下载4.0蓝牙Android助手:http://www.jnhuamao.cn/download.asp?page=2&ID=0;
+
Arduino IDE(1.0版本以上)
  
 
*其他设备及器件
 
*其他设备及器件
第46行: 第42行:
  
 
==文档==
 
==文档==
测试程序下载:
+
测试程序及App下载:[[File:BT—APP.zip]]
[https://github.com/Microduino/Microduino_Tutorials/tree/master/Microduino_KIT/kit_android_BT kit_android_BT]
+
 
 
|-
 
|-
 
|
 
|
第54行: 第50行:
 
|-
 
|-
 
|
 
|
步骤一:启动Arduino IED,打开Microduino提供的测试程序,板卡选择Microduino Core (Atmega328P@16M,5V)
+
步骤一:将Microduino-Core与Microduino-USBTTL两个模块叠在一起,将USB线插入USBTTL的插孔,另一端连接电脑USB插口,启动Arduino IED,打开之前下载的开发包的中Microduino提供的测试程序M_ble_Serial.ino,在工具(tools)->板卡(Board)中选择Microduino Core (Atmega328P@16M,5V),并在工具(tools)->串口(Serial)中选择对应的串口号。之后点击IDE左上角的√按钮对程序进行编译,编译结束后点击√右边的->按钮将程序烧录到板子中;
 
|-
 
|-
 
|
 
|
[[File:ble-Download.jpg|600px|center|thumb|Download]]
+
[[File:ble-Download2.png|600px|center|thumb|Download]]
下载成功OLED界面
+
 
[[File:BlE-OLED-success.jpg|600px|center|thumb|OLED]]
+
步骤二:程序下载完毕将所有模块叠加,并使用USB数据线把模块连到电脑,注意先断电再叠加。
步骤二:程序下载完毕将所有模块叠加叠加,注意先断电再叠加。
 
 
|-
 
|-
 
|
 
|
[[File:202KIT-android-system.jpg|600px|center|thumb|202KIT-OK]]
+
[[File:202KIT-android-system1.jpg|600px|center|thumb|202KIT-OK]]
步骤三:开始设置Android设备,启动Android设备的蓝牙功能;
 
  
步骤四:打开BLE蓝牙串口助手;
+
步骤三:开始设置Android设备,启动Android设备的蓝牙功能,将测试包中的.apk文件拷入手机中并安装,之后打开App,并在电脑IDE端打开串口监视器;
[[File:202KIT-ble-serial.jpg|600px|center|thumb|202KIT-OK]]
+
 
步骤五:点击搜索设备,可以发现到Microduino BT设备
+
步骤四:点击App右上方SCAN按钮,这是用来搜索周围蓝牙接入点的,点击SCAN后会显示周围的蓝牙设备。界面如下
[[File:202KIT-ble-serial2.jpg|600px|center|thumb|202KIT-OK]]
+
[[File:202KIT-android-system3.jpg|600px|center|thumb|App—蓝牙搜索]]
步骤六:点击搜索到的设备进行配对连接,手机上有提示连接进程
+
点击对应的蓝牙编号,进入如下界面:
|-
+
[[File:202KIT-android-system4.jpg|600px|center|thumb|App—蓝牙通信]]
|
+
等待2-3秒钟,待屏幕中央出现“ready”字样,说明手机已经与蓝牙建立了连接,点击屏幕中间“Sync RTC With Phone”按钮,同时观察按钮上方“RTC TIME”和串口监视器的变化
[[File:202KIT-ble-Connection.jpg|600px|center|thumb|Connection]]
+
[[File:202KIT-android-system6.jpg|600px|center|thumb|App—手机App]]
连接成功LED指示灯常亮。
+
[[File:202KIT-android-system5.jpg|600px|center|thumb|App—串口监视器]]
|-
+
 
|
+
可以看到手机RTC部分的内容有了变化,另一边串口监视器中也收到内容,验证了蓝牙的双向通信功能
[[File:android-BlE-LED.jpg|600px|center|thumb|LED]]
 
步骤七:可在文本输入框中输入任意文字,然后点击发送,就可以在OLED上看到发送的文字(由英文组成的字符)。
 
[[File:BlE-OLED.jpg|600px|center|thumb|OLED]]
 
手机发送“clean”可以将OLED的数据清除。
 
[[File:BlE-android-clean.jpg|600px|center|thumb|OLED]]
 
  
|-
+
==测试代码分析==
|
+
<source lang="cpp">
 +
#include <SoftwareSerial.h>
 +
// RX, TX ,使用默认蓝牙通信串口4,5
 +
SoftwareSerial mySerial(4, 5);
 +
#define my_Serial mySerial
 +
String msg = "";
 +
void setup()
 +
{
 +
    // 初始化串口通信波特率
 +
    my_Serial.begin(9600);
 +
    Serial.begin(9600);
 +
}
 +
void loop()
 +
{
 +
    //每收到一次信号,向通信另一端反馈一次
 +
    if (my_Serial.available() > 0)  //如果串口有数据输入
 +
    {
 +
        msg = my_Serial.readStringUntil('\n');  //获取换行符前所有的内容
 +
        Serial.println(msg);  //在串口监视器显示收到的msg中的字符串
 +
        my_Serial.println("bluetooth respond");  //向蓝牙通信的另一端发送数据
 +
    }
 +
}
 +
</source>
  
 
==结果==
 
==结果==
第93行: 第104行:
 
*若采用了改跳线的方法,可将Microduino BT4.0与Core的串口连接由TX-RX0、RX-TX1改成:
 
*若采用了改跳线的方法,可将Microduino BT4.0与Core的串口连接由TX-RX0、RX-TX1改成:
 
**TX-D2、RX-D3(相对Core+的Serial1)
 
**TX-D2、RX-D3(相对Core+的Serial1)
**TX-D9、RX-D10(可调用SoftwareSeria库来解决)
+
[[file:Microduino-BT-2Big1.jpg|800px|thumb|center|Microduino-BT]]
 
 
==视频==
 
http://v.youku.com/v_show/id_XNjk0MTMyMzc2.html
 
|}
 

2015年11月16日 (一) 03:49的最新版本

Language English

概述

项目名称:Microduino BT与Android设备进行通讯

目的:Android手机通过手机App发送字符串给Microduino-Core和Microduino BT,并通过串口监视器显示字符数据。

难度:初级

耗时:30分

制作者:Microduino Studio-YLB

材料清单

  • Microduino设备
模块 数量 功能
Microduino-Core/zh 1 核心板
Microduino-USBTTL/zh 1 下载程序
Microduino-BT/zh 1 蓝牙通讯
202KIT图片
  • 软件设备

Arduino IDE(1.0版本以上)

  • 其他设备及器件
    • 支持蓝牙4.0的Android设备,系统必须是4.3以上。
    • micro usb线。

文档

测试程序及App下载:文件:BT—APP.zip

调试

步骤一:将Microduino-Core与Microduino-USBTTL两个模块叠在一起,将USB线插入USBTTL的插孔,另一端连接电脑USB插口,启动Arduino IED,打开之前下载的开发包的中Microduino提供的测试程序M_ble_Serial.ino,在工具(tools)->板卡(Board)中选择Microduino Core (Atmega328P@16M,5V),并在工具(tools)->串口(Serial)中选择对应的串口号。之后点击IDE左上角的√按钮对程序进行编译,编译结束后点击√右边的->按钮将程序烧录到板子中;

Download

步骤二:程序下载完毕将所有模块叠加,并使用USB数据线把模块连到电脑,注意先断电再叠加。

202KIT-OK

步骤三:开始设置Android设备,启动Android设备的蓝牙功能,将测试包中的.apk文件拷入手机中并安装,之后打开App,并在电脑IDE端打开串口监视器;

步骤四:点击App右上方SCAN按钮,这是用来搜索周围蓝牙接入点的,点击SCAN后会显示周围的蓝牙设备。界面如下

App—蓝牙搜索

点击对应的蓝牙编号,进入如下界面:

App—蓝牙通信

等待2-3秒钟,待屏幕中央出现“ready”字样,说明手机已经与蓝牙建立了连接,点击屏幕中间“Sync RTC With Phone”按钮,同时观察按钮上方“RTC TIME”和串口监视器的变化

App—手机App
App—串口监视器

可以看到手机RTC部分的内容有了变化,另一边串口监视器中也收到内容,验证了蓝牙的双向通信功能

测试代码分析

#include <SoftwareSerial.h> 
// RX, TX ,使用默认蓝牙通信串口4,5
SoftwareSerial mySerial(4, 5); 
#define my_Serial mySerial 
String msg = ""; 
void setup() 
{ 
    // 初始化串口通信波特率
    my_Serial.begin(9600); 
    Serial.begin(9600); 
} 
void loop() 
{ 
    //每收到一次信号,向通信另一端反馈一次
    if (my_Serial.available() > 0)  //如果串口有数据输入
    { 
        msg = my_Serial.readStringUntil('\n');  //获取换行符前所有的内容
        Serial.println(msg);  //在串口监视器显示收到的msg中的字符串
        my_Serial.println("bluetooth respond");  //向蓝牙通信的另一端发送数据
    } 
}

结果

通过Microduino BT能够方便讲Microduino 核心与Android手机进行通信。

注意问题

  • 串口波特率必须为9600,不然接收字符串会乱码。
  • 若保持默认跳线(RX0、TX1),下载程序时请拔下Microduino BT4.0模块,待程序下载完毕后再断电叠加;
  • 若采用了改跳线的方法,可将Microduino BT4.0与Core的串口连接由TX-RX0、RX-TX1改成:
    • TX-D2、RX-D3(相对Core+的Serial1)
Microduino-BT