我是靠谱客的博主 细心芹菜,最近开发中收集的这篇文章主要介绍ESP32-BLE学习1-建立简单的serverstart编译,下载运行数据收发,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

start

学习之前,我想尝试使用ESP32的demo建立一个简单的server与手机接进行最基本的数据通信。
这里有BLE的简单讲解BLE资料
因为BLE的连接是具有主从机特性的,就像SPI,USB一些请求只能由主机端发起,连接也需要主机端发起。所以手机要想连上ESP32,就得将ESP32设置为从机模式。
在这里插入图片描述
从资料上可以看到,从机端通过Notify通知主机,所以从机就是GATT Server
在进行ESP32 的demo学习之前,得大体看下ESP32的蓝牙组成,ESP32支持经典蓝牙和低功耗蓝牙4.2,具有两个协议栈bluedroidnimble后者只支持BLE,前者都支持。我们这里选择前者进行测试。
cd 进入bluedroidbleble_spp_server目录下。

编译,下载运行

编译下载这里就不累赘了。
运行ESP32,打开log,我们手机端可以下载个nRF Connect app,软件打开后在第一栏有个SSCANER该栏就会显示所有从机。有个ESP_SPP_SERVER的从机就是ESP32,点击CONNECT就可以与从机建立连接了。
ESP32开机前的log:
在这里插入图片描述
点击CONNECT之后的log:
在这里插入图片描述
可以看出有个EVT 14上报了,代码中看下这个EVT:
gatts_profile_event_handler函数中,该函数处理各种EVT上报:
在这里插入图片描述
如图:EVT 14就是连接成功上报的消息,至此一个简单的BLE连接建立完成。

数据收发

上面说的APP还可以进行数据的收发,我们连接成功ESP32之后,APP上就会出现如下图所示的页面:
在这里插入图片描述
这是从机的三个服务,前两个不用看(一般UUID为两位的都是些标准的服务),最下面的一个UUID 128位的就是自定义的服务,点击一下,就会下拉出该服务的所有特征:
在这里插入图片描述
下面会标注每个特征的UUID,属性等等。
使用向上的箭头就是WRITE,向下的就是READ,三个向下的箭头就是NOTIFY。
可以使用WRITE向ESP32发送数据了。


当完整的看完一本技术类书籍时,会发现比在网上瞎摸索实在是事半功倍。

最后

以上就是细心芹菜为你收集整理的ESP32-BLE学习1-建立简单的serverstart编译,下载运行数据收发的全部内容,希望文章能够帮你解决ESP32-BLE学习1-建立简单的serverstart编译,下载运行数据收发所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(44)

评论列表共有 0 条评论

立即
投稿
返回
顶部