×
单片机 > 单片机程序设计 > 详情

嵌入式ARM启动代码的工作

发布时间:2020-09-01 发布时间:
|

(1)定义代码的初始入口点:初始入口点是指代码运行时的起始点,它在每个映像文件中是唯一的,也是每个可执行的映像文件             所必须含有的,而且必须位于映像文件的可执行域内。


(2)设置中断向量表,链接到包括复位、未定义指令,软件中断、取指中断、取数中断、IRQ和FIQ等异常或中断的处理程序。


(3)初始化存储系统。


(4)初始化ARM各个模式下的堆栈:根据应用程序使用资源的情况,设置每种或者某些ARM处理器模式下的堆栈区域。


(5)始化关键的I/O设备:用于防止在使能中断时产生不必要的开销。


(6)初始化中断时需要使用的一些变量。


(7)中断使能。


(8)根据情况切换处理器的模式和状态:ARM在运行启动代码时处于特权模式,用户在进入应用程序之前,可以将其切换到用户 模式,也可以进行ARM状态和Thumb状态的切换。


(9)初始化高级程序运行时用到的存储区,例如将RW属性的数据和ZI属性的数据移动到ARM等可以写的储存器,因为这些数据在程序加载时是保存在ROM等储存介质内的。


(10)进入高级应用程序。


关键字:嵌入式  ARM  启动代码 

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
AVR熔丝位操作时的要点和需要注意的相关事项