BLE开发之LED的读写服务

内容参考青风电子教程视频。
关于LED灯,官方在ble_services中提供了一个ble_lbs文件。
步骤:

(1)加入服务配置文件

ble_lbs.c文件,同时加入路径。在主函数中添加对应的头文件.h文件。

(2)添加服务

然后在services_init()函数中,添加服务代码(可以去ble_lbs.c文件中找一下服务的名称,如何定义的)。具体定义变量时,是什么类型,可以去对应.c或.h文件找。
在这里插入图片描述
编写led_write_handle函数
在这里插入图片描述

(3)声明本次服务,服务观察函数实现

然后打开对应的ble_lbs.h文件,其中有个NRF_SDH_BLE_OBSERVER,将BLE_LBS_DEF(_name)添加到main函数里,加入声明。
在这里插入图片描述
在这里插入图片描述

(4)协议栈里配置UUID的数量

在协议栈初始化里函数nrf_sdh_ble_default_cfg_set,找到ble_cfg.common_cfg.vs_uuid_cfg.vs_uuid_count = NRF_SDH_BLE_VS_UUID_COUNT;修改NRF_SDH_BLE_VS_UUID_COUNT的值,这里增加1.

(5)实现使能该服务(nordic专门提供的服务)

然后在该sdk_config.h文件的配置中,在Services里面,勾选lbs的使能。

(6)RAM空间的配置

可以先编译下载程序,通过J-Link RTT Viewer(在配置文件中,将Info改为Debug)进行查看,然后对应修改。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(7)服务配置文件的编写(基于SDK17)

在ble_lbs_init 函数中
在这里插入图片描述
最后编译下载,可以通过主机(Master)(如手机)来控制从机(Slave)(如蓝牙开发板)上的LED灯的打开或关闭(手机上的操作软件:nRF Connect)。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值