dwm_cfg_tag_set
使用给定选项将节点配置为标签. BLE 选项不能与加密一起启用. 否则,配置将被视为无效,不会被使用. 如果未设置加密密钥,则无法启用加密. 此调用需要重置新配置才能生效(dwm_reset).
小心
通常,在设置新值时,此调用会写入内部闪存. 因此,它不应该被频繁使用,在最坏的情况下,可能需要数百毫秒!
-
void dwm_cfg_tag_set(dwm_cfg_tag_t *cfg_tag);
- 参数
input – cfg_tag
cfg_tag – stnry_en, low_power_en, meas_mode, loc_engine_en, led_en, ble_en, uwb_mode, fw_update_en, enc_en
stnry_en – ‘0’ | ‘1’ (启用静态检测,如果启用,在节点 :param 不移动的情况下,将使用静态更新率代替正常更新率)
meas_mode – ‘0’ | ‘1’ | ‘2’ | ‘3’ (0 - 双向测距,1,2,3 - 保留)
low_power_en – ‘0’ | ‘1’ (启用低功耗模式)
loc_engine_en – ‘0’ | ‘1’ (0 表示不使用内部定位引擎,1 表示使用内部定位引擎)
enc_en – ‘0’ | ‘1’ (加密启用)
led_en – ‘0’ | ‘1’ (启用通用 LED)
ble_en – ‘0’ | ‘1’ (BLE 启用)
uwb_mode – ‘0’ | ‘1’ | ‘2’ (0 关,1 被动,2 主动)
fw_update_en – ‘0’ | ‘1’ (固件更新启用)
output – 状态代码
C代码示例
dwm_cfg_tag_t cfg;
cfg.stnry_en = 1;
cfg.meas_mode = DWM_MEAS_MODE_TWR;
cfg.low_power_en = 0;
cfg.loc_engine_en = 1;
cfg.common.enc_en = 1;
cfg.common.led_en = 1;
cfg.common.ble_en = 0;
cfg.common.fw_update_en = 0;
cfg.common.uwb_mode = DWM_UWB_MODE_ACTIVE;
dwm_cfg_tag_set(&cfg);
SPI/UART 示例
TLV 请求 |
||
---|---|---|
类型 |
长度 |
价值 |
0x05 |
0x02 |
BYTE 1:
BYTE 0:
|
0x72 0x04 |
类型 0x05 表示命令 dwm_cfg_tag_set
TLV 响应 |
||
---|---|---|
类型 |
长度 |
价值(参见错误代码) |
0x40 |
0x01 |
0x00 |