2025-11-08 06:24:44
软件复位就是通过写特定地址的值让芯片自己重启,这样不用外部电路也能复位。开发者写代码时,往0x20000000地址写0x1FC00000就能触发复位,就像按个虚拟按钮让板子自己重新启动。
为什么这样做?因为STM32F4内部有复位控制寄存器,地址是0x20000000,写特定值触发复位,比如0x1FC00000。数据手册说复位时间100到500毫秒,这样确保系统稳定。所以开发者都这么操作,既方便又可靠。比如启动失败时,程序卡死就往这个地址写值,板子自动重启。不过要注意不能连续写,否则可能死机。手册里说连续复位超过5次会进入安全模式,所以代码里要加延时。复位成功后,系统会重新加载启动文件,就像手机死机后自动重启一样。
本题链接: