BFX 库(Bit Manipulation Functions)提供 AUTOSAR 标准位操作函数。库函数不维护状态,为纯函数(pure functions)。支持:
BFX / BIT / MASK / u8/u16/u32/u64(无符号 8/16/32/64 位整数)/ s8/s16/s32/s64(有符号)/ MSB/LSB / GetVersionInfo
SWS_Bfx_NNNNN 规范项 ID 约 50+ 条(编号 00001-91001)。
BFX 函数按位操作类型分类:
无新类型(使用 C 标准整数类型 u8/u16/u32/u64/s8/s16/s32/s64 与布尔)。
| API | 签名 | 功能 |
|---|---|---|
| Bfx_SetBit_ | void Bfx_SetBit_u8u8(uint8* DataPtr, uint8 BitPos) | 设置位 |
| Bfx_ClrBit_ | void Bfx_ClrBit_u8u8(uint8* DataPtr, uint8 BitPos) | 清除位 |
| Bfx_GetBit_ | boolean Bfx_GetBit_u8u8_u8(uint8 DataValue, uint8 BitPos) | 读取位 |
| Bfx_SetBits_ | void Bfx_SetBits_u8u8u8u8(uint8* DataPtr, uint8 BitStart, uint8 BitLength, uint8 Pattern) | 多位设置 |
| Bfx_GetBits_ | uint8 Bfx_GetBits_u8u8u8_u8(uint8 DataValue, uint8 BitStart, uint8 BitLength) | 多位读取 |
| Bfx_SetBitMask_ | void Bfx_SetBitMask_u8u8(uint8* DataPtr, uint8 Mask) | 位掩码设置 |
| Bfx_ClrBitMask_ | void Bfx_ClrBitMask_u8u8(uint8* DataPtr, uint8 Mask) | 位掩码清除 |
| Bfx_ToggleBitMask_ | void Bfx_ToggleBitMask_u8u8(uint8* DataPtr, uint8 Mask) | 位掩码翻转 |
| Bfx_ToggleBit_ | void Bfx_ToggleBit_u8u8(uint8* DataPtr, uint8 BitPos) | 位翻转 |
| Bfx_GetVersionInfo | void Bfx_GetVersionInfo(Std_VersionInfoType* VersionInfoPtr) | 获取版本信息 |
每种位操作支持 4 种整数类型(u8/u16/u32/u64)→ 共 50+ 个函数变体。
无(库函数为纯函数,无配置)。
校对轮次:L1 自动校对(2026-06-13)