stm32正常运⾏流程图_stm32串⼝通信流程图1.写在前⾯
⾸先,你要知道STM32启动⽂件中启动流程,你就需要掌握⼀点汇编基础知识。
汇编语⾔属于机器语⾔,或者说低级语⾔,C语⾔属于⾼级语⾔,所以,汇编和C语⾔在语法上差异很⼤。
如果你学底层开发,汇编的⼀些基础知识需要掌握。不需要精通,但需要看懂常见的汇编代码。
2.说明
STM32的启动⽂件与编译器有关,不同编译器,它的启动⽂件不同。
虽然启动⽂件(汇编)代码各有不同,但它们原理类似,都属于汇编程序。
我们拿基于MDK-ARM的启动⽂件来举例,说⼀下要点内容。
3.分配堆栈
在基于MDK的启动⽂件开始,有⼀段汇编代码是分配堆栈⼤⼩的。
这⾥重点知道堆栈数值⼤⼩就⾏。还有⼀段AREA(区域),表⽰分配⼀段堆栈数据段。
数值⼤⼩可以⾃⼰修改,也可以使⽤STM32CubeMX数值⼤⼩配置:
在IAR中,是通过⼯程配置堆栈⼤⼩:
4.向量表
相信⼤家都知道向量表,先看汇编代码:
c语言编译器app怎么用
这个向量表就是对应⼿册中的那些内容:
我们需要知道这个地⽅中的复位,程序上电之后,是跳到Reset_Handler这个位置。
5.执⾏代码
上⾯知道代码是从Reset_Handler开始执⾏,我们看Reset_Handler汇编代码:
在启动的时候,执⾏了SystemInit这个函数。
之前标准外设库在SystemInit这个函数初始化了系统时钟,后⾯HAL库单独把那部分代码提出来了。
执⾏完SystemInit函数,就跳转到我们的main函数执⾏了。
打开APP阅读更多精彩内容
点击阅读全⽂

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。