Add PA11 power-hold output (PMOS self-latch keep-alive)

This commit is contained in:
2026-10-10 09:51:51 +08:00
parent 9c7aafb78c
commit 6246a87c3c
16 changed files with 2573 additions and 3 deletions
+9
View File
@@ -136,6 +136,15 @@ void usart1_irq_handler(void);
/******************************************************************************/
/* >>>>>>>>>>>>>>>>>>>>[POWER HOLD(PMOS 自锁保持脚)]<<<<<<<<<<<<<<<<<<<< */
/* PA11:上电保持脚——main 入口即初始化为推挽输出高(先于一切外设初始化),
维持 PMOS 导通;复位期间由外部电路(按键/上拉)保持。 */
#define PWR_HOLD_RCU RCU_GPIOA
#define PWR_HOLD_PORT GPIOA
#define PWR_HOLD_PIN GPIO_PIN_11
/******************************************************************************/
#define DEBUG_UART USART1
#endif //BOARD_CONFIG_H
+26
View File
@@ -0,0 +1,26 @@
#ifndef PWR_HOLD_H
#define PWR_HOLD_H
#include "gd32f4xx.h"
#include "board_config.h"
/**
* @brief 初始化电源保持脚(PA11,PMOS 自锁保持)。
* @details 在 main 入口、一切外设初始化之前调用:推挽输出高,立即维持
* PMOS 导通(手动上电后由 MCU 接替按键/外部电路保持供电)。
* 引脚定义见 board_config.h 的 PWR_HOLD_*。
*/
void pwr_hold_init(void);
/**
* @brief 保持脚置高(PMOS 导通,维持供电)。
*/
void pwr_hold_on(void);
/**
* @brief 保持脚置低(预留软关机:PMOS 断开,设备自行掉电)。
* @warning 调用后本系统失电,函数不会返回——仅用于软关机流程收尾。
*/
void pwr_hold_off(void);
#endif // PWR_HOLD_H