前言¶
SP31通过API(Application Programming Interface)向开发者提供使用SLP的相关接口,本文档详细介绍SLP的API和开发流程。
与本文档对应的产品版本如下。
本文档主要适用以下工程师:
技术支持工程
软件开发工程师
概述¶
SP31通过API(Application Programming Interface)面向开发者提供SLP功能的开发和应用接口。
错误码¶
SLP接口调用完成或SLP业务执行过程中遇到异常会上报错误码,用户可通过错误码排查问题,错误码分为以下三个级别:
INFO:表示接口执行成功;
WARNING:提示类错误;典型的出现场景是状态重复切换;该错误不影响正常功能,可忽略或者用于排查冗余的代码流程;
ERROR:严重错误,可能会导致业务启动失败,需要排查原因避免此类错误的出现。
表 1 SLP错误码
接口¶
通用¶
线程主函数¶
表 1 SLP线程主函数
设置UART缓冲区¶
表 1 设置UART缓冲区接口
上电¶
表 1 上电接口
下电¶
表 1 下电接口
设置本机属性¶
表 1 设置本机属性接口
负载收发¶
表 1 负载收发接口
注册命令完成结果回调¶
表 1 命令完成结果回调注册接口
注册上报结果回调函数¶
表 1 上报结果回调函数注册接口
启动测距¶
表 1 启动测距接口
|
ctsSegSymNum:一个segment段中的符号数量; sessionKeyIdx:会话密钥索引值,会话密钥模式是宽带共享密钥时有效,取值范围0~15; rangingFreq:测距频率,最高频率100Hz,遥控器场景取值:1~20Hz; validRoundNum:有效测距轮数,取值范围:0~255,其中0表示无限轮; firstAoxAntDis:第一测角帧天线间距 单位:nm; |
||||
停止测距¶
表 1 停止测距接口
暂停测距¶
表 1 暂停测距接口
继续测距¶
表 1 继续测距接口
睡眠¶
表 1 睡眠接口
产测¶
注册产测结果上报回调¶
表 1 产测结果上报回调注册接口
设置产测模式¶
表 1 产测模式设置接口
测距测角校准¶
表 1 测距测角校准接口
IMU检测¶
表 1 IMU检测接口
|
读写板级时延¶
表 1 读写本端时延校准值NV接口
表 2 读写对端时延校准值NV接口
读写测角校准参数¶
表 1 从NV中读写本端测角校准参数接口
表 2 从NV中读写对端测角校准参数接口
读写陀螺仪零偏值¶
表 1 从NV中读写陀螺仪零偏值接口
读写TX功率码字¶
表 1 从NV中读写TX功率码字值接口
读写三天线校准参数¶
表 1 从NV中读写三天线校准参数接口
维测¶
读取版本号¶
表 1 版本号读取接口
|
设置日志打印级别¶
表 1 日志打印级别设置接口
芯片温度读取¶
表 1 SLP温度读取接口
CIR上报功能¶
表 1 CIR上报功能接口
芯片 DIE ID 读取¶
表 1 芯片 DIE ID 读取接口
AT命令注册¶
表 1 AT命令注册接口
SLP支持的AT指令请详见《Sample 使用指南》中“AT命令”章节。
开发流程¶
以Air Mouse场景为例,仅涉及SLP接口的开发说明,具体编程实例可参考application/samples/products/air_mouse。
RCU侧:
调用SlpSetUartBuffer,设置UART缓冲区。
调用SlpRegisterCommandCallbacks,注册SLP命令回调函数。
调用SlpSetLocalAttCommand,设置本机特性。
调用SlpRecvPayload,注册SLP接收payload函数。
调用SlpRegisterSendPayloadCallback,注册SLP发送payload函数。
调用SlpRegisterReportCallbacks,注册结果上报回调。
调用SlpSetTransformParam,设置坐标系转换参数
SLE连接配对成功,调用SlpPowerOnCommand,加载SLP。
调用SlpStartRangingCommand,启动SLP测距。
在交互过程中,调用SlpRecvPayload,接收对端发来的payload。
如果想让SLP睡眠,调用SlpSleepCommand。如果需要唤醒,则再次调用SlpStartRangingCommand,启动SLP测距。
如果SLE断连,调用SlpPowerOffCommand,本端SLP下电,对端slp进入低功耗状态。
Dongle侧:
调用SlpSetUartBuffer,设置UART缓冲区。
调用SlpRegisterCommandCallbacks,注册SLP命令回调函数。
调用SlpSetLocalAttCommand,设置本机特性。
调用SlpRecvPayload,注册SLP接收payload函数。
调用SlpRegisterSendPayloadCallback,注册SLP发送payload函数。
调用SlpRegisterCommandCallbacks,注册命令回调函数。
调用SlpRegisterReportCallbacks,注册结果上报回调函数。
调用SlpSetInstParam,设置安装参数。
SLE连接配对成功,调用SlpPowerOnCommand,加载SLP。
SlpReportCursorCallback接口会持续上报光标结果。
SlpReportRangingCallback接口会持续上报测距测角值结果。
如果SLE断连,调用SlpPowerOffCommand,SLP下电。
以air mouse场景为例,对应的SLP工作时序图,如图1所示。
