基于STM32F3烧写程序中B的意义是什么

今天在玩 STM32F3 Discovery 的时候, 烧写程序后,

FreeRTOS 运行一会就会跳转到 startup_stm32f30x.s 内的系统服务调用处理这段程序的“B 。”处, 如下。

SVC_HandlerPROC

EXPORTSVC_Handler[WEAK]

B.

ENDP

基于STM32F3烧写程序中B的意义是什么

查阅了一下 keil-MDK 的帮助文档, 在Built-in variables and constants 节找到了解释, 也就是跳转到当前行呀。

2333333. 如下图:

基于STM32F3烧写程序中B的意义是什么

好吧。 顺便解释一下 [WEAK] 的意义吧。 先看官方解释 :)

先上一句别处的零散话:

WEAK

symbolisonlyimportedintoothersourcesifnoothersourceexportsanalternativesymbol.

If[WEAK]isusedwithoutsymbol,allexportedsymbolsareweak.

基于STM32F3烧写程序中B的意义是什么

意思就是告诉链接器:

“我略弱但我很绅士, 如果你在别处看到和我一样的符号实例。你就用它吧。 表管我, 求忽视! ”

  • 基于STM32F3烧写程序中B的意义是什么已关闭评论
    A+
发布日期:2019年07月14日  所属分类:参考设计