论坛首页
任务活动
问答
论坛专题
登录
注册
舒伯特玫瑰
+ 关注
粉丝
2
|
主题
53
|
回帖
266
加好友
私信
帖子
主题
回复
评论
小华半导体芯片启动文件详细讲解
2023-6-26 13:24
小华半导体
41
2227
如果没有定义__MICROLIB,则采用双段存储器模式,且声明标号__user_initial_stackheap具有全局属性,让用户 ...
......
首先判断是否定义了__MICROLIB,如果定义了这个宏,则赋予标号__initial_sp(栈顶地址)、__heap_base(堆 ...
ALIGN:对指令或者数据存放的地址进行对齐,后面会跟一个立即数,缺省表示4字节对齐。 ...
6. 用户堆栈初始化
5. 中断服务程序 再下面的代码就是中断服务程序,太长了就不粘贴了。启动文件已经帮我们写好所有中断的服 ...
......
......
......
值得注意的是上面有一段操作R0和R1寄存器的代码,这段代码是什么意思呢?查询手册,找到这个0x40050804的地 ...
......
__main:一个标准的C库函数,主要作用是初始化用户堆栈,并在函数的最后调用main函数进入C语言世界。这就是 ...
System Init():一个标准的库函数,在system_hc32f460.c这个库文件中定义。其主要作用是配置系统时钟,这里 ...
WEAK:表示弱定义,如果外部文件优先定义了该标号,则首先引用该标号,如果外部文件没有声明,也不会出错。 ...
复位子程序是系统上电后第一个执行的程序,调用System Init函数初始化系统时钟,然后调用C库函数_mian,最 ...
......
定义一个名称为.text的代码段,只读。
4. 复位程序 AREA |.text|, CODE, READONLY
__Vectors为向量表起始地址,__Vectors_End为向量表结束地址,两个相减即可算出向量表大小。向量表从Flash ...
向量表的代码比较长,占据了启动代码的大部分篇幅。
前一页
3
4
5
6
7
8
9
后一页
2
3
近期访客