#include "led_state.h" #include /* * 该文件仅被 led_state_module.c 包含一次,用于定义: * 1) 逻辑 LED 到 CAF LED 实例编号映射; * 2) 每个逻辑状态对应的 LED 效果。 */ const struct {} led_state_def_include_once; /* * CAF LED 实例编号来源于 DTS 中 status=okay 的 gpio-leds 顺序: * - led_0 -> 0(Num Lock) * - led_1 -> 1(BLE 状态) */ static const uint8_t led_map[LED_ID_COUNT] = { [LED_ID_NUM_LOCK] = 0, [LED_ID_BLE_STATE] = 1, }; /* Num Lock 指示:灭=关闭,常亮=开启。 */ static const struct led_effect led_num_lock_state_effect[LED_NUM_LOCK_STATE_COUNT] = { [LED_NUM_LOCK_STATE_OFF] = LED_EFFECT_LED_OFF(), [LED_NUM_LOCK_STATE_ON] = LED_EFFECT_LED_ON(LED_COLOR(255, 255, 255)), }; /* * BLE 指示灯策略: * - OFF: 熄灭(USB 连接或 BLE 非活动模式) * - WAIT_RECONNECT: 慢闪(1s toggle) * - PAIRING: 快闪(0.5s toggle) * - CONNECTED: 常亮 */ static const struct led_effect led_ble_state_effect[LED_BLE_STATE_COUNT] = { [LED_BLE_STATE_OFF] = LED_EFFECT_LED_OFF(), [LED_BLE_STATE_WAIT_RECONNECT] = LED_EFFECT_LED_BLINK(1000, LED_COLOR(255, 255, 255)), [LED_BLE_STATE_PAIRING] = LED_EFFECT_LED_BLINK(500, LED_COLOR(255, 255, 255)), [LED_BLE_STATE_CONNECTED] = LED_EFFECT_LED_ON(LED_COLOR(255, 255, 255)), };