[STM32F0] STM32F0单片机快速入门三 MCU启动过程

[复制链接]
2164|49
 楼主| 花间一壶酒sd 发表于 2021-1-25 23:30 | 显示全部楼层
函数 SystemInit( ) 执行完之后,程序跳转回来,取得 __main( ) 函数的地址,跳转到 __main() 函数执行。需要注意,这个函数不是我们用户代码里的 main( ) 函数。
 楼主| 花间一壶酒sd 发表于 2021-1-25 23:31 | 显示全部楼层
__main() 函数是 Keil 的库提供的,我们看不到代码,它主要完成变量的初始化。这里不用太纠结,如果想进一步深究可以看一下 ARM Compiler User Guide 的 Reset and initialization 这一节。
 楼主| 花间一壶酒sd 发表于 2021-1-25 23:32 | 显示全部楼层
__main() 函数执行完,基本工作就做完了,这才跳转到用户代码的 main( ) 函数。
 楼主| 花间一壶酒sd 发表于 2021-1-25 23:33 | 显示全部楼层
参考资料:

STM32F030 Datasheet

STM32F030 Reference Manual

ARM Compiler User Guide

ARM®v6-M Architecture Reference Manual
 楼主| 花间一壶酒sd 发表于 2021-1-25 23:34 | 显示全部楼层
 楼主| 花间一壶酒sd 发表于 2021-1-25 23:34 | 显示全部楼层
那么什么是 Startup Code
 楼主| 花间一壶酒sd 发表于 2021-1-25 23:35 | 显示全部楼层
什么是 Bootloader?
 楼主| 花间一壶酒sd 发表于 2021-1-25 23:36 | 显示全部楼层
大家应该会有所认识了哦~欢迎留言讨论!
 楼主| 花间一壶酒sd 发表于 2021-1-25 23:36 | 显示全部楼层
欢迎留言讨论!
 楼主| 花间一壶酒sd 发表于 2021-1-25 23:37 | 显示全部楼层
大家好梦,晚安!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部