Files
poweroff-protection/poweroff_stm32/使用文档.md
2026-05-14 17:53:52 +08:00

1.7 KiB
Raw Blame History

断电保护固件 - 使用文档

通信接口

设备同时启用 USART1 串口和 USB CDC 虚拟串口,上电后两个接口都在监听。哪个接口先收到 start 指令,后续通信就使用哪个接口:

接口 连接方式 接收方式
USART1 串口 PA9(TX) / PA10(RX)115200 8N1 中断接收
USB CDC 虚拟串口 PA11(DM) / PA12(DP)USB口 轮询接收

举例: 上位机通过USB连接发送 start\r\n设备识别为USB模式后续所有 AliveSHUTDOWN 等消息都通过USB发送bliveok 等回复也只从USB接收。如果通过串口先发了 start,则全程走串口。


通信协议

指令 方向 说明
start 上位机 → 设备 启动监控(设备上电后等待此指令才开始工作)
Alive 设备 → 上位机 心跳包表示12V电源正常
blive 上位机 → 设备 心跳回复,表示上位机在线
SHUTDOWN 设备 → 上位机 12V电源丢失设备即将断电
ok 上位机 → 设备 确认收到关机通知

所有指令以 \r\n 结尾。


工作流程

  1. 设备上电初始化串口和USB同时监听等待上位机发送 start
  2. 收到 start 后锁定该接口,进入监控循环:
    • 检测 Main12V_In 引脚PB7
    • 12V正常时发送 Alive,等待上位机回复 blive5秒超时
    • 12V丢失时连续检测10次仍丢失则进入关机流程
  3. 关机流程:
    • RUN灯灭PB5置高
    • SHUT拉低PB4触发关机
    • 发送 SHUTDOWN,等待上位机回复 ok,若一分钟之后未收到,则直接关机
    • 延时10秒后断开继电器PB6置高