打印

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

[复制链接]
1255|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
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)

使用特权

评论回复
板凳
Desire1|  楼主 | 2015-7-18 09:51 | 只看该作者
3个启动文件.zip (6.66 KB)

使用特权

评论回复
地板
若相依| | 2015-7-26 09:36 | 只看该作者
这个讲的不错,下载看看。对我有用

使用特权

评论回复
5
Desire1|  楼主 | 2015-7-28 15:41 | 只看该作者
找到这么好的文档,就是下载的不多。结贴了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

5

主题

78

帖子

1

粉丝