utils
utils 模块提供 NFC 协议处理中常用的数值计算工具函数,包括取最小值、取最大值、多字节组合与字节提取等操作。
头文件清单
接口清单
| 接口名称 | 功能简述 |
|---|---|
| UTIL_Min | 返回两个int32_t数值的较小值 |
| UTIL_Max | 返回两个int32_t数值的较大值 |
| UTIL_Combine8bitTo16bit | 将2个8bit数值组合为1个16bit数值 |
| UTIL_Combine8bitTo32bit | 将4个8bit数值组合为1个32bit数值 |
| UTIL_Byte3 | 获取32bit无符号整型的最高字节(第3字节) |
| UTIL_Byte2 | 获取32bit无符号整型的次高字节(第2字节) |
| UTIL_Byte1 | 获取32bit无符号整型的次低字节(第1字节) |
| UTIL_Byte0 | 获取32bit无符号整型的最低字节(第0字节) |
Functions
UTIL_Min
头文件清单
功能说明
- 返回两个int32_t输入数值中的较小值
- 用于NFC协议处理中的数值比较与边界限定场景
- 无副作用,纯计算函数,可安全在中断上下文及多线程环境中调用
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| x | int32_t | 第一个输入值 | INT32_MIN ~ INT32_MAX |
| y | int32_t | 第二个输入值 | INT32_MIN ~ INT32_MAX |
返回值
- 返回类型:int32_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| x和y中的较小值 | 两数中的最小值 | 正常调用 |
UTIL_Max
头文件清单
功能说明
- 返回两个int32_t输入数值中的较大值
- 用于NFC协议处理中的数值比较与上限限定场景
- 无副作用,纯计算函数,可安全在中断上下文及多线程环境中调用
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| x | int32_t | 第一个输入值 | INT32_MIN ~ INT32_MAX |
| y | int32_t | 第二个输入值 | INT32_MIN ~ INT32_MAX |
返回值
- 返回类型:int32_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| x和y中的较大值 | 两数中的最大值 | 正常调用 |
UTIL_Combine8bitTo16bit
头文件清单
功能说明
- 将2个8bit数值组合为1个16bit数值,b1作为高字节,b0作为低字节
- 用于NFC协议数据帧解析中多字节合并为短整型的场景
- 无副作用,纯计算函数,可安全在中断上下文及多线程环境中调用
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| b1 | uint8_t | 高位字节 | 0 ~ 255 |
| b0 | uint8_t | 低位字节 | 0 ~ 255 |
返回值
- 返回类型:uint16_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| 组合后的16bit数值 | 高字节b1与低字节b0组合结果 | 正常调用 |
UTIL_Combine8bitTo32bit
头文件清单
功能说明
- 将4个8bit数值组合为1个32bit数值,b3为最高字节,b0为最低字节
- 用于NFC协议数据帧解析中多字节合并为32位整型的场景
- 无副作用,纯计算函数,可安全在中断上下文及多线程环境中调用
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| b3 | uint8_t | 最高位字节 | 0 ~ 255 |
| b2 | uint8_t | 次高位字节 | 0 ~ 255 |
| b1 | uint8_t | 次低位字节 | 0 ~ 255 |
| b0 | uint8_t | 最低位字节 | 0 ~ 255 |
返回值
- 返回类型:uint32_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| 组合后的32bit数值 | 四字节b3/b2/b1/b0组合结果 | 正常调用 |
UTIL_Byte3
头文件清单
功能说明
- 获取32bit无符号整型的最高字节(第3字节,bit24~bit31)
- 用于NFC协议数据帧解析中从32位数据提取高位字节的场景
- 无副作用,纯计算函数,可安全在中断上下文及多线程环境中调用
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| val | uint32_t | 输入数值 | 0 ~ 4294967295 |
返回值
- 返回类型:uint8_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| val的最高字节 | 输入值的bit24~bit31位 | 正常调用 |
UTIL_Byte2
头文件清单
功能说明
- 获取32bit无符号整型的次高字节(第2字节,bit16~bit23)
- 用于NFC协议数据帧解析中从32位数据提取次高字节的场景
- 无副作用,纯计算函数,可安全在中断上下文及多线程环境中调用
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| val | uint32_t | 输入数值 | 0 ~ 4294967295 |
返回值
- 返回类型:uint8_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| val的次高字节 | 输入值的bit16~bit23位 | 正常调用 |
UTIL_Byte1
头文件清单
功能说明
- 获取32bit无符号整型的次低字节(第1字节,bit8~bit15)
- 用于NFC协议数据帧解析中从32位数据提取次低字节的场景
- 无副作用,纯计算函数,可安全在中断上下文及多线程环境中调用
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| val | uint32_t | 输入数值 | 0 ~ 4294967295 |
返回值
- 返回类型:uint8_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| val的次低字节 | 输入值的bit8~bit15位 | 正常调用 |
UTIL_Byte0
头文件清单
功能说明
- 获取32bit无符号整型的最低字节(第0字节,bit0~bit7)
- 用于NFC协议数据帧解析中从32位数据提取最低字节的场景
- 无副作用,纯计算函数,可安全在中断上下文及多线程环境中调用
入参
| 名称 | 参数类型 | 详细说明 | 约束取值范围 |
|---|---|---|---|
| val | uint32_t | 输入数值 | 0 ~ 4294967295 |
返回值
- 返回类型:uint8_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| val的最低字节 | 输入值的bit0~bit7位 | 正常调用 |