【转】【GD32】启动流程解析

[复制链接]
 楼主| Desire1 发表于 2015-7-18 09:50 | 显示全部楼层 |阅读模式
总结一下GD32的启动文件和启动过程:
1对栈和堆的大小进行定义,
2在代码区的起始处建立中断向量表,其第一个表项是栈顶地址,第二个表项是复位中断服务入口地址。
3在复位中断服务程序中跳转到C/C++标准实时库的__main函数,完成用户堆栈等的初始化后,跳转.c文件中的main函数开始执行C程序。
假设GD32被设置为从内部FLASH启动(这也是最常见的一种情况),中断向量表起始地位为0x8000000,则栈顶地址存放于0x8000000处,而复位中断服务入口地址存放于0x8000004处。当遇到复位信号后,则从0x80000004处取出复位中断服务入口地址,继而执行复位中断服务程序,然后跳转__main函数,最后进入mian函数,来到C的世界。

 楼主| Desire1 发表于 2015-7-18 09:51 | 显示全部楼层
启动流程解析.pdf (670.5 KB, 下载次数: 77)
 楼主| Desire1 发表于 2015-7-18 09:51 | 显示全部楼层
3个启动文件.zip (6.66 KB, 下载次数: 34)
若相依 发表于 2015-7-26 09:36 | 显示全部楼层
这个讲的不错,下载看看。对我有用
 楼主| Desire1 发表于 2015-7-28 15:41 | 显示全部楼层
找到这么好的文档,就是下载的不多。结贴了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

5

主题

78

帖子

1

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