跳转至

slp

头文件清单

#include "include/middleware/services/radar/radar_service_slp.h"

接口清单

接口名称 功能简述
uapi_radar_set_hardware_para 设置雷达硬件参数
uapi_radar_set_alg_para 设置雷达算法参数
uapi_radar_register_result_cb 注册雷达检测结果回调函数
uapi_radar_register_raw_data_cb 注册雷达原始数据回调函数
uapi_radar_get_result 获取雷达检测结果
uapi_radar_register_set_power_status_cb 注册芯片上下电状态回调函数
uapi_radar_register_report_errcode_cb 注册雷达错误码上报回调函数
uapi_radar_set_status 设置雷达启停状态
uapi_radar_set_power_status 控制芯片上下电
uapi_radar_get_status 获取雷达状态

Functions

uapi_radar_set_hardware_para

errcode_radar_client_t uapi_radar_set_hardware_para(radar_hardware_para_t *para)

头文件清单

#include "include/middleware/services/radar/radar_service_slp.h"

功能说明

  • 设置雷达硬件参数,包括射频参数、帧参数、原始数据上报配置参数、波形参数及厂商信息
  • 调用前需确保芯片已上电,否则参数配置不生效
  • 重复调用将覆盖上次配置的硬件参数

前置条件

  • 芯片已通过 uapi_radar_set_power_status(CHIP_STATUS_POWERON) 上电完成
  • 雷达处于未启动状态(RADAR_STATUS_STOP)

入参

名称 参数类型 详细说明 约束取值范围
para radar_hardware_para_t * 雷达硬件参数指针 非NULL,指向已初始化的参数结构体

返回值

  • 返回类型:errcode_radar_client_t
返回值 文字含义 触发场景
ERRCODE_RC_SUCCESS(0) 执行成功 参数设置成功
Other 其他错误码,参考errcode_radar_client_t 参数校验失败或内部异常

Kconfig配置

配置项 宏类型 说明 默认值
CONFIG_RADAR_PLT_SLP 功能宏 支持SLP雷达接口功能 n

参考案例

  • application/samples/radar/slp_sample/radar_slp_sample.c

uapi_radar_set_alg_para

errcode_radar_client_t uapi_radar_set_alg_para(radar_alg_para_t *para)

头文件清单

#include "include/middleware/services/radar/radar_service_slp.h"

功能说明

  • 设置雷达算法参数,包括基础参数(上报类型、灵敏度、距离检测边界、退出时延、端子线朝向、静目标创建距离门限)和AI补偿参数
  • 调用前需确保芯片已上电,否则参数配置不生效
  • 重复调用将覆盖上次配置的算法参数

前置条件

  • 芯片已通过 uapi_radar_set_power_status(CHIP_STATUS_POWERON) 上电完成
  • 雷达处于未启动状态(RADAR_STATUS_STOP)

入参

名称 参数类型 详细说明 约束取值范围
para radar_alg_para_t * 雷达算法参数指针 非NULL,指向已初始化的参数结构体

返回值

  • 返回类型:errcode_radar_client_t
返回值 文字含义 触发场景
ERRCODE_RC_SUCCESS(0) 执行成功 参数设置成功
Other 其他错误码,参考errcode_radar_client_t 参数校验失败或内部异常

Kconfig配置

配置项 宏类型 说明 默认值
CONFIG_RADAR_PLT_SLP 功能宏 支持SLP雷达接口功能 n

参考案例

  • application/samples/radar/slp_sample/radar_slp_sample.c

uapi_radar_register_result_cb

errcode_radar_client_t uapi_radar_register_result_cb(radar_result_cb_t cb)

头文件清单

#include "include/middleware/services/radar/radar_service_slp.h"

功能说明

  • 注册雷达检测结果回调函数,当雷达检测完成时触发回调返回检测结果
  • 回调函数内不能阻塞或长时间等待,不能使用较大栈空间
  • 重复注册将覆盖上次注册的回调函数

前置条件

  • 回调函数指针非NULL

入参

名称 参数类型 详细说明 约束取值范围
cb radar_result_cb_t 雷达检测结果回调函数 非NULL函数指针

返回值

  • 返回类型:errcode_radar_client_t
返回值 文字含义 触发场景
ERRCODE_RC_SUCCESS(0) 执行成功 回调注册成功
Other 其他错误码,参考errcode_radar_client_t 回调注册异常

Kconfig配置

配置项 宏类型 说明 默认值
CONFIG_RADAR_PLT_SLP 功能宏 支持SLP雷达接口功能 n

参考案例

  • application/samples/radar/slp_sample/radar_slp_sample.c

uapi_radar_register_raw_data_cb

errcode_radar_client_t uapi_radar_register_raw_data_cb(radar_raw_data_cb_t cb)

头文件清单

#include "include/middleware/services/radar/radar_service_slp.h"

功能说明

  • 注册雷达原始数据回调函数,获取雷达采集的原始数据
  • 回调函数内不能阻塞或长时间等待,不能使用较大栈空间
  • data数据与结构体内存不连续,不能直接memcpy整个结构体

前置条件

  • 回调函数指针非NULL

入参

名称 参数类型 详细说明 约束取值范围
cb radar_raw_data_cb_t 雷达原始数据回调函数 非NULL函数指针

返回值

  • 返回类型:errcode_radar_client_t
返回值 文字含义 触发场景
ERRCODE_RC_SUCCESS(0) 执行成功 回调注册成功
Other 其他错误码,参考errcode_radar_client_t 回调注册异常

Kconfig配置

配置项 宏类型 说明 默认值
CONFIG_RADAR_PLT_SLP 功能宏 支持SLP雷达接口功能 n

uapi_radar_get_result

errcode_radar_client_t uapi_radar_get_result(radar_result_t *result)

头文件清单

#include "include/middleware/services/radar/radar_service_slp.h"

功能说明

  • 获取雷达检测结果,包含有效目标个数及各目标的距离、角度、速度信息
  • 主动查询接口,可在任意时刻调用获取最近一次检测结果
  • 雷达未启动时调用返回无效数据

前置条件

  • 雷达已通过 uapi_radar_set_status(RADAR_STATUS_START) 启动

入参

名称 参数类型 详细说明 约束取值范围
result radar_result_t * 雷达检测结果输出指针 非NULL,指向已分配内存的结构体

出参

名称 数据类型 输出说明
result radar_result_t * 雷达检测结果,包含有效目标个数及目标信息数组

返回值

  • 返回类型:errcode_radar_client_t
返回值 文字含义 触发场景
ERRCODE_RC_SUCCESS(0) 执行成功 获取结果成功
Other 其他错误码,参考errcode_radar_client_t 获取结果失败

Kconfig配置

配置项 宏类型 说明 默认值
CONFIG_RADAR_PLT_SLP 功能宏 支持SLP雷达接口功能 n

参考案例

  • application/samples/radar/slp_sample/radar_slp_sample.c

uapi_radar_register_set_power_status_cb

errcode_radar_client_t uapi_radar_register_set_power_status_cb(radar_set_power_status_cb_t cb)

头文件清单

#include "include/middleware/services/radar/radar_service_slp.h"

功能说明

  • 注册芯片上下电状态回调函数,当芯片上下电流程完成时触发回调
  • 回调函数运行于radar client线程,不能阻塞或长时间等待,不能使用较大栈空间
  • 重复注册将覆盖上次注册的回调函数

前置条件

  • 回调函数指针非NULL

入参

名称 参数类型 详细说明 约束取值范围
cb radar_set_power_status_cb_t 芯片上下电状态回调函数 非NULL函数指针

返回值

  • 返回类型:errcode_radar_client_t
返回值 文字含义 触发场景
ERRCODE_RC_SUCCESS(0) 执行成功 回调注册成功
Other 其他错误码,参考errcode_radar_client_t 回调注册异常

Kconfig配置

配置项 宏类型 说明 默认值
CONFIG_RADAR_PLT_SLP 功能宏 支持SLP雷达接口功能 n

参考案例

  • application/samples/radar/slp_sample/radar_slp_sample.c

uapi_radar_register_report_errcode_cb

errcode_radar_client_t uapi_radar_register_report_errcode_cb(radar_report_errcode_cb_t cb)

头文件清单

#include "include/middleware/services/radar/radar_service_slp.h"

功能说明

  • 注册雷达错误码上报回调函数,当雷达运行过程中发生错误时触发回调
  • 回调函数内不能阻塞或长时间等待,不能使用较大栈空间
  • 重复注册将覆盖上次注册的回调函数

前置条件

  • 回调函数指针非NULL

入参

名称 参数类型 详细说明 约束取值范围
cb radar_report_errcode_cb_t 雷达错误码上报回调函数 非NULL函数指针

返回值

  • 返回类型:errcode_radar_client_t
返回值 文字含义 触发场景
ERRCODE_RC_SUCCESS(0) 执行成功 回调注册成功
Other 其他错误码,参考errcode_radar_client_t 回调注册异常

Kconfig配置

配置项 宏类型 说明 默认值
CONFIG_RADAR_PLT_SLP 功能宏 支持SLP雷达接口功能 n

参考案例

  • application/samples/radar/slp_sample/radar_slp_sample.c

uapi_radar_set_status

errcode_radar_client_t uapi_radar_set_status(uint8_t status)

头文件清单

#include "include/middleware/services/radar/radar_service_slp.h"

功能说明

  • 设置雷达启停状态,启动或停止雷达检测功能
  • 启动前需完成芯片上电和参数配置
  • 停止雷达时先调用本接口停止,再下电芯片

前置条件

  • 芯片已通过 uapi_radar_set_power_status(CHIP_STATUS_POWERON) 上电完成
  • 启动前需完成硬件参数和算法参数配置

入参

名称 参数类型 详细说明 约束取值范围
status uint8_t 雷达状态 radar_set_status_t: RADAR_STATUS_STOP(0), RADAR_STATUS_START(1)

返回值

  • 返回类型:errcode_radar_client_t
返回值 文字含义 触发场景
ERRCODE_RC_SUCCESS(0) 执行成功 状态设置成功
ERRCODE_RC_RADAR_ENABLED(0x8000A105) 雷达已经使能 重复启动雷达
ERRCODE_RC_RADAR_DISABLED(0x8000A106) 雷达已经关闭 重复停止雷达
Other 其他错误码,参考errcode_radar_client_t 启动参数异常或内部异常

Kconfig配置

配置项 宏类型 说明 默认值
CONFIG_RADAR_PLT_SLP 功能宏 支持SLP雷达接口功能 n

参考案例

  • application/samples/radar/slp_sample/radar_slp_sample.c

uapi_radar_set_power_status

errcode_radar_client_t uapi_radar_set_power_status(uint8_t status)

头文件清单

#include "include/middleware/services/radar/radar_service_slp.h"

功能说明

  • 控制雷达芯片上下电,上电后需等待约1.5s完成版本加载
  • 上电后需先配置参数再启动雷达
  • 下电前需先停止雷达

前置条件

  • 下电前需先通过 uapi_radar_set_status(RADAR_STATUS_STOP) 停止雷达

入参

名称 参数类型 详细说明 约束取值范围
status uint8_t 芯片上下电状态 radar_set_power_status_t: CHIP_STATUS_POWEROFF(0), CHIP_STATUS_POWERON(1)

返回值

  • 返回类型:errcode_radar_client_t
返回值 文字含义 触发场景
ERRCODE_RC_SUCCESS(0) 执行成功 上下电操作成功
ERRCODE_RC_POWERED_ON(0x8000A103) 已经上电 重复上电
ERRCODE_RC_POWERED_OFF(0x8000A104) 已经下电 重复下电
Other 其他错误码,参考errcode_radar_client_t 上电加载失败或内部异常

Kconfig配置

配置项 宏类型 说明 默认值
CONFIG_RADAR_PLT_SLP 功能宏 支持SLP雷达接口功能 n

参考案例

  • application/samples/radar/slp_sample/radar_slp_sample.c

uapi_radar_get_status

errcode_radar_client_t uapi_radar_get_status(uint8_t *status)

头文件清单

#include "include/middleware/services/radar/radar_service_slp.h"

功能说明

  • 获取雷达当前使能状态
  • 主动查询接口,可在任意时刻调用
  • 雷达未初始化时调用返回无效状态

前置条件

  • status指针非NULL,指向已分配内存的空间

入参

名称 参数类型 详细说明 约束取值范围
status uint8_t * 雷达状态输出指针 非NULL

出参

名称 数据类型 输出说明
status uint8_t * 雷达状态,参考radar_get_status_t: RADAR_STATUS_RADAR_ON(0), RADAR_STATUS_RADAR_OFF(1)

返回值

  • 返回类型:errcode_radar_client_t
返回值 文字含义 触发场景
ERRCODE_RC_SUCCESS(0) 执行成功 获取状态成功
Other 其他错误码,参考errcode_radar_client_t 获取状态失败

Kconfig配置

配置项 宏类型 说明 默认值
CONFIG_RADAR_PLT_SLP 功能宏 支持SLP雷达接口功能 n

Type definitions

radar_result_cb_t

typedef void (*radar_result_cb_t)(const radar_result_t *result);

使用说明:用于 uapi_radar_register_result_cb 入参,雷达检测完成时回调

radar_set_power_status_cb_t

typedef void (*radar_set_power_status_cb_t)(uint8_t status, errcode_radar_client_t err_code);

使用说明:用于 uapi_radar_register_set_power_status_cb 入参,芯片上下电流程完成时回调

radar_report_errcode_cb_t

typedef void (*radar_report_errcode_cb_t)(errcode_radar_client_t err_code);

使用说明:用于 uapi_radar_register_report_errcode_cb 入参,雷达运行错误时回调

radar_raw_data_cb_t

typedef void (*radar_raw_data_cb_t)(radar_raw_data_msg_t *dataMsg);

使用说明:用于 uapi_radar_register_raw_data_cb 入参,获取雷达原始数据时回调

Associations

radar_rf_sw_bit

typedef union {
    struct {
        uint8_t ctrl0 : 1;   /*!< 开启或关闭天线控制管脚 0 的对应功能,0:关闭, 1:开启 */
        uint8_t ctrl1 : 1;   /*!< 开启或关闭天线控制管脚 1 的对应功能,0:关闭, 1:开启 */
        uint8_t ctrl2 : 1;   /*!< 开启或关闭天线控制管脚 2 的对应功能,0:关闭, 1:开启 */
        uint8_t ctrl3 : 1;   /*!< 开启或关闭天线控制管脚 3 的对应功能,0:关闭, 1:开启 */
        uint8_t ctrl4 : 1;   /*!< 开启或关闭天线控制管脚 4 的对应功能,0:关闭, 1:开启 */
        uint8_t ctrl5 : 1;   /*!< 开启或关闭天线控制管脚 5 的对应功能,0:关闭, 1:开启 */
        uint8_t reserve : 2; /*!< 保留比特位 */
    } bits;                  /*!< 位域结构体 */
    uint8_t u8;              /*!< 8位无符号整数 */
} radar_rf_sw_bit;
成员名称 类型 描述 接口使用逻辑
bits struct 位域结构体,包含各管脚控制位 radar_rf_para_t.ant_sw_ctrl_en 成员,通过 uapi_radar_set_hardware_para 入参
u8 uint8_t 8位无符号整数整体访问 radar_rf_para_t.ant_sw_ctrl_en 成员,通过 uapi_radar_set_hardware_para 入参

Enumerations

radar_set_power_status_t

typedef enum {
    CHIP_STATUS_POWEROFF = 0, /*!< 芯片下电 */
    CHIP_STATUS_POWERON,      /*!< 芯片上电 */
} radar_set_power_status_t;
枚举成员 取值 描述
CHIP_STATUS_POWEROFF 0 芯片下电
CHIP_STATUS_POWERON 1 芯片上电

radar_set_status_t

typedef enum {
    RADAR_STATUS_STOP = 0, /*!< 雷达状态配置停止 */
    RADAR_STATUS_START,    /*!< 雷达状态配置启动 */
} radar_set_status_t;
枚举成员 取值 描述
RADAR_STATUS_STOP 0 雷达停止
RADAR_STATUS_START 1 雷达启动

radar_get_status_t

typedef enum {
    RADAR_STATUS_RADAR_ON,     /*!< 雷达使能状态 */
    RADAR_STATUS_RADAR_OFF     /*!< 雷达关闭状态 */
} radar_get_status_t;
枚举成员 取值 描述
RADAR_STATUS_RADAR_ON 0 雷达使能状态
RADAR_STATUS_RADAR_OFF 1 雷达关闭状态

radar_frame_mode_t

typedef enum {
    RADAR_FRAME_MODE_RANGING,               /*!< SLP测距共存帧模式 */
    RADAR_FRAME_MODE_DEFAULT,                /*!< 单雷达帧模式 */
    RADAR_FRAME_MODE_VENDOR,                 /*!< 单雷达模式:厂商帧模式 */
} radar_frame_mode_t;
枚举成员 取值 描述
RADAR_FRAME_MODE_RANGING 0 SLP测距共存帧模式
RADAR_FRAME_MODE_DEFAULT 1 单雷达帧模式
RADAR_FRAME_MODE_VENDOR 2 单雷达模式:厂商帧模式

errcode_radar_client_t

typedef enum {
    ERRCODE_RC_SUCCESS = 0,                                /*!< 执行成功错误码 */
    ERRCODE_RC_MALLOC_FAILED = ERRCODE_RADAR_CLIENT_BASE,  /*!< 申请动态内存失败错误码 */
    ERRCODE_RC_QUEUE_WRITE_FAILED,                         /*!< 消息队列写入失败错误码 */
    ERRCODE_RC_POWER_ON_FAILED,                            /*!< 上电加载失败错误码 */
    ERRCODE_RC_POWERED_ON,                                 /*!< 已经上电加载错误码 */
    ERRCODE_RC_POWERED_OFF,                                /*!< 已经下电错误码 */
    ERRCODE_RC_RADAR_ENABLED,                              /*!< 雷达已经使能错误码 */
    ERRCODE_RC_RADAR_DISABLED,                             /*!< 雷达已经关闭错误码 */
    ERRCODE_RC_PTR_NULL,                                   /*!< 雷达指针为空 */
    ERRCODE_RC_PARA_INVALID,                               /*!< 雷达参数不合规 */
    ERRCODE_RC_STATUS_ERROR = ERRCODE_RADAR_CLIENT_UAPI_BASE, /*!< 启动参数异常 */
    ERRCODE_RC_CALL_BACK,                                  /*!< 回调注册异常 */
    ERRCODE_RC_CHANNEL_IDX,                                /*!< 信道索引 */
    ERRCODE_RC_GPIO_PINMUX,                                /*!< 开关GPIO PINMUX配置 */
    ERRCODE_RC_ANT_CHANNEL_NUM,                            /*!< 天线对有效值可控 */
    ERRCODE_RC_ANT_CODE,                                   /*!< 天线码字可配 */
    ERRCODE_RC_TX_POWER,                                   /*!< 发射功率 */
    ERRCODE_RC_AGC_LNA,                                    /*!< AGC增益配置LNA */
    ERRCODE_RC_AGC_VGA,                                    /*!< AGC增益配置VGA */
    ERRCODE_RC_ANT_SW_CTRL,                                /*!< 射频开关控制管脚 */
    ERRCODE_RC_SUBFRAME_PERIOD,                            /*!< 子帧间隔 */
    ERRCODE_RC_ANT_SWITCH_INTERVAL,                        /*!< 雷达天线对切换间隔 */
    ERRCODE_RC_START_BIN,                                  /*!< 雷达原始数据参数:起始bin索引 */
    ERRCODE_RC_END_BIN,                                    /*!< 雷达原始数据参数:终止bin索引 */
    ERRCODE_RC_TX_WAVE_SPREAD_FACTOR,                      /*!< 雷达波形参数:波形序列扩频因子 */
    ERRCODE_RC_TX_WAVE_ACC_RSHIFT_BIT,                     /*!< 雷达波形参数:累加位宽保护右移位数 */
    ERRCODE_RC_TX_WAVE_ACC_NUM,                            /*!< 雷达波形参数:累加次数 */
    ERRCODE_RC_TX_WAVE_CORR_DIV,                           /*!< 雷达波形参数:相关后除数因子 */
    ERRCODE_RC_TX_WAVE_TX_WAVE_LEN,                        /*!< 雷达波形参数:发射波形长度 */
    ERRCODE_RC_TX_WAVE_TX_WAVE_BITS,                       /*!< 雷达波形参数:波形扩频前的三元码序列 */
    ERRCODE_RC_RADAR_VERSION_NOT_INIT,                     /*!< 雷达版本未初始化 */
    ERRCODE_RC_START_UP = ERRCODE_RADAR_CLIENT_SW_BASE,    /*!< 启动异常 */
    ERRCODE_RC_CLOSE,                                      /*!< 关闭异常 */
    ERRCODE_RC_FRAME_BUFFER_FULL,                          /*!< 上报数据缓冲满,bufferfull,丢帧 */
    ERRCODE_RC_RAINGING_DURATION,                          /*!< 共存指向间隔异常 */
    ERRCODE_RC_TX_AHEAD_READ_ADC,                          /*!< 雷达TX发送在读取ADC数据前 */
    ERRCODE_RC_AGC_CALI_FAILED,                            /*!< AGC校准异常 */
    ERRCODE_RC_PC_PEAK_OVERFLOWED,                         /*!< 雷达脉压峰值溢出 */
    ERRCODE_RC_EEPROM_READ_FAILED,                         /*!< 雷达从eeprom中读取校准结果时发生错误 */
    ERRCODE_RC_IMAGE_CHECK_FAILED,                         /*!< 雷达固件镜像校验错误 */
    ERRCODE_RC_MAX = ERRCODE_RADAR_CLIENT_END,             /*!< RC错误码最大值 */
} errcode_radar_client_t;
枚举成员 取值 描述
ERRCODE_RC_SUCCESS 0 执行成功
ERRCODE_RC_MALLOC_FAILED 0x8000A100 申请动态内存失败
ERRCODE_RC_QUEUE_WRITE_FAILED 0x8000A101 消息队列写入失败
ERRCODE_RC_POWER_ON_FAILED 0x8000A102 上电加载失败
ERRCODE_RC_POWERED_ON 0x8000A103 已经上电
ERRCODE_RC_POWERED_OFF 0x8000A104 已经下电
ERRCODE_RC_RADAR_ENABLED 0x8000A105 雷达已经使能
ERRCODE_RC_RADAR_DISABLED 0x8000A106 雷达已经关闭
ERRCODE_RC_PTR_NULL 0x8000A107 指针为空
ERRCODE_RC_PARA_INVALID 0x8000A108 参数不合规
ERRCODE_RC_STATUS_ERROR 0x8000A11E 启动参数异常
ERRCODE_RC_CALL_BACK 0x8000A11F 回调注册异常
ERRCODE_RC_CHANNEL_IDX 0x8000A120 信道索引
ERRCODE_RC_GPIO_PINMUX 0x8000A121 开关GPIO PINMUX配置
ERRCODE_RC_ANT_CHANNEL_NUM 0x8000A122 天线对有效值可控
ERRCODE_RC_ANT_CODE 0x8000A123 天线码字可配
ERRCODE_RC_TX_POWER 0x8000A124 发射功率
ERRCODE_RC_AGC_LNA 0x8000A125 AGC增益配置LNA
ERRCODE_RC_AGC_VGA 0x8000A126 AGC增益配置VGA
ERRCODE_RC_ANT_SW_CTRL 0x8000A127 射频开关控制管脚
ERRCODE_RC_SUBFRAME_PERIOD 0x8000A128 子帧间隔
ERRCODE_RC_ANT_SWITCH_INTERVAL 0x8000A129 雷达天线对切换间隔
ERRCODE_RC_START_BIN 0x8000A12A 起始bin索引
ERRCODE_RC_END_BIN 0x8000A12B 终止bin索引
ERRCODE_RC_TX_WAVE_SPREAD_FACTOR 0x8000A12C 波形序列扩频因子
ERRCODE_RC_TX_WAVE_ACC_RSHIFT_BIT 0x8000A12D 累加位宽保护右移位数
ERRCODE_RC_TX_WAVE_ACC_NUM 0x8000A12E 累加次数
ERRCODE_RC_TX_WAVE_CORR_DIV 0x8000A12F 相关后除数因子
ERRCODE_RC_TX_WAVE_TX_WAVE_LEN 0x8000A130 发射波形长度
ERRCODE_RC_TX_WAVE_TX_WAVE_BITS 0x8000A131 波形扩频前的三元码序列
ERRCODE_RC_RADAR_VERSION_NOT_INIT 0x8000A132 雷达版本未初始化
ERRCODE_RC_START_UP 0x8000A183 启动异常
ERRCODE_RC_CLOSE 0x8000A184 关闭异常
ERRCODE_RC_FRAME_BUFFER_FULL 0x8000A185 上报数据缓冲满,丢帧
ERRCODE_RC_RAINGING_DURATION 0x8000A186 共存指向间隔异常
ERRCODE_RC_TX_AHEAD_READ_ADC 0x8000A187 雷达TX发送在读取ADC数据前
ERRCODE_RC_AGC_CALI_FAILED 0x8000A188 AGC校准异常
ERRCODE_RC_PC_PEAK_OVERFLOWED 0x8000A189 雷达脉压峰值溢出
ERRCODE_RC_EEPROM_READ_FAILED 0x8000A18A eeprom读取校准结果错误
ERRCODE_RC_IMAGE_CHECK_FAILED 0x8000A18B 雷达固件镜像校验错误
ERRCODE_RC_MAX 0x8000A1FF RC错误码最大值

Structures

radar_agc_para_t

typedef struct {
    uint8_t lna_code[RADAR_MAX_ANT_CH_NUM]; /*!< 雷达AGC参数:LNA码字 */
    uint8_t vga_code[RADAR_MAX_ANT_CH_NUM]; /*!< 雷达AGC参数:VGA码字 */
} radar_agc_para_t;

成员说明

成员名称 数据类型 描述
lna_code uint8_t[8] AGC参数:LNA码字
vga_code uint8_t[8] AGC参数:VGA码字

radar_wave_para_t

typedef struct {
    uint8_t spread_factor;                   /*!< 雷达波形参数:波形序列扩频因子 */
    uint8_t acc_rshift_bit;                  /*!< 雷达波形参数:累加位宽保护右移位数 */
    uint16_t acc_num;                        /*!< 雷达波形参数:累加次数 */
    uint8_t corr_div;                        /*!< 雷达波形参数:相关后除数因子 */
    uint8_t tx_wave_len;                     /*!< 雷达波形参数:发射波形长度 */
    int8_t tx_wave_bits[RADAR_MAX_WAVE_LEN]; /*!< 雷达波形参数:波形扩频前的三元码序列 */
} radar_wave_para_t;

成员说明

成员名称 数据类型 描述
spread_factor uint8_t 波形序列扩频因子
acc_rshift_bit uint8_t 累加位宽保护右移位数
acc_num uint16_t 累加次数
corr_div uint8_t 相关后除数因子
tx_wave_len uint8_t 发射波形长度,取值范围[0, 64]
tx_wave_bits int8_t[64] 波形扩频前的三元码序列

radar_frame_para_t

typedef struct {
    uint16_t subframe_period;     /*!< 雷达帧参数:子帧间隔,单位0.01ms */
    uint16_t ant_switch_interval; /*!< 雷达帧参数:天线切换间隔,单位0.01ms */
} radar_frame_para_t;

成员说明

成员名称 数据类型 描述
subframe_period uint16_t 子帧间隔,单位0.01ms
ant_switch_interval uint16_t 天线切换间隔,单位0.01ms

radar_raw_data_para_t

typedef struct {
    uint8_t start_bin; /*!< 雷达原始数据参数:起始bin索引 */
    uint8_t end_bin;   /*!< 雷达原始数据参数:终止bin索引 */
} radar_raw_data_para_t;

成员说明

成员名称 数据类型 描述
start_bin uint8_t 起始bin索引
end_bin uint8_t 终止bin索引

complex_short_t

typedef struct {
    int16_t real; /*!< 复数数据:实部 */
    int16_t imag; /*!< 复数数据:虚部 */
} complex_short_t;

成员说明

成员名称 数据类型 描述
real int16_t 复数数据:实部
imag int16_t 复数数据:虚部

radar_target_info_t

typedef struct {
    uint16_t id; /*!< 雷达检测结果:目标序号 */
    int16_t rng; /*!< 雷达检测结果:目标距离(厘米) */
    int16_t agl; /*!< 雷达检测结果:目标角度(0.01度) */
    int16_t vel; /*!< 雷达检测结果:目标速度(厘米/秒) */
} radar_target_info_t;

成员说明

成员名称 数据类型 描述
id uint16_t 目标序号
rng int16_t 目标距离,单位厘米
agl int16_t 目标角度,单位0.01度
vel int16_t 目标速度,单位厘米/秒

radar_result_t

typedef struct {
    uint8_t target_num;                                        /*!< 雷达检测结果:有效目标个数 */
    radar_target_info_t target_info[RADAR_MAX_RPT_TARGET_NUM]; /*!< 雷达检测结果:目标检测结果数组 */
} radar_result_t;

成员说明

成员名称 数据类型 描述
target_num uint8_t 有效目标个数,取值范围[0, 3]
target_info radar_target_info_t[3] 目标检测结果数组

radar_raw_data_msg_t

typedef struct {
    uint16_t data_len;                                   /*!< 雷达数据:数据长度 */
    uint16_t crc;                                        /*!< 雷达数据:数据crc校验值 */
    uint16_t counter;                                    /*!< 雷达数据:数据上报帧号 */
    uint64_t tick_cnt;                                   /*!< 雷达数据:数据帧32k时钟计数 */
    radar_raw_data_para_t data_para;                     /*!< 雷达数据: 数据参数 */
    radar_frame_mode_t mode;                               /*!< 雷达数据:雷达帧模式 */
    uint8_t vendor_info[RADAR_VENDOR_INFO_BYTE];         /*!< 雷达数据:vendor参数 */
    uint64_t reserve;                                    /*!< 雷达数据:保留字段 */
    complex_short_t *data;                               /*!< 雷达数据:数据指针 */
} radar_raw_data_msg_t;

成员说明

成员名称 数据类型 描述
data_len uint16_t 数据长度
crc uint16_t 数据crc校验值
counter uint16_t 数据上报帧号
tick_cnt uint64_t 数据帧32k时钟计数
data_para radar_raw_data_para_t 数据参数
mode radar_frame_mode_t 雷达帧模式
vendor_info uint8_t[2] vendor参数
reserve uint64_t 保留字段
data complex_short_t * 数据指针,数据格式按距离bin数目I/Q顺序存放,与结构体内存不连续

radar_rf_para_t

typedef struct {
    bool pwr_ctrl;                              /*!< 雷达射频参数:射频开关电源是否独立控制 */
    uint8_t ch_idx;                             /*!< 雷达射频参数:信道号索引 */
    uint8_t ant_ch_num;                         /*!< 雷达射频参数:有效天线通道个数 */
    uint8_t tx_power_idx[RADAR_MAX_ANT_CH_NUM]; /*!< 雷达射频参数:Tx发射功率索引 */
    uint8_t ant_code[RADAR_MAX_ANT_CH_NUM];     /*!< 雷达射频参数:天线码字 */
    uint32_t board_id;                          /*!< 雷达硬件参数:模组型号 */
    radar_agc_para_t agc_para;                  /*!< 雷达射频参数:AGC参数 */
    radar_rf_sw_bit ant_sw_ctrl_en;             /*!< 雷达射频参数:射频开关控制管脚使能 */
} radar_rf_para_t;

成员说明

成员名称 数据类型 描述
pwr_ctrl bool 射频开关电源是否独立控制
ch_idx uint8_t 信道号索引
ant_ch_num uint8_t 有效天线通道个数,取值范围[1, 8]
tx_power_idx uint8_t[8] Tx发射功率索引
ant_code uint8_t[8] 天线码字
board_id uint32_t 模组型号
agc_para radar_agc_para_t AGC参数
ant_sw_ctrl_en radar_rf_sw_bit 射频开关控制管脚使能

radar_hardware_para_t

typedef struct {
    radar_rf_para_t rf_para;                            /*!< 雷达硬件参数:射频参数 */
    radar_frame_para_t frame_para;                      /*!< 雷达硬件参数:帧参数 */
    radar_raw_data_para_t raw_data_para;                /*!< 雷达硬件参数:原始数据上报配置参数 */
    radar_wave_para_t wave_para;                        /*!< 雷达硬件参数:波形参数 */
    uint8_t vendor_info[RADAR_VENDOR_INFO_BYTE];        /*!< 雷达硬件参数:vendor参数 */
    uint8_t reserve[RADAR_HW_PARA_RSV_BYTE];            /*!< 雷达硬件参数:预留位 */
} radar_hardware_para_t;

成员说明

成员名称 数据类型 描述
rf_para radar_rf_para_t 射频参数
frame_para radar_frame_para_t 帧参数
raw_data_para radar_raw_data_para_t 原始数据上报配置参数
wave_para radar_wave_para_t 波形参数
vendor_info uint8_t[2] vendor参数
reserve uint8_t[12] 预留位

radar_alg_basic_para_t

typedef struct {
    uint32_t rpt_mode;     /*!< 雷达算法基础参数: 数据上报类型,默认值为0 */
    uint32_t sensitivity;  /*!< 雷达算法基础参数: 检测灵敏度, 默认值为0 */
    uint32_t rng_boundary; /*!< 雷达算法基础参数: 距离检测边界,单位cm,默认值700 */
    uint32_t delay_time;   /*!< 雷达算法基础参数: 退出时延,单位S,默认值20 */
    uint16_t static_create_range;   /*!< 雷达算法基础参数: 静目标允许创建的距离门限。单位cm,默认为0 */
    uint8_t is_wire_down;  /*!< 雷达算法基础参数: 端子线朝向,影响角度上报值的正负。1表示朝下,0表示朝上 */
} radar_alg_basic_para_t;

成员说明

成员名称 数据类型 描述
rpt_mode uint32_t 数据上报类型,默认值为0
sensitivity uint32_t 检测灵敏度,默认值为0
rng_boundary uint32_t 距离检测边界,单位cm,默认值700
delay_time uint32_t 退出时延,单位S,默认值20
static_create_range uint16_t 静目标允许创建的距离门限,单位cm,默认为0
is_wire_down uint8_t 端子线朝向,1表示朝下,0表示朝上

radar_ai_para_t

typedef struct {
    uint16_t ai_status;       /*!< 雷达AI参数: AI抗干扰功能开关. 0表示关闭,1表示打开。默认是1 */
    int32_t dynamic_offset_direction[RADAR_AI_OFFSET_PARA_NUM]; /*!< 雷达AI参数: AI动检测补偿参数。取值范围[-100000, 100000],默认值0 */
    int32_t static_offset_direction[RADAR_AI_OFFSET_PARA_NUM]; /*!< 雷达AI参数: AI静检测补偿参数。取值范围[-100000, 100000],默认值0 */
} radar_ai_para_t;

成员说明

成员名称 数据类型 描述
ai_status uint16_t AI抗干扰功能开关,0表示关闭,1表示打开,默认值1
dynamic_offset_direction int32_t[8] AI动检测补偿参数,取值范围[-100000, 100000],默认值0
static_offset_direction int32_t[8] AI静检测补偿参数,取值范围[-100000, 100000],默认值0

radar_alg_para_t

typedef struct {
    radar_alg_basic_para_t basic_para;        /*!< 雷达算法参数: 基础参数 */
    radar_ai_para_t ai_para;                  /*!< 雷达算法参数: AI补偿参数 */
    uint8_t reserve[RADAR_ALG_PARA_RSV_BYTE]; /*!< 雷达算法参数:预留位 */
} radar_alg_para_t;

成员说明

成员名称 数据类型 描述
basic_para radar_alg_basic_para_t 基础参数
ai_para radar_ai_para_t AI补偿参数
reserve uint8_t[8] 预留位