历史上的今天
今天是:2025年03月03日(星期一)
2020年03月03日 | stm32 启动代码应用技巧
2020-03-03 来源:eefocus
前段时间对stm32的启动代码进行了一个小小的研究,发现了一些比较好用的技巧,在这分享下!
总体上说,整个启动代码就是中断初始化为主,以及中断之后如何进行调配函数!
首先看这么一段代码:Reset_Handler
; Reset handler
Reset_Handler PROC
EXPORT Reset_Handler [WEAK]
IMPORT __main
IMPORT SysInit
IMPORT SystemInit
LDR R0, =SystemInit
BLX R0
LDR R0, =SysInit
BLX R0
LDR R0, =__main
BX R0
ENDP
这其实上是Reset中断后生的事情,不难发现,这也就是进入主函数的通道!
我在这里加了一个
IMPORT SysInit
LDR R0, =SysInit
BLX R0
这是我自己写的一个函数,因为我每次程序一开始跑,我就像让他运行这段代码,所以我就把他也加到这里了!
可见,我们如果想在进入主函数之前运行什么,那么我们就可以在这里加我们需要的代码;
一定要注意我加的位置,他其实上就是入栈和出栈的做法!所以我们一定要注意入栈和出栈的顺序!

我们在来看看其他的中断处理,也都是同样的道理!
PendSV_Handler PROC
EXPORT PendSV_Handler [WEAK]
B .
ENDP
SysTick_Handler PROC
EXPORT SysTick_Handler [WEAK]
B .
ENDP
ok,这个其实很简单,不过很实用!
PS:有的人用的是库里面的bootloader,为只读文件,我们需要把他删了,重新复制一个添加进去!
史海拾趣
|
昨天朋友说是要用一款芯片做开发板,结果查来查去,不是价格贵的离谱,就是功能还不如淘宝上山寨版本的人性化。 后来有个同事说,大厂一般都不主推自己的开发板,往往这些事情交代给第三方去做。不知是不是真的? 毕竟芯片是自己家的宝贝,还是自 ...… 查看全部问答> |
|
目前要用到一个屏,只有rgb接口的,而我们的系统确实80并行接口的,请问有办法转为rgb接口么? 1。有没有硬件可以支持转换的,类似mpl方式。 2。软件模拟rgb接口输出,(不知道有没有类似的代码)。… 查看全部问答> |
|
description for my question: - host OUT a data - STM32 receive it - then use USB_SIL_Write(...) to write data to TxFIFO - finally,host execute IN command,the data can be read right. - then STM32 USB will catch a IN inter ...… 查看全部问答> |
|
大家都下了3.42a了吧!哈哈 ! ! ! ! 注意运行keygen.exe 时 生成的机器码比如“0x210aa”一定要大写,改成“0x210AA”,否则就会破解不了 ! ! ! ! 爽的话请回复,谢谢!! ! ! ! !… 查看全部问答> |
|
LM3S811DDLLXXRR笔记之八:利用周公ucos模板实现UCOSII LED 这个周公在LM3S方面做了大量工作,UCOSII模板不错能省大量时间,拿来用就行,不多说了,唉,说也说不清楚。 我只是想说利用模板时一定要修的地方 一: #define EXT_CLK   ...… 查看全部问答> |
|
据说MSP430FR57中自带16KB的FRAM铁电随机存取存储器。自己以前从没有接触过FRAM,只是在大学里看过一本有关FRAM的书——铁电存储器,传说这本书是实践FRA理念的先辈编撰的。书的内容比较偏向于FRAM理论的研究 ...… 查看全部问答> |




