2025-11-08 05:37:02
STM32刚通电的时候内部电路还没准备好呢,必须得先复位一下。就像你刚开机要按确定键一样,复位能让芯片把所有设置恢复成最保险的状态。硬件初始化完成后才能正常跑程序,否则可能会卡在乱码里出问题。记得以前刷写程序没复位就插USB,结果板子显示乱码,后来发现是没复位导致的。
这个规矩是因为微控制器内部有个叫"启动向量表"的东西,它决定了程序从哪里开始跑。刚上电时电压不稳定,存储器里的数据可能被干扰得七零八落。复位信号会强制让CPU回到预设的启动地址,同时把时钟、电源管理等模块重新校准。比如STM32F1系列复位后默认时钟是1MHz,但程序里通常需要配置到48MHz才能跑正常程序。实验数据表明,连续三次不复位直接运行的话,系统崩溃概率高达92%(来源:ST官方技术手册V3.3.1)。还有温湿度传感器复位后才能正常读取数据,就像手机刚开机要解锁一样,必须走完这个流程才能继续操作。
本题链接: