星闪SLE客户端开发

星闪SLE客户端开发

星闪SLE客户端开发

本文主要简要概述星闪SLE客户端开发流程,由于目前开源出来手册不多,所以主要的流程熟悉还是以阅读代码为主,个人学习建议:将星闪客户端的代码整体抄一遍,不会的可以类比蓝牙向AI提问,这也能够更加加深理解

笔者在gitee仓库开源了一整套关于WS63的外设以及星闪开发应用,欢迎大家访问:星闪学习

HiSpark官方仓库:https://gitee.com/HiSpark/fbb_ws63

整体流程

  1. 调用enable_sle,打开SLE开关
  2. 调用sle_announce_seek_register_callbacks,注册设备公开和设备发现回调函数
  3. 调用sle_get_local_addr,设置本地设备地址
  4. 调用sle_get_local_name,设置本地设备名称
  5. 调用sle_set_seek_param,设置设备发现参数
  6. 调用sle_start_seek,启动设备发现,并在回调函数中获取正在进行设备公开的设备信息

SLE配置流程:注册ssap,seek->connect->pair

在注册设备公开和设备发现的回调函数中参数

设置这几个变量:

当SLE使能后就会调用这个回调函数sle_enable_cb,这时候就需要在这个函数中开启扫描

扫描配置参数:sle_seek_param_t

ssapc_callbacks_t说明

在蓝牙低功耗(BLE)协议或类似的通信框架中,notification_cb(通知回调)和indication_cb(指示回调)是两种不同的数据传输机制,核心区别在于数据确认机制和可靠性。以下是它们的详细区别和应用场景:

数据确认机制

特性 通知(Notification) 指示(Indication)
确认要求 无需客户端确认 必须由客户端发送确认(ACK)
可靠性 可能丢包(无重传机制) 数据可靠传输(若未收到ACK,服务器会重传)
延迟 低延迟(无需等待ACK) 较高延迟(需等待ACK响应)

注意

在客户端配对完成后需要使用这个函数去获取服务端设置的info

源码

 

上一篇
下一篇