/** ****************************************************************************** * @file battery_display.h * @brief 电池电量 LED 显示模块公共接口 * * 使用双时间槽分时复用控制反并联 LED: * 每 1ms 周期 = 前 0.5ms (槽A: 正向亮) + 后 0.5ms (槽B: 反向亮) * * 4 颗电量灯映射: * 灯0 = LED12 正向 (PA8=高) * 灯1 = LED12 反向 (PA8=低) * 灯2 = LED13 正向 (PA11=高) * 灯3 = LED13 反向 (PA11=低) ****************************************************************************** */ #ifndef __BATTERY_DISPLAY_H #define __BATTERY_DISPLAY_H #ifdef __cplusplus extern "C" { #endif #include /** * @brief 根据 g_batteryPct / g_chgIng / g_chgFull 更新电池 LED 显示状态 * 在主循环或协议处理中调用 */ void UpdateBatteryLEDs(void); /** * @brief 双时间槽更新 (在 TIM3 中断中每 1ms 调用) * 前半程控制正向灯, 后半程控制反向灯 */ void BatterySlotUpdate(void); #ifdef __cplusplus } #endif #endif /* __BATTERY_DISPLAY_H */