1、自己围观,自我满足STM32启动代码分析 启动代码文件名是STM32F10X.S,它的作用先总结下,然后再分析。启动代码作用一般是:1)堆和栈的初始化;2)向量表定义;3)地址重映射及中断向量表的转移;4)设置系统时钟频率;5)中断寄存器的初始化;6)进入C应用程序。 (1)按启动代码的次序,先看堆和栈的初始化:Stack_Size EQU 0x00000200 ;定义Stack_Size为0x00000200 AREA STACK,NOINIT,READWRITE,ALIGN=3 ;定义栈,可初始为0,8字节对齐Stack_Mem SPACE
2、 Stack_Size ;分配0x200个连续字节,并初始化为0__initial_sp ;汇编代码地址标号Heap_Size EQU 0x00000000 AREA HEAP,NOINIT,READWRITE,ALIGN=3__heap_baseHeap_Mem SPACE Heap_Size__heap_limit PRESERVE8;指定当前文件堆栈8字节对齐 THUMB ;告诉汇编器下面是32为的Thumb指令,如果需要汇编器将插入位以保证对齐 (2)中断向量表定义AREA RESET,