leaps_mac_addr_get
获取 MAC 地址列表. 设备使用用户指定的地址或默认地址. 每个接口的默认 MAC 地址只能通过调用 leaps_mac_addr_set_once 更改一次,更改后的地址将写入 OTP 内存并成为新的默认 MAC 地址. 用户可以通过调用 leaps_mac_addr_set 设置自定义 MAC 地址. 用户修改默认 MAC 地址后,可通过出厂重置恢复(参见 leaps_factory_reset). MAC 地址与特定接口的映射是基于列表中的顺序,如下所示:
UWB
BLE
以太网
无线网络
BLE 地址可以是随机 BLE 地址或公共 BLE 地址. 如果不支持特定接口,列表中相应的 MAC 地址为空.
(无)
type_0, type_1, type_2, type_3: 8位无符号整数(类型描述列表中的 MAC 地址编号0,1,2,3)
mac_addr_0, mac_addr_1, mac_addr_2, mac_addr_3: 48-bit value (MAC地址编号 0,1,2,3小端序)
SPI/UART 示例
TLV 请求 |
|
---|---|
类型 |
长度 |
0x83 |
0x00 |
类型 0x83 (131 dec) 表示命令 leaps_mac_addr_get
TLV 响应 |
|||||
---|---|---|---|---|---|
类型 |
长度 |
价值 |
类型 |
长度 |
价值 |
(byte 0-4) MAC 地址列表的标志,以小端序表示
(字节 5-10) MAC 地址 0,小端序
(字节 11-16) MAC 地址 1,小端序
(字节 17-22) MAC 地址 2,小端序
(字节 23-28) MAC 地址 3,小端序
|
|||||
0x40 |
0x01 |
0x00 |
0x41 |
0x0D |
… |
类型0x40 表示上一条命令的 err_code
类型 0xC1(193 dec) 表示 MAC 地址列表
MAC地址标志编码
MAC地址列表标志 |
||||||||
---|---|---|---|---|---|---|---|---|
字节 0 |
字节1 |
字节2 |
字节3 |
|||||
2-7 位 |
0-1位 |
11-15位 |
字节10 |
8-9位 |
18-23位 |
16-17 位 |
26-31位 |
24-25位 |
保留 |
T_0 |
保留 |
P_1 |
T_1 |
保留 |
T_2 |
保留 |
T_3 |
T_0, T_1, T_2, T_3 描述 MAC 地址类型.
0 - 空 MAC 地址
1 - OTP 内存中的默认 MAC 地址.
2 - 用户指定的 MAC 地址
3 - 可变的默认 MAC 地址,只能使用 leaps_mac_addr_set_once 重写一次.
如果 BLE 地址是公共 BLE 地址,则设置 P_1. 如果 BLE MAC 地址是随机的,该标志将被清零,有关 BLE 地址类型的更多信息,请参阅 BLE 规范.