在STM32启动汇编代码中,[WEAK]意味着什么?

2019-07-14 16:30发布

我正在阅读Keil软件中的STM32F407启动文件以收集一些信息。我遇到了这个问题:[WEAK]用于什么符号?此符号已用于的代码的一部分是:
  1. <font size="4">Reset_Handler    PROC
  2.                  EXPORT  Reset_Handler             [WEAK]
  3.         IMPORT  SystemInit
  4.         IMPORT  __main

  5.                  LDR     R0, =SystemInit
  6.                  BLX     R0
  7.                  LDR     R0, =__main
  8.                  BX      R0
  9.                  ENDP</font>
复制代码代码中还有其他地方使用过该符号。我只是将一个部分作为实例。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
1条回答
ROSE1017
1楼-- · 2019-07-14 19:38
它说该功能的实现应该是微弱的联系(而不是强烈联系,这是通常的)。

这允许在没有找到其他(强链接)的情况下提供功能的“后备”实现。

这通常用于裸机MCU框架中的默认中断处理程序。这样,当你实现一个中断时,你只需编写你的函数,而不必从源中删除默认函数,并且链接器完成这项工作。

一周热门 更多>