/* * 主机侧单测桩:cmsis_os2.h * 模块功能:为 App/sync/time_sync.c(经 sys_events.h)提供主机可编译的 CMSIS-RTOS v2 * 事件标志接口与类型。 * * ⚠ 仅供 test/host/time_sync/ 使用,不参与 MCU 构建。 * 真实头在 Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS_V2/,会拖入整套 * FreeRTOS + CMSIS 内核对象,主机侧不引入。 * * 保真点(对齐 cmsis_os2.h): * - osEventFlagsId_t = void*(:195)、osMutexId_t = void*(:198); * - osStatus_t 枚举含 osOK = 0; * - 标志位 osFlagsWaitAny=0 / osFlagsNoClear=0x2 / osFlagsError=0x80000000 * / osFlagsErrorTimeout=0xFFFFFFFE(:153~164); * - uint32_t osEventFlagsWait(id, flags, options, timeout)(:539)。 * osEventFlagsWait 由测试单元给强符号桩(可注入"未就绪/超时"并驱动屏障循环)。 * * 创建日期:2026-10-10 */ #ifndef CMSIS_OS2_H #define CMSIS_OS2_H #include #ifdef __cplusplus extern "C" { #endif /* 不透明句柄 */ typedef void *osEventFlagsId_t; typedef void *osMutexId_t; /* 状态码(只保留被测代码用到的子集) */ typedef enum { osOK = 0, osError = -1, osErrorTimeout = -2, osErrorResource = -3, osErrorParameter = -4 } osStatus_t; /* 事件标志选项(cmsis_os2.h:153~164) */ #define osFlagsWaitAny 0x00000000U #define osFlagsWaitAll 0x00000001U #define osFlagsNoClear 0x00000002U #define osFlagsError 0x80000000U #define osFlagsErrorUnknown 0xFFFFFFFFU #define osFlagsErrorTimeout 0xFFFFFFFEU #define osFlagsErrorResource 0xFFFFFFFDU #define osFlagsErrorParameter 0xFFFFFFFCU uint32_t osEventFlagsWait(osEventFlagsId_t ef_id, uint32_t flags, uint32_t options, uint32_t timeout); #ifdef __cplusplus } #endif #endif /* CMSIS_OS2_H */