2071|2

8

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

零基础开发蓝牙设备 [复制链接]

前言

现在几乎每个人的手机都具备蓝牙功能,所以如果你的硬件设备也具备蓝牙通信功能,那么便可以很容易和手机建立通信,从而具备IOT物联网属性。但我们也知道蓝牙Ble(目前已发展到5.2版本)协议极其复杂,并不是所有人都需要去详细了解它,我们更多的需求是能够使用它就足够了。所以这里我们可以用shineblink.com提供的core物联网核心板,基于core我们能够在短短几分钟内只用几行代码就可以定制出我们自己的蓝牙设备,并且基于core配套的《免开发App,我们甚至连手机端App开发的工作都省掉了。

 

一、实现功能

本篇章所实现的功能是和手机建立蓝牙连接后:(1Core每隔0.2秒向手机发送一包数据,(2)我们在手机调试App上自定义任意数据包发送给CoreCore收到后通过Print()函数打印出来。

手机调试App这里我们选择使用苹果IOS上知名的LightBlue,安卓手机下载安装BleTool或安卓版LightBlue也可以。

 

二、实现机制

Coreble低功耗蓝牙提供两个特性,一个是Write特性,一个是Notify特性。其中:

  • Write特性:可以看成是手机发送数据给Core的通道,手机通过蓝牙连接发送给Core的数据就是存放在Write特性中。
  • Notify特性:可以看成是Core发送数据给手机的通道,Core通过蓝牙发送给手机的数据就是存放在Notify上。但是需要注意,手机要想收到来自Core的数据,需要手机端主动使能这个Notify(在下面的演示中会提及)。

下面是对CoreBle所提供的service描述,如果您看不懂这段也没关系,只需按上面讲的理解即可

serviceUUID: 0x0001)描述: service包含两个特性(Characteristic): 一个用来发送数据,一个用来接收数据

  • Rx Characteristic (UUID: 0x0002)用来接收手机的数据 手机蓝牙可以通过ATT Write方式向Rx Characteristic发送数据
  • Tx Characteristic (UUID: 0x0003)用来向手机发送数据 如果手机蓝牙为Tx Characteristic使能了notification,那么设备就可以通过发送notification的方式向手机蓝牙发送数据

 

三、完整代码

 

--配置低功耗蓝牙以默认参数工作,设备名称为"MyBle002"
--该设备名称就是手机扫描蓝牙设备时列表中所呈现的名称。
LIB_NrfBleDefaultConfig("MyBle002")
--开始大循环
while(GC(1) == true)
do
      LIB_DelayMs(200)
      send_tab = {0,1,2,3,4,5,6,7,8,9}
      --将send_tab数组内的10个元素发给手机
      LIB_NrfBleSend(send_tab)
      --查询是否收到手机发来蓝牙数据,如果收到就print打印出来
      recv_flag, recv_tab = LIB_NrfBleRecv()
      if recv_flag == 1 then
            --打印接收到的数据
            for k,v in ipairs(recv_tab) do
                  print(k,v)
            end
      end
end

 

四、演示

1. 在苹果手机上打开LightBlue软件,并开始搜索附近的蓝牙设备,找到"MyBle002"后点击进入

2. 找到properties notify特性,点击进入

3. 点击Listen for notification,这样就可以收到到Core发来的数据了

4.可以看到每隔0.2秒就会收到一包数据

5.再退回到步骤2的界面,点击properties write,然后点击write new value

6.设置要发送给Core的数据为AA BB CC DD EE FF

7.最后在CoreTF卡里LOG.TXT文件可以看到刚刚我们通过手机手动发给CoreAA BB CC DD EE FF数据

 

 

 

重磅更新!

shineblink.com 已推出免开发App,开发者无需做任何安卓或IOS开发,即可以让自己的手机上拥有一款能够和Core开发
板通信的专业App,更多详情请参见如下地址:

http://shineblink.com/#/technology?timestamp=1606636115746

 

 

 

此帖出自单片机论坛

最新回复

可以,多少钱?   详情 回复 发表于 2020-12-2 22:36
点赞 关注(1)
 

回复
举报

7628

帖子

2

TA的资源

五彩晶圆(高级)

沙发
 

可以,多少钱?

此帖出自单片机论坛
 
个人签名

默认摸鱼,再摸鱼。2022、9、28

 

回复

8

帖子

0

TA的资源

一粒金砂(中级)

板凳
 

shineblink.com官网上有相应的资料

此帖出自单片机论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表