蓝牙模块手机APP通信|学习笔记

简介: 快速学习蓝牙模块手机APP通信

开发者学堂课程【嵌入式之RFID开发与应用2020版蓝牙模块手机APP通信】学习笔记与课程紧密联系,让用户快速学习知识

课程地址https://developer.aliyun.com/learning/course/665/detail/11170


蓝牙模块手机APP通信

 

手机APP介绍及使用

通过手机APP可以对外进行控制。如果通过手机控制,支持的服务是特征UUID:FFE1,特征UUID:FFE2。连接手机之后通过FFE1是透传,为普通数据收发。

1.下载软件

若要通过手机进行控制,需要下载能够支持FFE1,FFE2特征值的蓝牙调试助手

image.png

Android版可以下载“蓝牙调试器”,注意不是“调试助手”。“蓝牙调试器”不支持FFE2特征值服务,它的优点是在不用自己开发app情况下,它的所有控件可以编辑,编辑功能强大,滚动条,进度条,按钮,万向轮,遥感都可以自由添加布局。

image.png

由于软件是免费版,广告较多。现在通过搜索,搜索到三台edu设备,具体连接哪台设备,需要根据mac地址进行判断。

image.png

假设要连接此台设备,需要知道mac地址,通过查询mac地址为3F。

image.png

知道地址后需要寻找mac地址为3F的设备然后添加设备。

image.png

连接设备之后可以进入对话模式发送数据。如图利用手机给设备发送good,每点击一次就会发送一次。

image.png

一旦连接设备,就会提示connect。Disconnect表示断开。

 image.png

以上就是通过手机直接发送纯字符串。

如果下载了工具蓝牙调试助手,还可以收发特征值FFE2的内容。所以手机app发送的数据分为两种,一种是FA开头的普通数据,另一种是FB开头的功能数据,基本和蓝牙模块之间通信相同,开头的字符不一样但接收方是相同的。FA发普通数据,收到以AA开头FB发功能数据,收到以BB开头所以下载蓝牙调试助手软件可以支持特征值的收发数据。

一般情况是直接发送字符串,需要注意模块之间发送使用的是十六进制格式收发。

后续跟进控制类项目时需要使用app,所以再对app进行讲解。工具下载完成后,App设置里面有获取帮助,里面告知了如何使用,还有专业调试模式,专业调试模式可以编辑插件,如对插件按钮放大缩小,移动旋转按钮位置,点击按钮可以添加发送的字节内容。编辑数据之后点击按钮确定就可以进行发送

所以整个工具不需要自己开发,非常方便,因为有免费的app,且可以进行编辑。

2.使用蓝牙主要是使用组网的功能,也有不组网的模块。

下图为不组网,型号为js-040,随时可以买到。遥控小车很多就是使用此模块。

image.png

1组网需要满足的条件:

AT+NETID设置成相同的网络ID

AT+NAME设置相同的名称

AT+MADDR短地址设置不同值,通过该地址完成单播

如果是透传就是通过一个APP给另外一个APP(必须在一个网络中)直接在地址中发送即可。如果是手机透传,可以collect,就可以直接发送数据,也可以发送FFE2的特征值的特征服务,通过十六进制模式。在透传模式下,如果我们既想透传完成字符串发送,也想完成对某些特定功能的配置,就需要把pwrc设置成低电平。

有兴趣的同学可以自行购买体验组装,购买之后只需要将任意一个广角连接继电器就可以控制家电,非常方便。

image.png

相关文章
|
5天前
|
移动开发 Android开发 数据安全/隐私保护
移动应用与系统的技术演进:从开发到操作系统的全景解析随着智能手机和平板电脑的普及,移动应用(App)已成为人们日常生活中不可或缺的一部分。无论是社交、娱乐、购物还是办公,移动应用都扮演着重要的角色。而支撑这些应用运行的,正是功能强大且复杂的移动操作系统。本文将深入探讨移动应用的开发过程及其背后的操作系统机制,揭示这一领域的技术演进。
本文旨在提供关于移动应用与系统技术的全面概述,涵盖移动应用的开发生命周期、主要移动操作系统的特点以及它们之间的竞争关系。我们将探讨如何高效地开发移动应用,并分析iOS和Android两大主流操作系统的技术优势与局限。同时,本文还将讨论跨平台解决方案的兴起及其对移动开发领域的影响。通过这篇技术性文章,读者将获得对移动应用开发及操作系统深层理解的钥匙。
|
2月前
|
JavaScript IDE 开发工具
找不到模块“./App.vue”或其相应的类型声明。ts(2307)
这篇文章介绍了在Vue 3 + TypeScript + Vite开发环境中解决找不到`.vue`文件模块或其类型声明错误的两种方法:使用VSCode的TypeScript Vue Plugin (Volar)插件或手动在`env.d.ts`文件中声明`*.vue`模块类型。
126 0
找不到模块“./App.vue”或其相应的类型声明。ts(2307)
|
2月前
|
Go 开发者
【应用服务 App Service】App Service发生错误请求时,如何查看IIS Freb日志,从中得知错误所发生的模块,请求中所携带的Header信息
【应用服务 App Service】App Service发生错误请求时,如何查看IIS Freb日志,从中得知错误所发生的模块,请求中所携带的Header信息
|
2月前
|
网络协议 程序员 5G
IM开发者的零基础通信技术入门(十三):为什么手机信号差?一文即懂!
本系列文章尽量使用最浅显易懂的文字、图片来组织内容,力求通信技术零基础的人群也能看懂。但个人建议,至少稍微了解过网络通信方面的知识后再看,会更有收获。如果您大学学习过《计算机网络》这门课,那么一定不要错过本系列文章。
40 0
|
2月前
|
关系型数据库 Linux PostgreSQL
【Azure 应用服务】Azure Function App Linux环境下的Python Function,安装 psycopg2 模块错误
【Azure 应用服务】Azure Function App Linux环境下的Python Function,安装 psycopg2 模块错误
|
2月前
【Azure Function】Function App和Powershell 集成问题, 如何安装PowerShell的依赖模块
【Azure Function】Function App和Powershell 集成问题, 如何安装PowerShell的依赖模块
|
3月前
|
存储 移动开发 Android开发
使用kotlin Jetpack Compose框架开发安卓app, webview中h5如何访问手机存储上传文件
在Kotlin和Jetpack Compose中,集成WebView以支持HTML5页面访问手机存储及上传音频文件涉及关键步骤:1) 添加`READ_EXTERNAL_STORAGE`和`WRITE_EXTERNAL_STORAGE`权限,考虑Android 11的分区存储;2) 配置WebView允许JavaScript和文件访问,启用`javaScriptEnabled`、`allowFileAccess`等设置;3) HTML5页面使用`<input type="file">`让用户选择文件,利用File API;
|
3月前
|
JavaScript Java 测试技术
基于SpringBoot+Vue+uniapp的多功能智能手机阅读APP的详细设计和实现(源码+lw+部署文档+讲解等)
基于SpringBoot+Vue+uniapp的多功能智能手机阅读APP的详细设计和实现(源码+lw+部署文档+讲解等)
|
3月前
|
小程序 安全 数据挖掘
陪玩语聊APP小程序定制开发模块功能
随着电竞行业的规范化,游戏陪玩软件兴起,提供专业陪玩服务。核心功能包括:多样化注册登录、用户资料展示、智能匹配筛选陪玩、语音互动(多人/私聊)、订单交易管理、陪玩入驻审核、数据分析、客服系统及社交功能。旨在融合游戏、语音聊天与社交,构建综合娱乐平台。
|
2月前
|
Java Android开发 UED
安卓scheme_url调端:如果手机上多个app都注册了 http或者https 的 intent。 调端的时候,调起哪个app呢?
当多个Android应用注册了相同的URL Scheme(如http或https)时,系统会在尝试打开这类链接时展示一个选择对话框,让用户挑选偏好应用。若用户选择“始终”使用某个应用,则后续相同链接将直接由该应用处理,无需再次选择。本文以App A与App B为例,展示了如何在`AndroidManifest.xml`中配置对http与https的支持,并提供了从其他应用发起调用的示例代码。此外,还讨论了如何在系统设置中管理这些默认应用选择,以及建议开发者为避免冲突应注册更独特的Scheme。
下一篇
无影云桌面