当前位置:首页 > 公众号精选 > 鲜枣课堂
[导读]实现目标自己编写基于Qt的Android软件,用于实现手机与TB-02-kit模块进行数据通讯;Android软件发送的数据,经TB-02-kit模块转发至串口助手中输出;串口助手发送的数据可以在Android软件中显示,进而实现BLE的数据双向通信。所需工具及环境TB-02-k...

实现目标

  • 自己编写基于Qt的Android软件,用于实现手机与TB-02-kit模块进行数据通讯;

  • Android软件发送的数据,经TB-02-kit模块转发至串口助手中输出;

  • 串口助手发送的数据可以在Android软件中显示,进而实现BLE的数据双向通信。

所需工具及环境

  • TB-02-kit模块
  • Qt Creator 4.10.1
  • Qt 5.13.1
  • XCOM V2.0 串口助手
  • Android 手机
  • 本人电脑 Windows 10 64bit [版本 10.0.19041.329]

前置知识

给大家介绍一款好用的蓝牙BT5.0透传模块
Windows下基于Qt开发Android应用
BLE中这些概念你都了解吗

本文源码

因为是第一次分享Qt代码,为了方便大家学习,代码中添加了大量注释,大家对照着代码学习效率高点。

后台回复关键字“Android-BLE”,获取本文涉及到的软件及Qt工程源码。

具体实现

1. 要使用Qt蓝牙模块, 项目的 .pro文件中要添加声明才可使用

2. 扫描设备

在构造函数中执行蓝牙设备扫描,即软件一启动就执行扫描。

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);

    //创建搜索服务:https://doc.qt.io/qt-5/qbluetoothdevicediscoveryagent.html
    discoveryAgent =new QBluetoothDeviceDiscoveryAgent(this);
    //设置BLE的搜索时间
    discoveryAgent->setLowEnergyDiscoveryTimeout(20000);
    connect(discoveryAgent,SIGNAL(deviceDiscovered(QBluetoothDeviceInfo)),this,SLOT(addBlueToothDevicesToList(QBluetoothDeviceInfo)));//找到设备之后添加到列表显示出来
    connect(discoveryAgent, SIGNAL(finished()), this, SLOT(scanFinished()));
    connect(discoveryAgent, SIGNAL(canceled()), this, SLOT(scanCanceled()));
    connect(this, SIGNAL(returnAddress(QBluetoothDeviceInfo)), this, SLOT(createCtl(QBluetoothDeviceInfo)));

    //开始进行设备搜索
    discoveryAgent->start(QBluetoothDeviceDiscoveryAgent::LowEnergyMethod);
}

3. 将扫描结果添加到QListWidget中

//deviceDiscovered signals 对应的槽函数
void Widget::addBlueToothDevicesToList(const QBluetoothDeviceInfo 
本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

通过对蓝牙协议框架进行整体了解,其包含BR/EDR((Basic Rate / Enhanced Data Rate))、AMP(Alternate MAC/PHYs)、LE(Low Energy)三种技术,下面我们将B...

关键字: BR EDR BLE

本篇主要讲了BLE的Link Layer,包括链路层定义的角色和状态,空中接口数据包的通信格式以及各个字段的含义,方便我们去分析LOG和定位问题。

关键字: BLE 链路层 数据包

随着2003年10月安迪鲁宾联合几位朋友创建了Android公司,后来影响众人的智能设备操作系统公司由此而生(2005年被Google收购)。现如今,世界上越来越多的智能终端包括手机、TV、SmartBox和IoT、汽车...

关键字: Android 内核开源

(全球TMT2022年9月7日讯)爱立信在与谷歌最近的一次合作中,与生态系统合作伙伴成功展示了爱立信网络基础设施可支持单台Android 13设备上的多个切片,同时满足企业(工作模式)和消费者应用。同时,该演示首次为运...

关键字: Android 爱立信 网络切片 带宽

北京2022年9月7日 /美通社/ -- 网络切片技术可以满足不同的业务需求,是为运营商和企业全方位实现5G价值的关键所在。为更好地发掘5G潜力、实现5G价值,爱立信近日携手谷歌成功展示了灵活性更高的网络切片技术,推动网...

关键字: Android 爱立信 网络切片 RS

42Gears客户可以继续使用MDM套件管理升级过的Android设备 印度班加罗尔, 2022年9月6日 /美通社/ -- 随着谷歌Android 13的最新发布,42G...

关键字: Android RS GE DM

摘要:借助Android智能移动平台,结合百度地图开源SDK,综合运用电子地图功能、定位功能、路径导航功能,设计了一款包含地图显示功能、实时定位功能、路径规划功能、景点搜索及展示功能的Android手机端智能化的移动自助...

关键字: Android 移动自助旅游系统 百度地图

谷歌在没有任何通知下为Pixel用户(Pixel 4、4a、5、5a和6系列等)送出惊喜,Android 13首个稳定版正式推送。

关键字: Android Android 13

据报道,在三星即将推出新款折叠手机之际,消息称谷歌也将加入折叠手机市场,由鸿海代工,也让鸿海的智能手机制造延伸至折叠手机领域。

关键字: 谷歌 Android Windows 折叠手机

(全球TMT2022年7月20日讯)移动连接和测量领域领先机构Branch收购了最受欢迎的Android启动程序Nova Launcher和快速增长的Android设备搜索引擎Sesame Universal Sear...

关键字: BRANCH Android NOVA 创始人

鲜枣课堂

295 篇文章

关注

发布文章

编辑精选

技术子站

关闭