PlatformIO STM32duino Build Process / Startup

Build Type

build_type = release | debug

Build Configurations
Build options

platform.io ststm32

  "build": {
    "core": "stm32",
    "cpu": "cortex-m0",
    "extra_flags": "-DSTM32F072xB",
    "f_cpu": "48000000L",
    "mcu": "stm32f072rbt6",
    "product_line": "STM32F072xB",
    "variant": "NUCLEO_F072RB"
  },
[...]

Abbreviation

RCC Reset and Clock Controller
PWR Power Controller block
PLL Phase-Locked Loop
internal oscillator
RC-OSC resistor-capacitor oscillator
HSI High-speed internal RC oscillator
CSI Low-power internal RC oscillator
LSI Low-speed internal 32 kHz RC oscillator
external crystal or resonator
HSE High-speed external clock
LSE Low-speed external clock

Main

[...]
Reset_Handler:
  [...]
  /* Call the clock system intitialization function.*/
  bl  SystemInit

  /* Call static constructors */
  bl __libc_init_array

  /* Call the application's entry point.*/
  bl main

LoopForever:
  b LoopForever

[...]

g_pfnVectors:
  .word  _estack
  .word  Reset_Handler
  .word  NMI_Handler
  .word  HardFault_Handler
  .word  0
  .word  0
  .word  0
  .word  0
  .word  0
  .word  0
  .word  0
  .word  SVC_Handler
  .word  0
  .word  0
  .word  PendSV_Handler
  .word  SysTick_Handler
  .word  WWDG_IRQHandler                   /* Window WatchDog              */
  .word  PVD_VDDIO2_IRQHandler             /* PVD and VDDIO2 through EXTI Line detect */
  .word  RTC_IRQHandler                    /* RTC through the EXTI line    */
  .word  FLASH_IRQHandler                  /* FLASH                        */
  .word  RCC_CRS_IRQHandler                /* RCC and CRS                  */
  .word  EXTI0_1_IRQHandler                /* EXTI Line 0 and 1            */
  .word  EXTI2_3_IRQHandler                /* EXTI Line 2 and 3            */
  .word  EXTI4_15_IRQHandler               /* EXTI Line 4 to 15            */
  .word  TSC_IRQHandler                    /* TSC                          */
  .word  DMA1_Channel1_IRQHandler          /* DMA1 Channel 1               */
  .word  DMA1_Channel2_3_IRQHandler        /* DMA1 Channel 2 and Channel 3 */
  .word  DMA1_Channel4_5_6_7_IRQHandler    /* DMA1 Channel 4, Channel 5, Channel 6 and Channel 7*/
  .word  ADC1_COMP_IRQHandler              /* ADC1, COMP1 and COMP2         */
  .word  TIM1_BRK_UP_TRG_COM_IRQHandler    /* TIM1 Break, Update, Trigger and Commutation */
  .word  TIM1_CC_IRQHandler                /* TIM1 Capture Compare         */
  .word  TIM2_IRQHandler                   /* TIM2                         */
  .word  TIM3_IRQHandler                   /* TIM3                         */
  .word  TIM6_DAC_IRQHandler               /* TIM6 and DAC                 */
  .word  TIM7_IRQHandler                   /* TIM7                         */
  .word  TIM14_IRQHandler                  /* TIM14                        */
  .word  TIM15_IRQHandler                  /* TIM15                        */
  .word  TIM16_IRQHandler                  /* TIM16                        */
  .word  TIM17_IRQHandler                  /* TIM17                        */
  .word  I2C1_IRQHandler                   /* I2C1                         */
  .word  I2C2_IRQHandler                   /* I2C2                         */
  .word  SPI1_IRQHandler                   /* SPI1                         */
  .word  SPI2_IRQHandler                   /* SPI2                         */
  .word  USART1_IRQHandler                 /* USART1                       */
  .word  USART2_IRQHandler                 /* USART2                       */
  .word  USART3_4_IRQHandler               /* USART3 and USART4            */
  .word  CEC_CAN_IRQHandler                /* CEC and CAN                  */
  .word  USB_IRQHandler                    /* USB                          */

[...]
// Force init to be called *first*, i.e. before static object allocation.
// Otherwise, statically allocated objects that need HAL may fail.
__attribute__((constructor(101))) void premain()
{

  // Required by FreeRTOS, see http://www.freertos.org/RTOS-Cortex-M3-M4.html
#ifdef NVIC_PRIORITYGROUP_4
  HAL_NVIC_SetPriorityGrouping(NVIC_PRIORITYGROUP_4);
#endif
#if (__CORTEX_M == 0x07U)
  // Defined in CMSIS core_cm7.h
#ifndef I_CACHE_DISABLED
  SCB_EnableICache();
#endif
#ifndef D_CACHE_DISABLED
  SCB_EnableDCache();
#endif
#endif

  init();
}

/*
 * \brief Main entry point of Arduino application
 */
int main(void)
{
  initVariant();

  setup();

  for (;;) {
#if defined(CORE_CALLBACK)
    CoreCallback();
#endif
    loop();
    serialEventRun();
  }

  return 0;
}

void my_constructor1(void) __attribute__((constructor));
void my_constructor2(void) __attribute__((constructor(102)));
void my_constructor3(void) __attribute__((constructor(103)));

void my_constructor1(void) /* This is the 3rd constructor function to be called */
    printf("Called my_constructor1()\n");
}

void my_constructor2(void) /* This is the 1st constructor function to be called */
    printf("Called my_constructor2()\n");
}

void my_constructor3(void) /* This is the 2nd constructor function to be called */
    printf("Called my_constructor3()\n");
}

int main(void)
{
    printf("Called main()\n");
}

__attribute__((constructor(priority))) function attribute
__attribute__((constructor[(priority)]))

WEAK void init(void)
{
  hw_config_init();
}
/**
  * @brief  This function performs the global init of the system (HAL, IOs...)
  * @param  None
  * @retval None
  */
void hw_config_init(void)
{
  /* Init DWT if present */
#ifdef DWT_BASE
  dwt_init();
#endif

  /* Initialize the HAL */
  HAL_Init();

  /* Configure the system clock */
  SystemClock_Config();

#if defined (USBCON) && defined(USBD_USE_CDC)
  USBD_CDC_init();
#endif

#if defined (STM32MP1xx)
  __HAL_RCC_HSEM_CLK_ENABLE();
#endif

}
/**
  * @brief  This function configures the Flash prefetch,
  *        Configures time base source, NVIC and Low level hardware
  * @note This function is called at the beginning of program after reset and before 
  *       the clock configuration
  * @note The time base configuration is based on HSI clock when exiting from Reset.
  *       Once done, time base tick start incrementing.
  *       In the default implementation,Systick is used as source of time base.
  *       The tick variable is incremented each 1ms in its ISR.
  * @retval HAL status
  */
HAL_StatusTypeDef HAL_Init(void)
{
    [...]
}
#if !defined(HAL_I2C_MODULE_DISABLED)
  #define HAL_I2C_MODULE_ENABLED
#else
  #undef HAL_I2C_MODULE_ENABLED
#endif

[...]

/*
 * Unused HAL modules
 */
#if 0
  [...]
  HAL_I2S_MODULE_ENABLED
  [...]
#endif


[...]
[...]
#ifdef HAL_I2C_MODULE_ENABLED
#include "stm32g4xx_hal_i2c.h"
#endif /* HAL_I2C_MODULE_ENABLED */

#ifdef HAL_I2S_MODULE_ENABLED
#include "stm32g4xx_hal_i2s.h"
#endif /* HAL_I2S_MODULE_ENABLED */
[...]

Internal / External Oscillator

RCC_HSE_OFF

Disable
RCC_HSE_BYPASS

BYPASS Clock Source (from other MCU)
RCC_HSE_ON

Crystal/Ceramic Resonator (own XTAL)
/**
  * @brief  RCC Internal/External Oscillator (HSE, HSI, LSE and LSI) configuration structure definition  
  */
typedef struct
{
  uint32_t OscillatorType;
  uint32_t HSEState;
  uint32_t LSEState; 
  uint32_t HSIState;
  uint32_t HSICalibrationValue;
  uint32_t HSI14State;
  uint32_t HSI14CalibrationValue;
  uint32_t LSIState;
  uint32_t HSI48State; 
  RCC_PLLInitTypeDef PLL;
} RCC_OscInitTypeDef;

RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_NONE |
                                   RCC_OSCILLATORTYPE_HSE |
                                   RCC_OSCILLATORTYPE_HSI |
                                   RCC_OSCILLATORTYPE_LSE |
                                   RCC_OSCILLATORTYPE_LSI |
                                   RCC_OSCILLATORTYPE_HSI14 |
                                   RCC_OSCILLATORTYPE_HSI48;

/* PLL Source Mux */
RCC_OscInitStruct.PLL.PLLState  = RCC_PLL_ON;
RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE |
                                  RCC_PLLSOURCE_HSI |
                                  RCC_PLLSOURCE_HSI48

RCC_OscInitStruct.PLL.PLLMUL    = RCC_PLL_MUL6;
RCC_OscInitStruct.PLL.PREDIV    = RCC_PREDIV_DIV1;

/**
  * @brief  RCC System, AHB and APB busses clock configuration structure definition  
  */
typedef struct
{
  uint32_t ClockType;             /*!< The clock to be configured. */
  uint32_t SYSCLKSource;          /*!< The clock source (SYSCLKS). */
  uint32_t AHBCLKDivider;         /*!< The AHB clock (HCLK) divider. */
  uint32_t APB1CLKDivider;        /*!< The APB1 clock (PCLK1) divider. */
} RCC_ClkInitTypeDef;

RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK |
                              RCC_CLOCKTYPE_SYSCLK |
                              RCC_CLOCKTYPE_PCLK1;

/* System Clock Mux */
RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_HSI    |
                                 RCC_SYSCLKSOURCE_HSI48  |
                                 RCC_SYSCLKSOURCE_HSE    |
                                 RCC_SYSCLKSOURCE_PLLCLK;

How to check the operating clock speed?
Blue Pill clock define

Arduinos F_CPU

But it is never used in the source!

[...]
#ifndef F_CPU
  #define F_CPU SystemCoreClock
#endif
[...]

Internal

/**
  * @brief  System Clock Configuration
  * @param  None
  * @retval None
  */
WEAK void SystemClock_Config(void)
{
  RCC_OscInitTypeDef RCC_OscInitStruct;
  RCC_ClkInitTypeDef RCC_ClkInitStruct;

  RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI48;
  RCC_OscInitStruct.HSI48State = RCC_HSI48_ON;
  RCC_OscInitStruct.PLL.PLLState = RCC_PLL_NONE;
  HAL_RCC_OscConfig(&RCC_OscInitStruct);

  RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK | RCC_CLOCKTYPE_SYSCLK
                                | RCC_CLOCKTYPE_PCLK1;
  RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_HSI48;
  RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
  RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV1;
  HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_1);
}
[...]
extern uint32_t SystemCoreClock;          /*!< System Clock Frequency (Core Clock) */
[...]
/**
  * @brief  Initializes the CPU, AHB and APB buses clocks according to the specified 
  *         parameters in the RCC_ClkInitStruct.
  * @param  RCC_ClkInitStruct pointer to an RCC_OscInitTypeDef structure that
  *         contains the configuration information for the RCC peripheral.
  * @param  FLatency FLASH Latency                   
  *          The value of this parameter depend on device used within the same series
  * @note   The SystemCoreClock CMSIS variable is used to store System Clock Frequency 
  *         and updated by @ref HAL_RCC_GetHCLKFreq() function called within this function
  *
  * @note   The HSI is used (enabled by hardware) as system clock source after
  *         start-up from Reset, wake-up from STOP and STANDBY mode, or in case
  *         of failure of the HSE used directly or indirectly as system clock
  *         (if the Clock Security System CSS is enabled).
  *           
  * @note   A switch from one clock source to another occurs only if the target
  *         clock source is ready (clock stable after start-up delay or PLL locked). 
  *         If a clock source which is not yet ready is selected, the switch will
  *         occur when the clock source will be ready. 
  *         You can use @ref HAL_RCC_GetClockConfig() function to know which clock is
  *         currently used as system clock source.
  * @retval HAL status
  */
HAL_StatusTypeDef HAL_RCC_ClockConfig(RCC_ClkInitTypeDef  *RCC_ClkInitStruct, uint32_t FLatency)
{
  [...]
  
  /* Update the SystemCoreClock global variable */
  SystemCoreClock = HAL_RCC_GetSysClockFreq() >> AHBPrescTable[(RCC->CFGR & RCC_CFGR_HPRE)>> RCC_CFGR_HPRE_BITNUMBER];

  [...]
  
  return HAL_OK;
}

External (if possible)

/*
 * @brief  Configures the System clock source, PLL Multiplier and Divider factors,
 *               AHB/APBx prescalers and Flash settings
 * @note   This function should be called only once the RCC clock configuration
 *         is reset to the default reset state (done in SystemInit() function).
 * @param  None
 * @retval None
 */

/******************************************************************************/
/*            PLL (clocked by HSE) used as System clock source                */
/******************************************************************************/
static uint8_t SetSysClock_PLL_HSE(uint8_t bypass)
{
  RCC_OscInitTypeDef RCC_OscInitStruct;
  RCC_ClkInitTypeDef RCC_ClkInitStruct;

  /* The voltage scaling allows optimizing the power consumption when the device is
  clocked below the maximum system frequency, to update the voltage scaling value
  regarding system frequency refer to product datasheet. */
  __HAL_RCC_PWR_CLK_ENABLE();
  __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE2);

  // Enable HSE oscillator and activate PLL with HSE as source
  RCC_OscInitStruct.OscillatorType      = RCC_OSCILLATORTYPE_HSE;
  if (bypass == 0) {
    RCC_OscInitStruct.HSEState          = RCC_HSE_ON; // External 8 MHz xtal on OSC_IN/OSC_OUT
  } else {
    RCC_OscInitStruct.HSEState          = RCC_HSE_BYPASS; // External 8 MHz clock on OSC_IN
  }

  RCC_OscInitStruct.PLL.PLLState        = RCC_PLL_ON;
  RCC_OscInitStruct.PLL.PLLSource       = RCC_PLLSOURCE_HSE;
  RCC_OscInitStruct.PLL.PLLM            = HSE_VALUE / 1000000L; // Expects an 8 MHz external clock by default. Redefine HSE_VALUE if not
  RCC_OscInitStruct.PLL.PLLN            = 336;                  // VCO output clock = 336 MHz (1 MHz * 336)
  RCC_OscInitStruct.PLL.PLLP            = RCC_PLLP_DIV4;        // PLLCLK = 84 MHz (336 MHz / 4)
  RCC_OscInitStruct.PLL.PLLQ            = 7;                    // USB clock = 48 MHz (336 MHz / 7) --> OK for USB
  if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) {
    return 0; // FAIL
  }

  // Select PLL as system clock source and configure the HCLK, PCLK1 and PCLK2 clocks dividers
  RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_SYSCLK | RCC_CLOCKTYPE_HCLK | RCC_CLOCKTYPE_PCLK1 | RCC_CLOCKTYPE_PCLK2;
  RCC_ClkInitStruct.SYSCLKSource   = RCC_SYSCLKSOURCE_PLLCLK; // 84 MHz
  RCC_ClkInitStruct.AHBCLKDivider  = RCC_SYSCLK_DIV1;         // 84 MHz
  RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV2;           // 42 MHz
  RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1;           // 84 MHz
  if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_2) != HAL_OK) {
    return 0; // FAIL
  }

  /* Output clock on MCO1 pin(PA8) for debugging purpose */
  /*
  if (bypass == 0)
    HAL_RCC_MCOConfig(RCC_MCO1, RCC_MCO1SOURCE_HSE, RCC_MCODIV_2); // 4 MHz
  else
    HAL_RCC_MCOConfig(RCC_MCO1, RCC_MCO1SOURCE_HSE, RCC_MCODIV_1); // 8 MHz
  */

  return 1; // OK
}

/******************************************************************************/
/*            PLL (clocked by HSI) used as System clock source                */
/******************************************************************************/
uint8_t SetSysClock_PLL_HSI(void)
{
  RCC_OscInitTypeDef RCC_OscInitStruct;
  RCC_ClkInitTypeDef RCC_ClkInitStruct;

  /* The voltage scaling allows optimizing the power consumption when the device is
    clocked below the maximum system frequency, to update the voltage scaling value
    regarding system frequency refer to product datasheet. */
  __HAL_RCC_PWR_CLK_ENABLE();
  __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE2);

  // Enable HSI oscillator and activate PLL with HSI as source
  RCC_OscInitStruct.OscillatorType      = RCC_OSCILLATORTYPE_HSI | RCC_OSCILLATORTYPE_HSE;
  RCC_OscInitStruct.HSIState            = RCC_HSI_ON;
  RCC_OscInitStruct.HSEState            = RCC_HSE_OFF;
  RCC_OscInitStruct.HSICalibrationValue = RCC_HSICALIBRATION_DEFAULT;
  RCC_OscInitStruct.PLL.PLLState        = RCC_PLL_ON;
  RCC_OscInitStruct.PLL.PLLSource       = RCC_PLLSOURCE_HSI;
  RCC_OscInitStruct.PLL.PLLM            = 16;            // VCO input clock = 1 MHz (16 MHz / 16)
  RCC_OscInitStruct.PLL.PLLN            = 336;           // VCO output clock = 336 MHz (1 MHz * 336)
  RCC_OscInitStruct.PLL.PLLP            = RCC_PLLP_DIV4; // PLLCLK = 84 MHz (336 MHz / 4)
  RCC_OscInitStruct.PLL.PLLQ            = 7;             // USB clock = 48 MHz (336 MHz / 7) --> freq is ok but not precise enough
  if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) {
    return 0; // FAIL
  }

  /* Select PLL as system clock source and configure the HCLK, PCLK1 and PCLK2 clocks dividers */
  RCC_ClkInitStruct.ClockType      = (RCC_CLOCKTYPE_SYSCLK | RCC_CLOCKTYPE_HCLK | RCC_CLOCKTYPE_PCLK1 | RCC_CLOCKTYPE_PCLK2);
  RCC_ClkInitStruct.SYSCLKSource   = RCC_SYSCLKSOURCE_PLLCLK; // 84 MHz
  RCC_ClkInitStruct.AHBCLKDivider  = RCC_SYSCLK_DIV1;         // 84 MHz
  RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV2;           // 42 MHz
  RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1;           // 84 MHz
  if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_2) != HAL_OK) {
    return 0; // FAIL
  }

  /* Output clock on MCO1 pin(PA8) for debugging purpose */
  //HAL_RCC_MCOConfig(RCC_MCO1, RCC_MCO1SOURCE_HSI, RCC_MCODIV_1); // 16 MHz

  return 1; // OK
}

WEAK void SystemClock_Config(void)
{
  /* 1- If fail try to start with HSE and external xtal */
  if (SetSysClock_PLL_HSE(0) == 0) {
    /* 2- Try to start with HSE and external clock */
    if (SetSysClock_PLL_HSE(1) == 0) {
      /* 3- If fail start with HSI clock */
      if (SetSysClock_PLL_HSI() == 0) {
        Error_Handler();
      }
    }
  }
  /* Output clock on MCO2 pin(PC9) for debugging purpose */
  //HAL_RCC_MCOConfig(RCC_MCO2, RCC_MCO2SOURCE_SYSCLK, RCC_MCODIV_4);
}

Use STM32duino in STM32CubeIDE

Forum

Does STM32CubeIDE work with STM32duino?
STM32CubeIDE — using libs from arduino

STM32CubeIDE

17:10:11 **** Build of configuration Debug for project EvalBoardOledRotary ****
make -j4 all 
arm-none-eabi-gcc
"../Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal.c"
-mcpu=cortex-m0 -std=gnu11 -g3
-DUSE_HAL_DRIVER -DSTM32F072xB -DDEBUG
-c
-I../Core/Inc
-I../Drivers/STM32F0xx_HAL_Driver/Inc
-I../Drivers/STM32F0xx_HAL_Driver/Inc/Legacy
-I../Drivers/CMSIS/Device/ST/STM32F0xx/Include
-I../Drivers/CMSIS/Include
-O0 -ffunction-sections -fdata-sections -Wall -fstack-usage
-MMD -MP -MF"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal.d"
-MT"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal.o"
--specs=nano.specs -mfloat-abi=soft -mthumb
-o "Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal.o"

arm-none-eabi-gcc "../Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_cortex.c" -mcpu=cortex-m0 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32F072xB -DDEBUG -c -I../Core/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32F0xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_cortex.d" -MT"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_cortex.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_cortex.o"
arm-none-eabi-gcc "../Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_dma.c" -mcpu=cortex-m0 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32F072xB -DDEBUG -c -I../Core/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32F0xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_dma.d" -MT"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_dma.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_dma.o"
arm-none-eabi-gcc "../Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.c" -mcpu=cortex-m0 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32F072xB -DDEBUG -c -I../Core/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32F0xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.d" -MT"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_exti.o"
arm-none-eabi-gcc "../Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_flash.c" -mcpu=cortex-m0 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32F072xB -DDEBUG -c -I../Core/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32F0xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_flash.d" -MT"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_flash.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_flash.o"
arm-none-eabi-gcc "../Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_flash_ex.c" -mcpu=cortex-m0 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32F072xB -DDEBUG -c -I../Core/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32F0xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_flash_ex.d" -MT"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_flash_ex.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_flash_ex.o"
arm-none-eabi-gcc "../Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_gpio.c" -mcpu=cortex-m0 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32F072xB -DDEBUG -c -I../Core/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32F0xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_gpio.d" -MT"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_gpio.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_gpio.o"
arm-none-eabi-gcc "../Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_i2c.c" -mcpu=cortex-m0 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32F072xB -DDEBUG -c -I../Core/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32F0xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_i2c.d" -MT"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_i2c.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_i2c.o"
arm-none-eabi-gcc "../Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_i2c_ex.c" -mcpu=cortex-m0 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32F072xB -DDEBUG -c -I../Core/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32F0xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_i2c_ex.d" -MT"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_i2c_ex.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_i2c_ex.o"
arm-none-eabi-gcc "../Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pwr.c" -mcpu=cortex-m0 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32F072xB -DDEBUG -c -I../Core/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32F0xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pwr.d" -MT"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pwr.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pwr.o"
arm-none-eabi-gcc "../Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pwr_ex.c" -mcpu=cortex-m0 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32F072xB -DDEBUG -c -I../Core/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32F0xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pwr_ex.d" -MT"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pwr_ex.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_pwr_ex.o"
arm-none-eabi-gcc "../Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_rcc.c" -mcpu=cortex-m0 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32F072xB -DDEBUG -c -I../Core/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32F0xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_rcc.d" -MT"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_rcc.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_rcc.o"
arm-none-eabi-gcc "../Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_rcc_ex.c" -mcpu=cortex-m0 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32F072xB -DDEBUG -c -I../Core/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32F0xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_rcc_ex.d" -MT"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_rcc_ex.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_rcc_ex.o"
arm-none-eabi-gcc "../Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_tim.c" -mcpu=cortex-m0 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32F072xB -DDEBUG -c -I../Core/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32F0xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_tim.d" -MT"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_tim.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_tim.o"
arm-none-eabi-gcc "../Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_tim_ex.c" -mcpu=cortex-m0 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32F072xB -DDEBUG -c -I../Core/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32F0xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_tim_ex.d" -MT"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_tim_ex.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_tim_ex.o"
arm-none-eabi-gcc "../Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_uart.c" -mcpu=cortex-m0 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32F072xB -DDEBUG -c -I../Core/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32F0xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_uart.d" -MT"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_uart.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_uart.o"
arm-none-eabi-gcc "../Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_uart_ex.c" -mcpu=cortex-m0 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32F072xB -DDEBUG -c -I../Core/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32F0xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_uart_ex.d" -MT"Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_uart_ex.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_uart_ex.o"
arm-none-eabi-gcc -mcpu=cortex-m0 -g3 -c -x assembler-with-cpp -MMD -MP -MF"Core/Startup/startup_stm32f072rbtx.d" -MT"Core/Startup/startup_stm32f072rbtx.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Core/Startup/startup_stm32f072rbtx.o" "../Core/Startup/startup_stm32f072rbtx.s"
arm-none-eabi-gcc "../Core/Src/main.c" -mcpu=cortex-m0 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32F072xB -DDEBUG -c -I../Core/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32F0xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Core/Src/main.d" -MT"Core/Src/main.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Core/Src/main.o"
arm-none-eabi-gcc "../Core/Src/stm32f0xx_hal_msp.c" -mcpu=cortex-m0 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32F072xB -DDEBUG -c -I../Core/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32F0xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Core/Src/stm32f0xx_hal_msp.d" -MT"Core/Src/stm32f0xx_hal_msp.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Core/Src/stm32f0xx_hal_msp.o"
arm-none-eabi-gcc "../Core/Src/stm32f0xx_it.c" -mcpu=cortex-m0 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32F072xB -DDEBUG -c -I../Core/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32F0xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Core/Src/stm32f0xx_it.d" -MT"Core/Src/stm32f0xx_it.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Core/Src/stm32f0xx_it.o"
arm-none-eabi-gcc "../Core/Src/syscalls.c" -mcpu=cortex-m0 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32F072xB -DDEBUG -c -I../Core/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32F0xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Core/Src/syscalls.d" -MT"Core/Src/syscalls.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Core/Src/syscalls.o"
arm-none-eabi-gcc "../Core/Src/sysmem.c" -mcpu=cortex-m0 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32F072xB -DDEBUG -c -I../Core/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32F0xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Core/Src/sysmem.d" -MT"Core/Src/sysmem.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Core/Src/sysmem.o"
arm-none-eabi-gcc "../Core/Src/system_stm32f0xx.c" -mcpu=cortex-m0 -std=gnu11 -g3 -DUSE_HAL_DRIVER -DSTM32F072xB -DDEBUG -c -I../Core/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc -I../Drivers/STM32F0xx_HAL_Driver/Inc/Legacy -I../Drivers/CMSIS/Device/ST/STM32F0xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Core/Src/system_stm32f0xx.d" -MT"Core/Src/system_stm32f0xx.o" --specs=nano.specs -mfloat-abi=soft -mthumb -o "Core/Src/system_stm32f0xx.o"

arm-none-eabi-g++
-o "EvalBoardOledRotary.elf"
@"objects.list"
-mcpu=cortex-m0
-T"C:\Users\andreas\STM32CubeIDE\workspace_1.5.1\EvalBoardOledRotary\STM32F072RBTX_FLASH.ld"
--specs=nosys.specs
-Wl,-Map="EvalBoardOledRotary.map"
-Wl,--gc-sections -static --specs=nano.specs -mfloat-abi=soft -mthumb
-Wl,--start-group -lc -lm -lstdc++ -lsupc++ -Wl,--end-group
Finished building target: EvalBoardOledRotary.elf
 
arm-none-eabi-size   EvalBoardOledRotary.elf 
arm-none-eabi-objdump -h -S  EvalBoardOledRotary.elf  > "EvalBoardOledRotary.list"
arm-none-eabi-objcopy  -O binary  EvalBoardOledRotary.elf  "EvalBoardOledRotary.bin"
   text	   data	    bss	    dec	    hex	filename
   7724	     20	   1700	   9444	   24e4	EvalBoardOledRotary.elf
Finished building: default.size.stdout
 
Finished building: EvalBoardOledRotary.bin
Finished building: EvalBoardOledRotary.list
 

Nucleo G474RB

  • CMSIS_STARTUP_FILE
  • CUSTOM_STARTUP_FILE
// C:\Users\bacr\.platformio\packages\framework-arduinoststm32\system\Drivers\CMSIS\Device\ST\STM32G4xx\Source\Templates\gcc
$ /c/Users/bacr/.platformio/packages/toolchain-gccarmnoneeabi/bin/arm-none-eabi-readelf -e .pio/build/nucleo_g474re/firmware.elf
ELF Header:
  Magic:   7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
  Class:                             ELF32
  Data:                              2's complement, little endian
  Version:                           1 (current)
  OS/ABI:                            UNIX - System V
  ABI Version:                       0
  Type:                              EXEC (Executable file)
  Machine:                           ARM
  Version:                           0x1
  Entry point address:               0x800b9a9
  Start of program headers:          52 (bytes into file)
  Start of section headers:          259544 (bytes into file)
  Flags:                             0x5000400, Version5 EABI, hard-float ABI
  Size of this header:               52 (bytes)
  Size of program headers:           32 (bytes)
  Number of program headers:         4
  Size of section headers:           40 (bytes)
  Number of section headers:         19
  Section header string table index: 18

Section Headers:
  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al
  [ 0]                   NULL            00000000 000000 000000 00      0   0  0
  [ 1] .isr_vector       PROGBITS        08000000 010000 0001d8 00   A  0   0  1
  [ 2] .text             PROGBITS        080001e0 0101e0 00e9f0 00  AX  0   0 16
  [ 3] .rodata           PROGBITS        0800ebd0 01ebd0 002f3c 00   A  0   0  8
  [ 4] .ARM.extab        PROGBITS        08011b0c 0308c4 000000 00   W  0   0  1
  [ 5] .ARM              ARM_EXIDX       08011b0c 021b0c 000008 00  AL  2   0  4
  [ 6] .preinit_array    PREINIT_ARRAY   08011b14 0308c4 000000 04  WA  0   0  1
  [ 7] .init_array       INIT_ARRAY      08011b14 021b14 000024 04  WA  0   0  4
  [ 8] .fini_array       FINI_ARRAY      08011b38 021b38 00000c 04  WA  0   0  4
  [ 9] .data             PROGBITS        20000000 030000 0008c4 00  WA  0   0  4
  [10] .bss              NOBITS          200008c8 0308c8 001984 00  WA  0   0  8
  [11] .noinit           PROGBITS        2000224c 0308c4 000000 00   W  0   0  1
  [12] ._user_heap_stack NOBITS          2000224c 03224c 000604 00  WA  0   0  1
  [13] .ARM.attributes   ARM_ATTRIBUTES  00000000 0308c4 000030 00      0   0  1
  [14] .comment          PROGBITS        00000000 0308f4 000066 01  MS  0   0  1
  [15] .debug_frame      PROGBITS        00000000 03095c 00128c 00      0   0  4
  [16] .symtab           SYMTAB          00000000 031be8 0088f0 10     17 1419  4
  [17] .strtab           STRTAB          00000000 03a4d8 005048 00      0   0  1
  [18] .shstrtab         STRTAB          00000000 03f520 0000b7 00      0   0  1
Key to Flags:
  W (write), A (alloc), X (execute), M (merge), S (strings), I (info),
  L (link order), O (extra OS processing required), G (group), T (TLS),
  C (compressed), x (unknown), o (OS specific), E (exclude),
  y (purecode), p (processor specific)

Program Headers:
  Type           Offset   VirtAddr   PhysAddr   FileSiz MemSiz  Flg Align
  LOAD           0x010000 0x08000000 0x08000000 0x11b44 0x11b44 RWE 0x10000
  LOAD           0x030000 0x20000000 0x08011b44 0x008c4 0x008c4 RW  0x10000
  LOAD           0x0308c8 0x200008c8 0x08012408 0x00000 0x01984 RW  0x10000
  LOAD           0x03224c 0x2000224c 0x2000224c 0x00000 0x00604 RW  0x10000

 Section to Segment mapping:
  Segment Sections...
   00     .isr_vector .text .rodata .ARM .init_array .fini_array
   01     .data
   02     .bss
   03     ._user_heap_stack

$ /c/Users/bacr/.platformio/packages/toolchain-gccarmnoneeabi/bin/arm-none-eabi-objdump.exe -f .pio/build/nucleo_g474re/firmware.elf
.pio/build/nucleo_g474re/firmware.elf:     file format elf32-littlearm
architecture: armv7e-m, flags 0x00000112:
EXEC_P, HAS_SYMS, D_PAGED
start address 0x0800b9a9


$ /c/Users/bacr/.platformio/packages/toolchain-gccarmnoneeabi/bin/arm-none-eabi-objdump.exe -D .pio/build/nucleo_g474re/firmware.elf | grep -C 10 ADC1_2_IRQHandler
0800b9de <LoopForever>:
 800b9de:       e7fe            b.n     800b9de <LoopForever>
 800b9e0:       20020000        andcs   r0, r2, r0
 800b9e4:       20000000        andcs   r0, r0, r0
 800b9e8:       200008c4        andcs   r0, r0, r4, asr #17
 800b9ec:       08011b44        stmdaeq r1, {r2, r6, r8, r9, fp, ip}
 800b9f0:       200008c8        andcs   r0, r0, r8, asr #17
 800b9f4:       2000224c        andcs   r2, r0, ip, asr #4

0800b9f8 <ADC1_2_IRQHandler>:
 800b9f8:       e7fe            b.n     800b9f8 <ADC1_2_IRQHandler>
        ...

0800b9fc <pinMode>:
 800b9fc:       b2c3            uxtb    r3, r0
packages/toolchain-gccarmnoneeabi/bin/arm-none-eabi-gcc

arm-none-eabi-gcc
-x assembler-with-cpp
-mfpu=fpv4-sp-d16
-mfloat-abi=hard
-Os
-mcpu=cortex-m4
-mthumb
-ffunction-sections
-fdata-sections
-nostdlib
--param max-inline-insns-single=500
-DPLATFORMIO=50202
-DSTM32G4xx
-DSTM32G474xx
-DPIO_FRAMEWORK_ARDUINO_NANOLIB_FLOAT_PRINTF
-DENABLE_HWSERIAL3
-DPIN_SERIAL_RX=PC0
-DPIN_SERIAL_TX=PC1
-DPIN_SERIAL3_RX=PB11
-DPIN_SERIAL3_TX=PB10
-DSERIAL_RX_BUFFER_SIZE=256
-DSERIAL_TX_BUFFER_SIZE=256
-DPIN_WIRE_SDA=PC9
-DPIN_WIRE_SCL=PC8
-DSTM32G4xx
-DARDUINO=10808
-DARDUINO_ARCH_STM32
-DARDUINO_NUCLEO_G474RE
-DBOARD_NAME=\"NUCLEO_G474RE\"
-DHAL_UART_MODULE_ENABLED
-DUSE_FULL_LL_DRIVER
-DVARIANT_H=\"variant_NUCLEO_G474RE.h\"
-IC:\Users\bacr\.platformio\packages\framework-arduinoststm32\cores\arduino\avr
-IC:\Users\bacr\.platformio\packages\framework-arduinoststm32\cores\arduino\stm32
-IC:\Users\bacr\.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\LL
-IC:\Users\bacr\.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\usb
-IC:\Users\bacr\.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\OpenAMP
-IC:\Users\bacr\.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\usb\hid
-IC:\Users\bacr\.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\usb\cdc
-IC:\Users\bacr\.platformio\packages\framework-arduinoststm32\system\Drivers\STM32G4xx_HAL_Driver\Inc
-IC:\Users\bacr\.platformio\packages\framework-arduinoststm32\system\Drivers\STM32G4xx_HAL_Driver\Src
-IC:\Users\bacr\.platformio\packages\framework-arduinoststm32\system\STM32G4xx
-IC:\Users\bacr\.platformio\packages\framework-arduinoststm32\system\Middlewares\ST\STM32_USB_Device_Library\Core\Inc
-IC:\Users\bacr\.platformio\packages\framework-arduinoststm32\system\Middlewares\ST\STM32_USB_Device_Library\Core\Src
-IC:\Users\bacr\.platformio\packages\framework-arduinoststm32\system\Middlewares\OpenAMP
-IC:\Users\bacr\.platformio\packages\framework-arduinoststm32\system\Middlewares\OpenAMP\open-amp\lib\include
-IC:\Users\bacr\.platformio\packages\framework-arduinoststm32\system\Middlewares\OpenAMP\libmetal\lib\include
-IC:\Users\bacr\.platformio\packages\framework-arduinoststm32\system\Middlewares\OpenAMP\virtual_driver
-IC:\Users\bacr\.platformio\packages\framework-cmsis\CMSIS\Core\Include
-IC:\Users\bacr\.platformio\packages\framework-arduinoststm32\system\Drivers\CMSIS\Device\ST\STM32G4xx\Include
-IC:\Users\bacr\.platformio\packages\framework-arduinoststm32\system\Drivers\CMSIS\Device\ST\STM32G4xx\Source\Templates\gcc
-IC:\Users\bacr\.platformio\packages\framework-cmsis\CMSIS\DSP\Include
-IC:\Users\bacr\.platformio\packages\framework-cmsis\CMSIS\DSP\PrivateInclude
-IC:\Users\bacr\.platformio\packages\framework-arduinoststm32\cores\arduino
-IC:\Users\bacr\.platformio\packages\framework-arduinoststm32\variants\STM32G4xx\G473R(B-C-E)T_G474R(B-C-E)T_G483RET_G484RET
-c
-o
.pio\build\nucleo_g474re\FrameworkArduino\stm32\startup_stm32yyxx.S.o
C:\Users\bacr\.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\startup_stm32yyxx.S

Nucleo F072RB

[...]
#if !defined(CMSIS_STARTUP_FILE) && !defined(CUSTOM_STARTUP_FILE)
  [...]
  #elif defined(STM32F072xB)
    #define CMSIS_STARTUP_FILE "startup_stm32f072xb.s"
  [...]
Building in debug mode
.platformio\packages\framework-arduinoststm32\variants\NUCLEO_F072RB\PeripheralPins.c
.platformio\packages\framework-arduinoststm32\variants\NUCLEO_F072RB\variant.cpp
.platformio\packages\framework-arduinoststm32\cores\arduino\HardwareSerial.cpp
.platformio\packages\framework-arduinoststm32\cores\arduino\HardwareTimer.cpp
.platformio\packages\framework-arduinoststm32\cores\arduino\IPAddress.cpp
.platformio\packages\framework-arduinoststm32\cores\arduino\Print.cpp
.platformio\packages\framework-arduinoststm32\cores\arduino\RingBuffer.cpp
.platformio\packages\framework-arduinoststm32\cores\arduino\Stream.cpp
.platformio\packages\framework-arduinoststm32\cores\arduino\Tone.cpp
.platformio\packages\framework-arduinoststm32\cores\arduino\USBSerial.cpp
.platformio\packages\framework-arduinoststm32\cores\arduino\VirtIOSerial.cpp
.platformio\packages\framework-arduinoststm32\cores\arduino\WInterrupts.cpp
.platformio\packages\framework-arduinoststm32\cores\arduino\WMath.cpp
.platformio\packages\framework-arduinoststm32\cores\arduino\WSerial.cpp
.platformio\packages\framework-arduinoststm32\cores\arduino\WString.cpp
.platformio\packages\framework-arduinoststm32\cores\arduino\abi.cpp
.platformio\packages\framework-arduinoststm32\cores\arduino\avr\dtostrf.c
.platformio\packages\framework-arduinoststm32\cores\arduino\board.c
.platformio\packages\framework-arduinoststm32\cores\arduino\hooks.c
.platformio\packages\framework-arduinoststm32\cores\arduino\itoa.c
.platformio\packages\framework-arduinoststm32\cores\arduino\main.cpp
.platformio\packages\framework-arduinoststm32\cores\arduino\new.cpp
.platformio\packages\framework-arduinoststm32\cores\arduino\pins_arduino.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\OpenAMP\libmetal\device.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\OpenAMP\libmetal\generic\condition.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\OpenAMP\libmetal\generic\cortexm\sys.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\OpenAMP\libmetal\generic\generic_device.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\OpenAMP\libmetal\generic\generic_init.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\OpenAMP\libmetal\generic\generic_io.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\OpenAMP\libmetal\generic\generic_shmem.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\OpenAMP\libmetal\generic\time.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\OpenAMP\libmetal\init.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\OpenAMP\libmetal\io.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\OpenAMP\libmetal\log.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\OpenAMP\libmetal\shmem.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\OpenAMP\mbox_ipcc.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\OpenAMP\open-amp\remoteproc\remoteproc_virtio.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\OpenAMP\open-amp\rpmsg\rpmsg.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\OpenAMP\open-amp\rpmsg\rpmsg_virtio.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\OpenAMP\openamp.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\OpenAMP\rsc_table.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\OpenAMP\virt_uart.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\OpenAMP\virtio\virtio.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\OpenAMP\virtio\virtqueue.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\OpenAMP\virtio_buffer.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\OpenAMP\virtio_log.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\startup_stm32yyxx.S
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\usb\cdc\cdc_queue.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\usb\cdc\usbd_cdc.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\usb\cdc\usbd_cdc_if.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\usb\hid\usbd_hid_composite.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\usb\hid\usbd_hid_composite_if.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\usb\usb_device_core.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\usb\usb_device_ctlreq.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\usb\usb_device_ioreq.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\usb\usbd_conf.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\usb\usbd_desc.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\usb\usbd_ep_conf.c
.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\usb\usbd_if.c
.platformio\packages\framework-arduinoststm32\cores\arduino\wiring_analog.c
.platformio\packages\framework-arduinoststm32\cores\arduino\wiring_digital.c
.platformio\packages\framework-arduinoststm32\cores\arduino\wiring_pulse.cpp
.platformio\packages\framework-arduinoststm32\cores\arduino\wiring_shift.c
.platformio\packages\framework-arduinoststm32\cores\arduino\wiring_time.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_adc.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_adc_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_can.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_cec.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_comp.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_comp_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_cordic.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_cortex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_crc.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_crc_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_cryp.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_cryp_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_dac.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_dac_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_dcmi.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_dcmi_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_dfsdm.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_dfsdm_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_dma.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_dma2d.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_dsi.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_dma_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_dts.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_eth.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_eth_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_fdcan.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_exti.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_firewall.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_flash.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_flash_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_flash_ramfunc.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_fmac.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_fmpi2c.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_fmpi2c_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_gfxmmu.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_gpio.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_gpio_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_hash_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_hash.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_hcd.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_hrtim.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_hsem.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_i2c.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_i2c_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_i2s.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_i2s_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_ipcc.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_irda.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_iwdg.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_jpeg.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_lcd.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_lptim.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_ltdc_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_ltdc.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_mdma.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_mdios.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_mmc_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_mmc.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_nor.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_nand.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_opamp.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_opamp_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_ospi.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_otfdec.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_pccard.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_pcd.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_pcd_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_pssi.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_pka.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_pwr_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_pwr.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_qspi.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_ramecc.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_rcc.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_rng.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_rcc_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_rng_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_rtc.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_rtc_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_sai.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_sai_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_sd.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_sd_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_sdadc.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_smartcard.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_sdram.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_smbus.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_smartcard_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_spdifrx.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_spi.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_spi_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_sram.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_swpmi.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_tim.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_tim_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_uart.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_tsc.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_uart_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_usart.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_usart_ex.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_wwdg.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_bdma.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_adc.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_cordic.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_comp.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_crc.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_crs.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_dac.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_delayblock.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_dma.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_dma2d.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_exti.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_fmc.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_fmac.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_gpio.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_fsmc.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_hrtim.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_i2c.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_lptim.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_mdma.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_lpuart.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_opamp.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_pka.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_pwr.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_rcc.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_rng.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_sdmmc.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_rtc.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_swpmi.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_spi.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_ucpd.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_tim.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_usb.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_usart.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\stm32\PortNames.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\LL\stm32yyxx_ll_utils.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\stm32\analog.cpp
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\stm32\bootloader.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\stm32\clock.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\stm32\core_callback.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\stm32\dwt.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\stm32\hw_config.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\stm32\interrupt.cpp
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\stm32\lock_resource.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\stm32\pinmap.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\stm32\low_power.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\stm32\rtc.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\stm32\stm32_def.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\stm32\stm32_eeprom.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\stm32\system_stm32yyxx.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\stm32\timer.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\stm32\uart.c
.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\syscalls.c
src\main.cpp

Nucleo G071RB

arm-none-eabi-gcc
-o .pio\build\nucleo_g071rb\FrameworkArduinoVariant\PeripheralPins.c.o
-c -std=gnu11 -Os
-mcpu=cortex-m0plus -mthumb -ffunction-sections -fdata-sections -Wall -nostdlib --param max-inline-insns-single=500
-DPLATFORMIO=50100 -DSTM32G0xx -DSTM32G071xx -DSTM32G0xx -DARDUINO=10808
-DARDUINO_ARCH_STM32 -DARDUINO_NUCLEO_G071RB -DBOARD_NAME=\"NUCLEO_G071RB\"
-DHAL_UART_MODULE_ENABLED -D__CORTEX_SC=0
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\cores\arduino\avr 
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\cores\arduino\stm32 
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\LL 
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\usb 
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\OpenAMP 
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\usb\hid 
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\usb\cdc 
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\system\Drivers\STM32G0xx_HAL_Driver\Inc 
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\system\Drivers\STM32G0xx_HAL_Driver\Src 
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\system\STM32G0xx 
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\system\Middlewares\ST\STM32_USB_Device_Library\Core\Inc 
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\system\Middlewares\ST\STM32_USB_Device_Library\Core\Src 
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\system\Middlewares\OpenAMP 
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\system\Middlewares\OpenAMP\open-amp\lib\include 
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\system\Middlewares\OpenAMP\libmetal\lib\include 
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\system\Middlewares\OpenAMP\virtual_driver 
-IC:\Users\andreas\.platformio\packages\framework-cmsis\CMSIS\Core\Include 
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\system\Drivers\CMSIS\Device\ST\STM32G0xx\Include 
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\system\Drivers\CMSIS\Device\ST\STM32G0xx\Source\Templates\gcc 
-IC:\Users\andreas\.platformio\packages\framework-cmsis\CMSIS\DSP\Include 
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\cores\arduino 
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\variants\NUCLEO_G071RB 
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\variants\NUCLEO_G071RB
C:\Users\andreas\.platformio\packages\framework-arduinoststm32\variants\NUCLEO_G071RB\PeripheralPins.c

[...]

arm-none-eabi-gcc
-o .pio\build\nucleo_g071rb\SrcWrapper\src\HAL\stm32yyxx_hal_smartcard_ex.c.o
-c -std=gnu11 -Os
-mcpu=cortex-m0plus -mthumb -ffunction-sections -fdata-sections -Wall -nostdlib --param max-inline-insns-single=500
-DPLATFORMIO=50100 -DSTM32G0xx -DSTM32G071xx -DSTM32G0xx -DARDUINO=10808
-DARDUINO_ARCH_STM32 -DARDUINO_NUCLEO_G071RB -DBOARD_NAME=\"NUCLEO_G071RB\"
-DHAL_UART_MODULE_ENABLED -D__CORTEX_SC=0
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\cores\arduino\avr
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\cores\arduino\stm32
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\LL
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\usb
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\OpenAMP
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\usb\hid
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\cores\arduino\stm32\usb\cdc
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\system\Drivers\STM32G0xx_HAL_Driver\Inc
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\system\Drivers\STM32G0xx_HAL_Driver\Src
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\system\STM32G0xx
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\system\Middlewares\ST\STM32_USB_Device_Library\Core\Inc
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\system\Middlewares\ST\STM32_USB_Device_Library\Core\Src
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\system\Middlewares\OpenAMP
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\system\Middlewares\OpenAMP\open-amp\lib\include
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\system\Middlewares\OpenAMP\libmetal\lib\include
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\system\Middlewares\OpenAMP\virtual_driver
-IC:\Users\andreas\.platformio\packages\framework-cmsis\CMSIS\Core\Include
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\system\Drivers\CMSIS\Device\ST\STM32G0xx\Include
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\system\Drivers\CMSIS\Device\ST\STM32G0xx\Source\Templates\gcc
-IC:\Users\andreas\.platformio\packages\framework-cmsis\CMSIS\DSP\Include
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\cores\arduino
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\variants\NUCLEO_G071RB
-IC:\Users\andreas\.platformio\packages\framework-arduinoststm32\variants\NUCLEO_G071RB
C:\Users\andreas\.platformio\packages\framework-arduinoststm32\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_smartcard_ex.c

[...]
arm-none-eabi-g++
-o .pio/build/nucleo_g071rb/firmware.elf
-T C:/Users/andreas/.platformio/packages/framework-arduinoststm32/system/ldscript.ld
-Os -mthumb -mcpu=cortex-m0plus
--specs=nano.specs
-Wl,--gc-sections,--relax -Wl,--check-sections -Wl,--entry=Reset_Handler
-Wl,--unresolved-symbols=report-all -Wl,--warn-common -Wl,--defsym=LD_MAX_SIZE=131072
-Wl,--defsym=LD_MAX_DATA_SIZE=36864 -Wl,--defsym=LD_FLASH_OFFSET=0x0
-Wl,--default-script C:/Users/andreas/.platformio/packages/framework-arduinoststm32/variants/NUCLEO_G071RB/ldscript.ld
.pio/build/nucleo_g071rb/FrameworkArduinoVariant/PeripheralPins.c.o
.pio/build/nucleo_g071rb/FrameworkArduinoVariant/variant.cpp.o
.pio/build/nucleo_g071rb/FrameworkArduino/HardwareSerial.cpp.o
.pio/build/nucleo_g071rb/FrameworkArduino/HardwareTimer.cpp.o
.pio/build/nucleo_g071rb/FrameworkArduino/IPAddress.cpp.o
.pio/build/nucleo_g071rb/FrameworkArduino/Print.cpp.o
.pio/build/nucleo_g071rb/FrameworkArduino/RingBuffer.cpp.o
.pio/build/nucleo_g071rb/FrameworkArduino/Stream.cpp.o
.pio/build/nucleo_g071rb/FrameworkArduino/Tone.cpp.o
.pio/build/nucleo_g071rb/FrameworkArduino/USBSerial.cpp.o
.pio/build/nucleo_g071rb/FrameworkArduino/VirtIOSerial.cpp.o
.pio/build/nucleo_g071rb/FrameworkArduino/WInterrupts.cpp.o
.pio/build/nucleo_g071rb/FrameworkArduino/WMath.cpp.o
.pio/build/nucleo_g071rb/FrameworkArduino/WSerial.cpp.o
.pio/build/nucleo_g071rb/FrameworkArduino/WString.cpp.o
.pio/build/nucleo_g071rb/FrameworkArduino/abi.cpp.o
.pio/build/nucleo_g071rb/FrameworkArduino/avr/dtostrf.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/board.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/hooks.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/itoa.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/main.cpp.o
.pio/build/nucleo_g071rb/FrameworkArduino/new.cpp.o
.pio/build/nucleo_g071rb/FrameworkArduino/pins_arduino.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/OpenAMP/libmetal/device.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/OpenAMP/libmetal/generic/condition.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/OpenAMP/libmetal/generic/cortexm/sys.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/OpenAMP/libmetal/generic/generic_device.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/OpenAMP/libmetal/generic/generic_init.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/OpenAMP/libmetal/generic/generic_io.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/OpenAMP/libmetal/generic/generic_shmem.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/OpenAMP/libmetal/generic/time.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/OpenAMP/libmetal/init.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/OpenAMP/libmetal/io.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/OpenAMP/libmetal/log.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/OpenAMP/libmetal/shmem.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/OpenAMP/mbox_ipcc.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/OpenAMP/open-amp/remoteproc/remoteproc_virtio.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/OpenAMP/open-amp/rpmsg/rpmsg.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/OpenAMP/open-amp/rpmsg/rpmsg_virtio.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/OpenAMP/openamp.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/OpenAMP/rsc_table.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/OpenAMP/virt_uart.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/OpenAMP/virtio/virtio.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/OpenAMP/virtio/virtqueue.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/OpenAMP/virtio_buffer.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/OpenAMP/virtio_log.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/startup_stm32yyxx.S.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/usb/cdc/cdc_queue.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/usb/cdc/usbd_cdc.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/usb/cdc/usbd_cdc_if.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/usb/hid/usbd_hid_composite.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/usb/hid/usbd_hid_composite_if.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/usb/usb_device_core.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/usb/usb_device_ctlreq.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/usb/usb_device_ioreq.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/usb/usbd_conf.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/usb/usbd_desc.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/usb/usbd_ep_conf.c.o
.pio/build/nucleo_g071rb/FrameworkArduino/stm32/usb/usbd_if.c.o 
.pio/build/nucleo_g071rb/FrameworkArduino/wiring_analog.c.o 
.pio/build/nucleo_g071rb/FrameworkArduino/wiring_digital.c.o 
.pio/build/nucleo_g071rb/FrameworkArduino/wiring_pulse.cpp.o 
.pio/build/nucleo_g071rb/FrameworkArduino/wiring_shift.c.o 
.pio/build/nucleo_g071rb/FrameworkArduino/wiring_time.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_adc.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_adc_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_can.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_cec.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_comp.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_comp_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_cordic.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_cortex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_crc.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_crc_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_cryp.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_cryp_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_dac.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_dac_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_dcmi.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_dcmi_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_dfsdm.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_dfsdm_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_dma.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_dma2d.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_dma_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_dsi.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_dts.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_eth.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_eth_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_exti.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_fdcan.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_firewall.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_flash.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_flash_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_flash_ramfunc.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_fmac.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_fmpi2c.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_fmpi2c_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_gfxmmu.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_gpio.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_gpio_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_hash.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_hash_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_hcd.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_hrtim.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_hsem.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_i2c.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_i2c_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_i2s.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_i2s_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_ipcc.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_irda.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_iwdg.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_jpeg.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_lcd.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_lptim.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_ltdc.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_ltdc_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_mdios.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_mdma.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_mmc.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_mmc_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_nand.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_nor.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_opamp.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_opamp_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_ospi.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_otfdec.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_pccard.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_pcd.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_pcd_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_pka.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_pssi.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_pwr.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_pwr_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_qspi.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_ramecc.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_rcc.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_rcc_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_rng.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_rng_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_rtc.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_rtc_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_sai.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_sai_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_sd.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_sd_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_sdadc.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_sdram.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_smartcard.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_smartcard_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_smbus.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_spdifrx.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_spi.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_spi_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_sram.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_swpmi.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_tim.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_tim_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_tsc.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_uart.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_uart_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_usart.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_usart_ex.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/HAL/stm32yyxx_hal_wwdg.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_adc.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_bdma.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_comp.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_cordic.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_crc.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_crs.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_dac.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_delayblock.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_dma.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_dma2d.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_exti.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_fmac.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_fmc.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_fsmc.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_gpio.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_hrtim.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_i2c.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_lptim.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_lpuart.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_mdma.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_opamp.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_pka.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_pwr.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_rcc.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_rng.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_rtc.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_sdmmc.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_spi.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_swpmi.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_tim.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_ucpd.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_usart.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_usb.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/LL/stm32yyxx_ll_utils.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/stm32/PortNames.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/stm32/analog.cpp.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/stm32/bootloader.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/stm32/clock.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/stm32/core_callback.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/stm32/dwt.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/stm32/hw_config.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/stm32/interrupt.cpp.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/stm32/lock_resource.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/stm32/low_power.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/stm32/pinmap.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/stm32/rtc.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/stm32/stm32_def.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/stm32/stm32_eeprom.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/stm32/system_stm32yyxx.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/stm32/timer.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/stm32/uart.c.o 
.pio/build/nucleo_g071rb/SrcWrapper/src/syscalls.c.o 
.pio/build/nucleo_g071rb/src/main.cpp.o
-LC:/Users/andreas/.platformio/platforms/ststm32/ldscripts
-L.pio/build/nucleo_g071rb
-LC:/Users/andreas/.platformio/packages/framework-arduinoststm32/variants/NUCLEO_G071RB
-LC:/Users/andreas/.platformio/packages/framework-cmsis/CMSIS/DSP/Lib/GCC
-Wl,--start-group -larm_cortexM0l_math -lc -lm -lgcc -lstdc++ -Wl,--end-group

[...]

arm-none-eabi-objcopy -O binary .pio\build\nucleo_g071rb\firmware.elf .pio\build\nucleo_g071rb\firmware.bin

[...]

Leave a Reply

Your email address will not be published. Required fields are marked *