2019-12-19 18:05发布
isakura 发表于 2018-4-27 23:36 我也刚想问这个问题 比如,在APP中开了其他的定时器 及 SPI 等,然后 关中断,跳到 BOOT,开中断
isakura 发表于 2018-4-28 00:04 boot中用过的东西要全部恢复 ====== 这个没问题,复位可以解决,而且也不一定要复位,BOOT中用到的东西 ...
最多设置5个标签!
通用做法,都是直接在app中复位进入boot,boot中用过的东西要全部恢复,关键是外设和中断!然后读取应用区MSP值和入口地址,跳转到入口地址启动app。
了解了内核是怎么启动的,就没什么难的了。STM32三个文档一定要看:
1. 内核编程手册,例如cortex-m3的手册,相同内核芯片通用的。
2. 芯片的参考手册,系列通用。
3. 数据手册,详细描述某个型号存储,引脚,电气参数等方面的细节。
芯片启动是先从起始地址加载4个直接到MSP也就是栈指针,接下来四个细节就是程序入口地址。
复位后的启动基本是固定的,你只能选择复位进去 boot 或 app,一般是进去 boot,boot中用的资源少,现场容易恢复。
一周热门 更多>