市场与应用

标题: BT578V2/BT580蓝牙BLE通讯应用程序开发指南 [打印本页]

作者: admin    时间: 2020-7-11 01:19
标题: BT578V2/BT580蓝牙BLE通讯应用程序开发指南
BT580串口蓝牙适配器是蓝牙BLE协议的产品。BT578串口蓝牙适配器是SPP+BLE双模产品,也是支持蓝牙BLE通讯的。
蓝牙BLE通讯,本质上是对蓝牙特征值读、写和监听的过程。对蓝牙特征值的读写和监听,需要通过蓝牙BLE通讯应用程序来实现。

BT578提供给用户的接口是一个特征值,即:0000ffe1-0000-1000-8000-00805f9b34fb。这个特征值具有读(READ)、写(WRITE)和通知(NOTIFY)三种属性。

BT580提供给用户的接口也是一个特征值,即:0000fff6-0000-1000-8000-00805f9b34fb。这个特征值同样具有读(READ)、写(WRITE)和通知(NOTIFY)三种属性。

BT578/BT580从机通常是连接到串口设备上使用的。手机或电脑通常作为蓝牙主设备使用,负责搜索、连接BT578/BT580从机,并对这个特征值进行读写或监听。

主设备对这个特征值写数据,BT578/BT580适配器会将数据转发到BT578/BT580从机所连接的串口设备。

串口设备发数据到BT578/BT580适配器,BT578/BT580会将数据通过Notify通知的方式转发。主设备启动对这个特征值Notify属性的监听,就可以收到串口设备发送的数据。

BT578/BT580串口蓝牙适配器应用程序开发,主要工作包括:

蓝牙搜索:搜索周边的蓝牙设备,找到BT578/BT580从机。
蓝牙连接:与BT578/BT580从机建立蓝牙连接。
搜索服务:BT578/BT580有多种蓝牙服务,一种蓝牙服务会包含一个或多个蓝牙特征值,开发只需使用接口特征值。
蓝牙通讯:通过对BT578/BT580特征值的写入与监听,与BT578/BT580进行蓝牙通讯,进而实现与BT580所连接串口设备的串口通讯。
数据处理:发送数据,对串口设备进行设置或控制,或者对串口设备发来的数据进行分析处理。


下面提供一些Android安卓系统、苹果iOS系统、Windows10系统的蓝牙BLE通讯源代码,供用户作为应用开发的参考。






作者: admin    时间: 2020-7-11 02:08
Android安卓系统蓝牙BLE通讯源代码:

安卓系统应用程序ATBlue,是水木行开发的BT578/BT580专用测试程序。这个APP在安卓老款与新款手机上均可运行,支持动态申请模糊定位权限,使用新的安卓API类库,扫描速度快,蓝牙通讯稳定可靠。


ATBlue测试程序,请点击这个链接下载:http://www.irxon.com/download/ATBlue.rar
连接BT580适配器的方法请看:http://www.irxon.com/application ... hread&tid=82599
连接BT578适配器的方法请看:http://www.irxon.com/application ... hread&tid=82612


ATBlue的源代码,请点击这个链接:https://github.com/irxon/bt580-demo ,然后通过Download ZIP下载,如下图:



下载到的是bt580-demo-master.zip压缩文件,解压缩后,得到一个名为bt580-demo-master的项目文件夹。
这个项目是在Android Studio上开发的,在Android Studio启动界面,选择Import Project。如下图:




导入解压缩后的bt580-demo-master项目文件夹,如下图:




导入后,Android Studio编程开发界面如下图所示:
java目录下面共有三个java文件,与BT578/BT580用户二次开发密切相关的是MainActivity和Ble_Activity这两个java文件。

MainActivity的主要功能是搜索手机周围的蓝牙设备,目的是找到BT578/BT580从机。

Ble_Activity是蓝牙BT578/BT580应用程序开发的主要代码。它的主要功能包括:与BT578/BT580从机建立蓝牙连接、查找BT578/BT580串口透传的特征值、 在屏幕下方发送文本对BT578/BT580特征值进行写操作、开启特征值的Notify通知功能、监听Notify通知的数据并在屏幕上方显示。
通过对特征值的写和监听,实现与BT578/BT580的蓝牙BLE通讯,进而与BT578/BT580所连接的串口设备实现无线串口通讯。

BT578/BT580用户的个性化应用程序二次开发,只需要改变Ble_Activity文件里的数据处理方式即可。
本例程将收到的数据直接在手机屏幕上方显示,用户可根据自己串口设备的特点,修改一下界面,处理一下数据,然后再显示出来。
本例程将发送的文本直接写入特征值了,用户可根据自己串口设备的特点,修改一下界面,比如设置多个按钮发送特定数据,实现对串口设备的远程控制或设置。




点击Build,选择Build APK,即可生成可以在安卓手机上直接安装的apk文件。如下图:










作者: admin    时间: 2020-7-11 02:57
苹果iOS系统蓝牙BLE通讯参考源代码

我公司没有开发BT580专用的iOS应用程序,推荐苹果手机用户使用LightBlue或SensorTag这两个APP来调试BT580适配器。LightBlue是不开源的,iOS应用程序开发,可参考开源的SensorTag。

SensorTag是德州仪器公司一款DEMO低功耗蓝牙开发板的名称,板上集成了多种传感器,可以测量温度、湿度、气压、加速度、角速度等参数。SensorTag APP是配套SensorTag开发板而开发的,可以在苹果手机上显示板上各种传感器的实时读数。也可以用来搜索蓝牙设备,查找蓝牙服务和特征值,并对特征值进行读写或监听。

   


在App Store搜索SensorTag可以下载这个APP。


源代码下载地址:https://git.ti.com/cgit/sensorta ... 3e9c2f1fb826cad.zip



作者: admin    时间: 2020-7-11 03:07
Windows10系统蓝牙BLE通讯参考源代码:

微软开发的蓝牙BLE通讯软件Bluetooth LE Explorer,很好用!



软件可在Microsoft Store下载安装。在笔记本电脑上运行,需要笔记本电脑支持蓝牙BLE。在台式电脑上运行,需要在台式电脑上安装USB蓝牙BLE适配器。

使用方法:http://www.irxon.com/application ... =1&extra=#pid104599

源代码下载地址:https://github.com/Microsoft/BluetoothLEExplorer







欢迎光临 市场与应用 (http://www.irxon.com/application/) Powered by Discuz! X3.2