# CONTENTS

- LINK INFORMATION
  - Linker version
  - Command line
- LINKER SCRIPT
  - Linker script 'D:/Projekte/ecs_PowerPro/trunk/firmware_v3/SES/STM32C0xx_Flash.icf'
- PLACEMENT SUMMARY
  - place at 0x08000000
  - "<#5> at line 111, col 45": place in [0x08000000 to 0x080077ff] with maximum packing
  - "<#6> at line 122, col 45": place in [0x20000000 to 0x20002fff] with auto order
  - "<#9> at line 128, col 45": place in [0x20000000 to 0x20002fff] with auto order
- MODULE SUMMARY
  - Memory use by input file
  - Memory use by archive member
  - Memory use by linker
- MODULE DETAIL
  - Module PowerPro_lto.o
  - Module SEGGER_THUMB_Startup.o
  - Module stm32c031xx_Vectors.o
  - Module STM32C0xx_Startup.o
  - Module fileops.o (libc_v6m_t_le_eabi_small.a)
  - Module floatasmops_arm.o (libc_v6m_t_le_eabi_small.a)
  - Module intasmops_arm.o (libc_v6m_t_le_eabi_small.a)
  - Module prinops.o (libc_v6m_t_le_eabi_small.a)
  - Module __SEGGER_RTL_vfprintf_int_nwp.o (libc_v6m_t_le_eabi_small.a)
  - Module prinops_rtt.o (prinops_rtt_v6m_t_le_eabi_small.a)
  - Module SEGGER_RTT.o (prinops_rtt_v6m_t_le_eabi_small.a)
  - Module strops.o (strops_v6m_t_le_eabi_small.a)
  - Module strasmops_arm.o (strops_v6m_t_le_eabi_small.a)
  - Module mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)
  - All modules
- UNPLACED SECTIONS AND BLOCKS
  - Unplaced sections
- LINK SUMMARY
  - Diagnostic summary

# LINK INFORMATION

## Linker version

    SEGGER ARM Linker 4.44c compiled Feb 13 2026 18:40:49
    Copyright (c) 2017-2025 SEGGER Microcontroller GmbH    www.segger.com

## Command line

    --add-region:FLASH1=0x00007800@0x08000000
    --add-region:RAM1=0x00003000@0x20000000
    --full-section-headers
    --merge-sections
    --merge-strings
    --map-html
    --map-file=Output/Debug_12V/Exe/PowerPro.htm
    --map-full
    --list-all-undefineds
    -eReset_Handler
    -EL
    -mcpu=6-M
    --silent
    -TD:/Projekte/ecs_PowerPro/trunk/firmware_v3/SES/STM32C0xx_Flash.icf
    --defsym=__STACKSIZE__=2048
    --defsym=__STACKSIZE_PROCESS__=0
    --defsym=__HEAPSIZE__=1024
    --defsym=__SEGGER_RTL_vfprintf=__SEGGER_RTL_vfprintf_int_nwp
    --defsym=__SEGGER_RTL_vfscanf=__SEGGER_RTL_vfscanf_int
    -u_vectors
    -o
    D:/Projekte/ecs_PowerPro/trunk/firmware_v3/SES/Output/Debug_12V/Exe/PowerPro.elf
    D:/Projekte/ecs_PowerPro/trunk/firmware_v3/SES/Output/Debug_12V/Obj/PowerPro/PowerPro_lto.o
    Output/Debug_12V/Obj/PowerPro/SEGGER_THUMB_Startup.o
    Output/Debug_12V/Obj/PowerPro/stm32c031xx_Vectors.o
    Output/Debug_12V/Obj/PowerPro/STM32C0xx_Startup.o
    C:/Program Files/SEGGER/SEGGER Embedded Studio 8.26c/lib/libc_v6m_t_le_eabi_small.a
    C:/Program Files/SEGGER/SEGGER Embedded Studio 8.26c/lib/SEGGER_crtinit_v6m_t_le_eabi_small.a
    C:/Program Files/SEGGER/SEGGER Embedded Studio 8.26c/lib/prinops_rtt_v6m_t_le_eabi_small.a
    C:/Program Files/SEGGER/SEGGER Embedded Studio 8.26c/lib/heapops_basic_v6m_t_le_eabi_small.a
    C:/Program Files/SEGGER/SEGGER Embedded Studio 8.26c/lib/heapops_disable_interrupts_locking_v6m_t_le_eabi_small.a
    C:/Program Files/SEGGER/SEGGER Embedded Studio 8.26c/lib/strops_v6m_t_le_eabi_small.a
    C:/Program Files/SEGGER/SEGGER Embedded Studio 8.26c/lib/mbops_timeops_v6m_t_le_eabi_small.a

# LINKER SCRIPT

## Linker script 'D:/Projekte/ecs_PowerPro/trunk/firmware_v3/SES/STM32C0xx_Flash.icf'

    /*********************************************************************
    *                    SEGGER Microcontroller GmbH                     *
    *                        The Embedded Experts                        *
    **********************************************************************
    *                                                                    *
    *            (c) 2014 - 2024 SEGGER Microcontroller GmbH             *
    *                                                                    *
    *       www.segger.com     Support: support@segger.com               *
    *                                                                    *
    **********************************************************************
    *                                                                    *
    * All rights reserved.                                               *
    *                                                                    *
    * Redistribution and use in source and binary forms, with or         *
    * without modification, are permitted provided that the following    *
    * condition is met:                                                  *
    *                                                                    *
    * - Redistributions of source code must retain the above copyright   *
    *   notice, this condition and the following disclaimer.             *
    *                                                                    *
    * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND             *
    * CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,        *
    * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF           *
    * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE           *
    * DISCLAIMED. IN NO EVENT SHALL SEGGER Microcontroller BE LIABLE FOR *
    * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR           *
    * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT  *
    * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;    *
    * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF      *
    * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT          *
    * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE  *
    * USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH   *
    * DAMAGE.                                                            *
    *                                                                    *
    **********************************************************************
    -------------------------- END-OF-HEADER -----------------------------

    File    : STM32C0xx_Flash.icf
    Purpose : STM32C0xx linker script for application placement in Flash,
              for use with the SEGGER Linker.
    Maps    : STM32C011D6Yx, STM32C011F4Px, STM32C011F4Ux, STM32C011F6Px,
              STM32C011F6Ux, STM32C011J4Mx, STM32C011J6Mx, STM32C031C4Tx,
              STM32C031C4Ux, STM32C031C6Tx, STM32C031C6Ux, STM32C031F4Px,
              STM32C031F6Px, STM32C031G4Ux, STM32C031G6Ux, STM32C031K4Tx,
              STM32C031K4Ux, STM32C031K6Tx, STM32C031K6Ux
    Literature:
      [1]  SEGGER Linker User Guide (https://www.segger.com/doc/UM20005_Linker.html)
      [2]  SEGGER Linker Section Placement (https://wiki.segger.com/SEGGER_Linker_Script_Files)
    */

    define memory with size = 4G;

    //
    // Combined regions per memory type
    //
    define region FLASH = FLASH1;
    define region RAM   = RAM1;

    //
    // Block definitions
    //
    define block vectors                        { section .vectors };                                   // Vector table section
    define block vectors_ram                    { section .vectors_ram };                               // Vector table section
    define block ctors                          { section .ctors,     section .ctors.*, block with         alphabetical order { init_array } };
    define block dtors                          { section .dtors,     section .dtors.*, block with reverse alphabetical order { fini_array } };
    define block exidx                          { section .ARM.exidx, section .ARM.exidx.* };
    define block tbss                           { section .tbss,      section .tbss.*  };
    define block tdata                          { section .tdata,     section .tdata.* };
    define block tls with fixed order           { block tbss, block tdata };
    define block tdata_load                     { copy of block tdata };
    define block heap           with auto size = __HEAPSIZE__,  alignment = 8, readwrite access { };
    define block stack          with      size = __STACKSIZE__, alignment = 8, readwrite access { };
    define block stack_process  with      size = __STACKSIZE_PROCESS__, alignment = 8, /* fill =0xCD, */ readwrite access { };

    //
    // Explicit initialization settings for sections
    // Packing options for initialize by copy: packing=auto/lzss/zpak/packbits
    //
    do not initialize                           { section .non_init, section .non_init.*, section .*.non_init, section .*.non_init.* };
    do not initialize                           { section .no_init, section .no_init.*, section .*.no_init, section .*.no_init.* };   // Legacy sections, kept for backwards compatibility
    do not initialize                           { section .noinit, section .noinit.*, section .*.noinit, section .*.noinit.* };       // Legacy sections, used by some SDKs/HALs
    do not initialize                           { block vectors_ram };
    initialize by copy with packing=auto        { section .data, section .data.*, section .*.data, section .*.data.* };               // Static data sections
    initialize by copy with packing=auto        { section .fast, section .fast.*, section .*.fast, section .*.fast.* };               // "RAM Code" sections

    initialize by calling __SEGGER_STOP_X_InitLimits    { section .data.stop.* };

    #define USES_ALLOC_FUNC                                   \
      linked symbol malloc || linked symbol aligned_alloc ||  \
      linked symbol calloc || linked symbol realloc

    initialize by calling __SEGGER_init_heap if USES_ALLOC_FUNC { block heap };                        // Init the heap if one is required
    initialize by calling __SEGGER_init_ctors    { block ctors };                                      // Call constructors for global objects which need to be constructed before reaching main (if any). Make sure this is done after setting up heap.

    //assert with warning "free() linked into application but there are no calls to an allocation function!" {
    //  linked symbol free => USES_ALLOC_FUNC
    //};

    assert with error "heap is too small!"              { USES_ALLOC_FUNC => size  of block heap >= 48 };
    assert with error "heap size not a multiple of 8!"  { USES_ALLOC_FUNC => size  of block heap % 8 == 0 };
    assert with error "heap not correctly aligned!"     { USES_ALLOC_FUNC => start of block heap % 8 == 0 };

    //
    // Explicit placement in FLASHn
    //
    place in FLASH1                             { section .FLASH1, section .FLASH1.* };
    //
    // FLASH Placement
    //
    place at start of FLASH                     { block vectors };                                      // Vector table section
    place in FLASH with minimum size order      { block tdata_load,                                     // Thread-local-storage load image
                                                  block exidx,                                          // ARM exception unwinding block
                                                  block ctors,                                          // Constructors block
                                                  block dtors,                                          // Destructors block
                                                  readonly,                                             // Catch-all for readonly data (e.g. .rodata, .srodata)
                                                  readexec                                              // Catch-all for (readonly) executable code (e.g. .text)
                                                };

    //
    // Explicit placement in RAMn
    //
    place in RAM1                               { section .RAM1, section .RAM1.* };
    //
    // RAM Placement
    //
    place at start of RAM                       { block vectors_ram };
    place in RAM                                { section .fast, section .fast.* };                     // "ramfunc" section
    place in RAM with auto order                { block tls,                                            // Thread-local-storage block
                                                  readwrite,                                            // Catch-all for initialized/uninitialized data sections (e.g. .data, .noinit)
                                                  zeroinit                                              // Catch-all for zero-initialized data sections (e.g. .bss)
                                                };
    place in RAM                                { block heap };                                         // Heap reserved block
    place at end of RAM                         { block stack };                                        // Stack reserved block at the end

# PLACEMENT SUMMARY

## place at 0x08000000

Symbol or [section] name | Type | Address | Size | Align | Object File
--- | --- | --- | --- | --- | ---
`_vectors` | `Code` | `0x08000000` | `180` | `256` | `stm32c031xx_Vectors.o`

## "<#5> at line 111, col 45": place in [0x08000000 to 0x080077ff] with maximum packing

Symbol or [section] name | Type | Address | Size | Align | Object File
--- | --- | --- | --- | --- | ---
`MX_ADC1_Init` | `Code` | `0x080000B4` | `1 480` | `4` | `PowerPro_lto.o`
`MX_DMA_Init` | `Code` | `0x0800067C` | `68` | `4` | `PowerPro_lto.o`
`MX_GPIO_Init` | `Code` | `0x080006C0` | `236` | `4` | `PowerPro_lto.o`
`SysTick_Handler` | `Code` | `0x080007AC` | `16` | `4` | `PowerPro_lto.o`
`DMA1_Channel1_IRQHandler` | `Code` | `0x080007BC` | `16` | `4` | `PowerPro_lto.o`
`DMA1_Channel2_3_IRQHandler` | `Code` | `0x080007CC` | `24` | `4` | `PowerPro_lto.o`
`TIM16_IRQHandler` | `Code` | `0x080007E4` | `436` | `4` | `PowerPro_lto.o`
`USART1_IRQHandler` | `Code` | `0x08000998` | `1 120` | `4` | `PowerPro_lto.o`
`HAL_TIM_IC_CaptureCallback` | `Code` | `0x08000DF8` | `144` | `4` | `PowerPro_lto.o`
`SystemInit` | `Code` | `0x08000E88` | `16` | `4` | `PowerPro_lto.o`
`SystemCoreClockUpdate` | `Code` | `0x08000E98` | `84` | `4` | `PowerPro_lto.o`
`MX_TIM16_Init` | `Code` | `0x08000EEC` | `452` | `4` | `PowerPro_lto.o`
`MX_TIM17_Init` | `Code` | `0x080010B0` | `780` | `4` | `PowerPro_lto.o`
`MX_USART1_UART_Init` | `Code` | `0x080013BC` | `304` | `4` | `PowerPro_lto.o`
`MX_IWDG_Init` | `Code` | `0x080014EC` | `88` | `4` | `PowerPro_lto.o`
`HAL_Init` | `Code` | `0x08001544` | `60` | `4` | `PowerPro_lto.o`
`HAL_InitTick` | `Code` | `0x08001580` | `100` | `4` | `PowerPro_lto.o`
`HAL_GetTick` | `Code` | `0x080015E4` | `12` | `4` | `PowerPro_lto.o`
`HAL_Delay` | `Code` | `0x080015F0` | `20` | `4` | `PowerPro_lto.o`
`HAL_ADC_Start_DMA` | `Code` | `0x08001604` | `352` | `4` | `PowerPro_lto.o`
`HAL_ADC_ConfigChannel` | `Code` | `0x08001764` | `1 088` | `4` | `PowerPro_lto.o`
`HAL_ADCEx_Calibration_Start` | `Code` | `0x08001BA4` | `436` | `4` | `PowerPro_lto.o`
`HAL_NVIC_SetPriority` | `Code` | `0x08001D58` | `96` | `4` | `PowerPro_lto.o`
`HAL_NVIC_SystemReset` | `Code` | `0x08001DB8` | `28` | `4` | `PowerPro_lto.o`
`HAL_DMA_Init` | `Code` | `0x08001DD4` | `444` | `4` | `PowerPro_lto.o`
`HAL_DMA_Start_IT` | `Code` | `0x08001F90` | `232` | `4` | `PowerPro_lto.o`
`HAL_DMA_IRQHandler` | `Code` | `0x08002078` | `232` | `4` | `PowerPro_lto.o`
`FLASH_WaitForLastOperation` | `Code` | `0x08002160` | `80` | `4` | `PowerPro_lto.o`
`HAL_FLASH_Unlock` | `Code` | `0x080021B0` | `36` | `4` | `PowerPro_lto.o`
`HAL_FLASH_OB_Unlock` | `Code` | `0x080021D4` | `32` | `4` | `PowerPro_lto.o`
`HAL_FLASH_OB_Launch` | `Code` | `0x080021F4` | `20` | `4` | `PowerPro_lto.o`
`HAL_GPIO_Init` | `Code` | `0x08002208` | `632` | `4` | `PowerPro_lto.o`
`HAL_GPIO_WritePin` | `Code` | `0x08002480` | `48` | `4` | `PowerPro_lto.o`
`HAL_IWDG_Refresh` | `Code` | `0x080024B0` | `16` | `4` | `PowerPro_lto.o`
`HAL_RCC_OscConfig` | `Code` | `0x080024C0` | `708` | `4` | `PowerPro_lto.o`
`HAL_RCC_ClockConfig` | `Code` | `0x08002784` | `412` | `4` | `PowerPro_lto.o`
`HAL_RCC_GetSysClockFreq` | `Code` | `0x08002920` | `84` | `4` | `PowerPro_lto.o`
`HAL_RCC_GetPCLK1Freq` | `Code` | `0x08002974` | `64` | `4` | `PowerPro_lto.o`
`HAL_RCCEx_PeriphCLKConfig` | `Code` | `0x080029B4` | `476` | `4` | `PowerPro_lto.o`
`HAL_TIM_Base_Init` | `Code` | `0x08002B90` | `396` | `4` | `PowerPro_lto.o`
`TIM_Base_SetConfig` | `Code` | `0x08002D1C` | `156` | `4` | `PowerPro_lto.o`
`HAL_TIM_Base_Start_IT` | `Code` | `0x08002DB8` | `148` | `4` | `PowerPro_lto.o`
`TIM_CCxChannelCmd` | `Code` | `0x08002E4C` | `104` | `4` | `PowerPro_lto.o`
`HAL_TIM_IC_Start_IT` | `Code` | `0x08002EB4` | `176` | `4` | `PowerPro_lto.o`
`HAL_UART_Init` | `Code` | `0x08002F64` | `1 584` | `4` | `PowerPro_lto.o`
`UART_WaitOnFlagUntilTimeout` | `Code` | `0x08003594` | `108` | `4` | `PowerPro_lto.o`
`UART_EndRxTransfer` | `Code` | `0x08003600` | `96` | `4` | `PowerPro_lto.o`
`HAL_UART_Transmit_DMA` | `Code` | `0x08003660` | `164` | `4` | `PowerPro_lto.o`
`HAL_UART_Receive_DMA` | `Code` | `0x08003704` | `260` | `4` | `PowerPro_lto.o`
`HAL_UART_ReceiverTimeout_Config` | `Code` | `0x08003808` | `44` | `4` | `PowerPro_lto.o`
`UARTEx_SetNbDataToProcess` | `Code` | `0x08003834` | `80` | `4` | `PowerPro_lto.o`
`BUTTON_Exec` | `Code` | `0x08003884` | `160` | `4` | `PowerPro_lto.o`
`BUZZER_Exec` | `Code` | `0x08003924` | `108` | `4` | `PowerPro_lto.o`
`CHIP_TEMPERATURE_Calibration` | `Code` | `0x08003990` | `48` | `4` | `PowerPro_lto.o`
`CHIP_TEMPERATURE_Exec` | `Code` | `0x080039C0` | `60` | `4` | `PowerPro_lto.o`
`CHIP_TEMPERATURE_GetTemp` | `Code` | `0x080039FC` | `12` | `4` | `PowerPro_lto.o`
`EEPROM_Write` | `Code` | `0x08003A08` | `404` | `4` | `PowerPro_lto.o`
`EEPROM_WriteDefaults` | `Code` | `0x08003B9C` | `48` | `4` | `PowerPro_lto.o`
`EEPROM_ReadFirstStart` | `Code` | `0x08003BCC` | `12` | `4` | `PowerPro_lto.o`
`EEPROM_ReadDeviceParameter` | `Code` | `0x08003BD8` | `36` | `4` | `PowerPro_lto.o`
`EEPROM_StoreConfig` | `Code` | `0x08003BFC` | `76` | `4` | `PowerPro_lto.o`
`FAN_SetSpeed` | `Code` | `0x08003C48` | `36` | `4` | `PowerPro_lto.o`
`LEDS_Exec` | `Code` | `0x08003C6C` | `264` | `4` | `PowerPro_lto.o`
`main` | `Code` | `0x08003D74` | `988` | `4` | `PowerPro_lto.o`
`JumpToBootloader` | `Code` | `0x08004150` | `20` | `4` | `PowerPro_lto.o`
`SystemClock_Config` | `Code` | `0x08004164` | `108` | `4` | `PowerPro_lto.o`
`assert_failed` | `Code` | `0x080041D0` | `28` | `4` | `PowerPro_lto.o`
`mbInit` | `Code` | `0x080041EC` | `136` | `4` | `PowerPro_lto.o`
`mbUartInit` | `Code` | `0x08004274` | `276` | `4` | `PowerPro_lto.o`
`HAL_UART_ErrorCallback` | `Code` | `0x08004388` | `200` | `4` | `PowerPro_lto.o`
`HAL_UART_TxCpltCallback` | `Code` | `0x08004450` | `20` | `4` | `PowerPro_lto.o`
`mbCrc16` | `Code` | `0x08004464` | `116` | `4` | `PowerPro_lto.o`
`mbGetFrameComplete` | `Code` | `0x080044D8` | `24` | `4` | `PowerPro_lto.o`
`mbSlaveCheckModbusRtuQuery` | `Code` | `0x080044F0` | `128` | `4` | `PowerPro_lto.o`
`mbSlaveProcessRtuQuery` | `Code` | `0x08004570` | `100` | `4` | `PowerPro_lto.o`
`mbSlaveReadHoldingRegisters` | `Code` | `0x080045D4` | `236` | `4` | `PowerPro_lto.o`
`mbSlaveWriteSingleRegister` | `Code` | `0x080046C0` | `192` | `4` | `PowerPro_lto.o`
`mbSlaveWriteMultipleRegisters` | `Code` | `0x08004780` | `276` | `4` | `PowerPro_lto.o`
`MODE_LVP_Exec` | `Code` | `0x08004894` | `1 492` | `4` | `PowerPro_lto.o`
`MODE_LVP_OVP_Exec` | `Code` | `0x08004E68` | `1 492` | `4` | `PowerPro_lto.o`
`MODE_MAINSWITCH_Exec` | `Code` | `0x0800543C` | `1 048` | `4` | `PowerPro_lto.o`
`MODE_OVP_Exec` | `Code` | `0x08005854` | `1 464` | `4` | `PowerPro_lto.o`
`MODE_SECONDARYPROTECTION_Exec` | `Code` | `0x08005E0C` | `1 688` | `4` | `PowerPro_lto.o`
`MODE_SECONDARYPROTECTION_PLUS_Exec` | `Code` | `0x080064A4` | `1 152` | `4` | `PowerPro_lto.o`
`MODESWITCH_ReadMode` | `Code` | `0x08006924` | `68` | `4` | `PowerPro_lto.o`
`MODESWITCH_GetMode` | `Code` | `0x08006968` | `12` | `4` | `PowerPro_lto.o`
`RELAIS_GetTemp` | `Code` | `0x08006974` | `12` | `4` | `PowerPro_lto.o`
`RELAIS_Exec` | `Code` | `0x08006980` | `100` | `4` | `PowerPro_lto.o`
`RELAIS_GetState` | `Code` | `0x080069E4` | `12` | `4` | `PowerPro_lto.o`
`SYS_DATA_Init` | `Code` | `0x080069F0` | `24` | `4` | `PowerPro_lto.o`
`VOLTAGE_MEAS_Exec` | `Code` | `0x08006A08` | `136` | `4` | `PowerPro_lto.o`
`VOLTAGE_MEAS_GetUin` | `Code` | `0x08006A90` | `12` | `4` | `PowerPro_lto.o`
`VOLTAGE_MEAS_GetUout` | `Code` | `0x08006A9C` | `12` | `4` | `PowerPro_lto.o`
`AHBPrescTable` | `Cnst` | `0x08006AA8` | `64` | `4` | `PowerPro_lto.o`
`APBPrescTable` | `Cnst` | `0x08006AE8` | `32` | `4` | `PowerPro_lto.o`
`[.rodata..Lswitch.table.UART_SetConfig]` | `Cnst` | `0x08006B08` | `16` | `4` | `PowerPro_lto.o`
`_start` | `Code` | `0x08006B18` | `20` | `4` | `SEGGER_THUMB_Startup.o`
`putchar` | `Code` | `0x08006B2C` | `16` | `4` | `fileops.o (libc_v6m_t_le_eabi_small.a)`
`puts` | `Code` | `0x08006B3C` | `44` | `4` | `fileops.o (libc_v6m_t_le_eabi_small.a)`
`__aeabi_i2d` | `Code` | `0x08006B68` | `28` | `4` | `floatasmops_arm.o (libc_v6m_t_le_eabi_small.a)`
`vfprintf_l` | `Code` | `0x08006B84` | `108` | `4` | `prinops.o (libc_v6m_t_le_eabi_small.a)`
`printf` | `Code` | `0x08006BF0` | `40` | `4` | `prinops.o (libc_v6m_t_le_eabi_small.a)`
`__SEGGER_RTL_vfprintf_int_nwp` | `Code` | `0x08006C18` | `840` | `4` | `__SEGGER_RTL_vfprintf_int_nwp.o (libc_v6m_t_le_eabi_small.a)`
`__SEGGER_RTL_X_file_stat` | `Code` | `0x08006F60` | `44` | `4` | `prinops_rtt.o (prinops_rtt_v6m_t_le_eabi_small.a)`
`_DoInit` | `Code` | `0x08006F8C` | `84` | `4` | `SEGGER_RTT.o (prinops_rtt_v6m_t_le_eabi_small.a)`
`SEGGER_RTT_WriteNoLock` | `Code` | `0x08006FE0` | `104` | `4` | `SEGGER_RTT.o (prinops_rtt_v6m_t_le_eabi_small.a)`
`SEGGER_RTT_Write` | `Code` | `0x08007048` | `56` | `4` | `SEGGER_RTT.o (prinops_rtt_v6m_t_le_eabi_small.a)`
`__SEGGER_RTL_current_locale` | `Code` | `0x08007080` | `20` | `4` | `mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)`
`__SEGGER_RTL_ascii_isctype` | `Code` | `0x08007094` | `28` | `4` | `mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)`
`__SEGGER_RTL_ascii_iswctype` | `Code` | `0x080070B0` | `28` | `4` | `mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)`
`__SEGGER_RTL_c_locale` | `Cnst` | `0x080070CC` | `12` | `4` | `mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)`
`__SEGGER_RTL_codeset_ascii` | `Cnst` | `0x080070D8` | `32` | `4` | `mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)`
`__SEGGER_RTL_c_locale_data` | `Cnst` | `0x080070F8` | `88` | `4` | `mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)`
`NMI_Handler` | `Code` | `0x08007150` | `2` | `2` | `PowerPro_lto.o`
`HardFault_Handler` | `Code` | `0x08007152` | `2` | `2` | `PowerPro_lto.o`
`SVC_Handler` | `Code` | `0x08007154` | `2` | `2` | `PowerPro_lto.o`
`PendSV_Handler` | `Code` | `0x08007156` | `2` | `2` | `PowerPro_lto.o`
`ADC_DMAConvCplt` | `Code` | `0x08007158` | `102` | `2` | `PowerPro_lto.o`
`ADC_DMAHalfConvCplt` | `Code` | `0x080071BE` | `2` | `2` | `PowerPro_lto.o`
`HAL_GPIO_ReadPin` | `Code` | `0x080071C0` | `10` | `2` | `PowerPro_lto.o`
`UART_DMATransmitCplt` | `Code` | `0x080071CA` | `74` | `2` | `PowerPro_lto.o`
`UART_DMATxHalfCplt` | `Code` | `0x08007214` | `2` | `2` | `PowerPro_lto.o`
`UART_DMAError` | `Code` | `0x08007216` | `130` | `2` | `PowerPro_lto.o`
`HAL_UART_EnableReceiverTimeout` | `Code` | `0x08007298` | `42` | `2` | `PowerPro_lto.o`
`mbSend` | `Code` | `0x080072C2` | `38` | `2` | `PowerPro_lto.o`
`mbClearTxBuffer` | `Code` | `0x080072E8` | `18` | `2` | `PowerPro_lto.o`
`mbCheckCrc16` | `Code` | `0x080072FA` | `70` | `2` | `PowerPro_lto.o`
`mbAppendCrc16` | `Code` | `0x08007340` | `66` | `2` | `PowerPro_lto.o`
`mbClearRxFrame` | `Code` | `0x08007382` | `22` | `2` | `PowerPro_lto.o`
`mbSlaveProcessPdu` | `Code` | `0x08007398` | `110` | `2` | `PowerPro_lto.o`
`mbSlaveResponseException` | `Code` | `0x08007406` | `50` | `2` | `PowerPro_lto.o`
`WWDG_IRQHandler` | `Code` | `0x08007438` | `2` | `2` | `stm32c031xx_Vectors.o`
`RTC_IRQHandler` | `Code` | `0x0800743A` | `2` | `2` | `stm32c031xx_Vectors.o`
`FLASH_IRQHandler` | `Code` | `0x0800743C` | `2` | `2` | `stm32c031xx_Vectors.o`
`RCC_IRQHandler` | `Code` | `0x0800743E` | `2` | `2` | `stm32c031xx_Vectors.o`
`EXTI0_1_IRQHandler` | `Code` | `0x08007440` | `2` | `2` | `stm32c031xx_Vectors.o`
`EXTI2_3_IRQHandler` | `Code` | `0x08007442` | `2` | `2` | `stm32c031xx_Vectors.o`
`EXTI4_15_IRQHandler` | `Code` | `0x08007444` | `2` | `2` | `stm32c031xx_Vectors.o`
`DMAMUX1_IRQHandler` | `Code` | `0x08007446` | `2` | `2` | `stm32c031xx_Vectors.o`
`ADC1_IRQHandler` | `Code` | `0x08007448` | `2` | `2` | `stm32c031xx_Vectors.o`
`TIM1_BRK_UP_TRG_COM_IRQHandler` | `Code` | `0x0800744A` | `2` | `2` | `stm32c031xx_Vectors.o`
`TIM1_CC_IRQHandler` | `Code` | `0x0800744C` | `2` | `2` | `stm32c031xx_Vectors.o`
`TIM3_IRQHandler` | `Code` | `0x0800744E` | `2` | `2` | `stm32c031xx_Vectors.o`
`TIM14_IRQHandler` | `Code` | `0x08007450` | `2` | `2` | `stm32c031xx_Vectors.o`
`TIM17_IRQHandler` | `Code` | `0x08007452` | `2` | `2` | `stm32c031xx_Vectors.o`
`I2C1_IRQHandler` | `Code` | `0x08007454` | `2` | `2` | `stm32c031xx_Vectors.o`
`SPI1_IRQHandler` | `Code` | `0x08007456` | `2` | `2` | `stm32c031xx_Vectors.o`
`USART2_IRQHandler` | `Code` | `0x08007458` | `2` | `2` | `stm32c031xx_Vectors.o`
`fputc` | `Code` | `0x0800745A` | `34` | `2` | `fileops.o (libc_v6m_t_le_eabi_small.a)`
`fwrite` | `Code` | `0x0800747C` | `50` | `2` | `fileops.o (libc_v6m_t_le_eabi_small.a)`
`__aeabi_fmul` | `Code` | `0x080074AE` | `182` | `2` | `floatasmops_arm.o (libc_v6m_t_le_eabi_small.a)`
`__aeabi_dmul_aux` | `Code` | `0x08007564` | `394` | `2` | `floatasmops_arm.o (libc_v6m_t_le_eabi_small.a)`
`__aeabi_d2uiz` | `Code` | `0x080076EE` | `46` | `2` | `floatasmops_arm.o (libc_v6m_t_le_eabi_small.a)`
`__aeabi_ui2f` | `Code` | `0x0800771C` | `30` | `2` | `floatasmops_arm.o (libc_v6m_t_le_eabi_small.a)`
`__aeabi_lmul` | `Code` | `0x0800773A` | `46` | `2` | `intasmops_arm.o (libc_v6m_t_le_eabi_small.a)`
`__aeabi_idiv0` | `Code` | `0x08007768` | `6` | `2` | `intasmops_arm.o (libc_v6m_t_le_eabi_small.a)`
`__SEGGER_RTL_putc` | `Code` | `0x0800776E` | `138` | `2` | `prinops.o (libc_v6m_t_le_eabi_small.a)`
`Error_Handler` | `Code` | `0x080077F8` | `4` | `2` | `PowerPro_lto.o`
`__SEGGER_RTL_X_file_bufsize` | `Code` | `0x080077FC` | `4` | `2` | `prinops_rtt.o (prinops_rtt_v6m_t_le_eabi_small.a)`

## "<#6> at line 122, col 45": place in [0x20000000 to 0x20002fff] with auto order

Symbol or [section] name | Type | Address | Size | Align | Object File
--- | --- | --- | --- | --- | ---
`modbusData` | `Zero` | `0x20000000` | `564` | `4` | `PowerPro_lto.o`

## "<#9> at line 128, col 45": place in [0x20000000 to 0x20002fff] with auto order

Symbol or [section] name | Type | Address | Size | Align | Object File
--- | --- | --- | --- | --- | ---
`sys_data` | `Zero` | `0x20000234` | `224` | `4` | `PowerPro_lto.o`
`_SEGGER_RTT` | `Zero` | `0x20000314` | `168` | `4` | `SEGGER_RTT.o (prinops_rtt_v6m_t_le_eabi_small.a)`
`huart1` | `Zero` | `0x200003BC` | `148` | `4` | `PowerPro_lto.o`
`hadc1` | `Zero` | `0x20000450` | `100` | `4` | `PowerPro_lto.o`
`hdma_usart1_tx` | `Zero` | `0x200004B4` | `92` | `4` | `PowerPro_lto.o`
`hdma_usart1_rx` | `Zero` | `0x20000510` | `92` | `4` | `PowerPro_lto.o`
`hdma_adc1` | `Zero` | `0x2000056C` | `92` | `4` | `PowerPro_lto.o`
`htim17` | `Zero` | `0x200005C8` | `76` | `4` | `PowerPro_lto.o`
`htim16` | `Zero` | `0x20000614` | `76` | `4` | `PowerPro_lto.o`
`adcData` | `Zero` | `0x20000660` | `20` | `4` | `PowerPro_lto.o`
`flash_device_parameter_default` | `Zero` | `0x20000674` | `16` | `4` | `PowerPro_lto.o`
`voltageUout` | `Zero` | `0x20000684` | `4` | `4` | `PowerPro_lto.o`
`voltageUin` | `Zero` | `0x20000688` | `4` | `4` | `PowerPro_lto.o`
`uwTick` | `Zero` | `0x2000068C` | `4` | `4` | `PowerPro_lto.o`
`temp` | `Zero` | `0x20000690` | `4` | `4` | `PowerPro_lto.o`
`relais_temperature` | `Zero` | `0x20000694` | `4` | `4` | `PowerPro_lto.o`
`onTimeCounterSET` | `Zero` | `0x20000698` | `4` | `4` | `PowerPro_lto.o`
`onTimeCounterRT` | `Zero` | `0x2000069C` | `4` | `4` | `PowerPro_lto.o`
`onTimeCounterRESET` | `Zero` | `0x200006A0` | `4` | `4` | `PowerPro_lto.o`
`onTimeCounterGN` | `Zero` | `0x200006A4` | `4` | `4` | `PowerPro_lto.o`
`onTimeCounter` | `Zero` | `0x200006A8` | `4` | `4` | `PowerPro_lto.o`
`oldTimeMSTick` | `Zero` | `0x200006AC` | `4` | `4` | `PowerPro_lto.o`
`offTimeCounterRT` | `Zero` | `0x200006B0` | `4` | `4` | `PowerPro_lto.o`
`offTimeCounterGN` | `Zero` | `0x200006B4` | `4` | `4` | `PowerPro_lto.o`
`offTimeCounter` | `Zero` | `0x200006B8` | `4` | `4` | `PowerPro_lto.o`
`numberOfBlinks` | `Zero` | `0x200006BC` | `4` | `4` | `PowerPro_lto.o`
`msCounter` | `Zero` | `0x200006C0` | `4` | `4` | `PowerPro_lto.o`
`longPressCounterButtonOn` | `Zero` | `0x200006C4` | `4` | `4` | `PowerPro_lto.o`
`longPressCounterButtonOff` | `Zero` | `0x200006C8` | `4` | `4` | `PowerPro_lto.o`
`__SEGGER_RTL_stdout_file` | `Zero` | `0x200006CC` | `4` | `4` | `prinops_rtt.o (prinops_rtt_v6m_t_le_eabi_small.a)`
`__SEGGER_RTL_stdin_file` | `Zero` | `0x200006D0` | `4` | `4` | `prinops_rtt.o (prinops_rtt_v6m_t_le_eabi_small.a)`
`__SEGGER_RTL_stderr_file` | `Zero` | `0x200006D4` | `4` | `4` | `prinops_rtt.o (prinops_rtt_v6m_t_le_eabi_small.a)`
`__SEGGER_RTL_locale_ptr` | `Zero` | `0x200006D8` | `4` | `4` | `mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)`
`ic_overflows` | `Zero` | `0x200006DC` | `4` | `4` | `PowerPro_lto.o`
`frequency` | `Zero` | `0x200006E0` | `4` | `4` | `PowerPro_lto.o`
`dropLimitCounter` | `Zero` | `0x200006E4` | `4` | `4` | `PowerPro_lto.o`
`calTemperatureSensor30Value` | `Zero` | `0x200006E8` | `4` | `4` | `PowerPro_lto.o`
`blinkCounter` | `Zero` | `0x200006EC` | `4` | `4` | `PowerPro_lto.o`
`autoRetryMode.190` | `Zero` | `0x200006F0` | `4` | `4` | `PowerPro_lto.o`
`autoRetryMode` | `Zero` | `0x200006F4` | `4` | `4` | `PowerPro_lto.o`
`SECONDARYPROTECTION_SM_On.oldtime.195` | `Zero` | `0x200006F8` | `4` | `4` | `PowerPro_lto.o`
`SECONDARYPROTECTION_SM_On.oldtime` | `Zero` | `0x200006FC` | `4` | `4` | `PowerPro_lto.o`
`SECONDARYPROTECTION_SM_On.lvpAndOvpInputTimeCounter.196` | `Zero` | `0x20000700` | `4` | `4` | `PowerPro_lto.o`
`SECONDARYPROTECTION_SM_On.lvpAndOvpInputTimeCounter` | `Zero` | `0x20000704` | `4` | `4` | `PowerPro_lto.o`
`SECONDARYPROTECTION_SM_Error.retry_counter.201` | `Zero` | `0x20000708` | `4` | `4` | `PowerPro_lto.o`
`SECONDARYPROTECTION_SM_Error.retry_counter` | `Zero` | `0x2000070C` | `4` | `4` | `PowerPro_lto.o`
`SECONDARYPROTECTION_SM_Error.oldTimeMSTick.202` | `Zero` | `0x20000710` | `4` | `4` | `PowerPro_lto.o`
`SECONDARYPROTECTION_SM_Error.oldTimeMSTick` | `Zero` | `0x20000714` | `4` | `4` | `PowerPro_lto.o`
`OVP_SM_On.ovpTimeCounter` | `Zero` | `0x20000718` | `4` | `4` | `PowerPro_lto.o`
`OVP_SM_On.oldtime` | `Zero` | `0x2000071C` | `4` | `4` | `PowerPro_lto.o`
`LVP_SM_On.oldtime` | `Zero` | `0x20000720` | `4` | `4` | `PowerPro_lto.o`
`LVP_SM_On.lvpTimeCounter` | `Zero` | `0x20000724` | `4` | `4` | `PowerPro_lto.o`
`LVP_OVP_SM_On.oldtime` | `Zero` | `0x20000728` | `4` | `4` | `PowerPro_lto.o`
`LVP_OVP_SM_On.lvpAndOvpInputTimeCounter` | `Zero` | `0x2000072C` | `4` | `4` | `PowerPro_lto.o`
`relaisState` | `Zero` | `0x20000730` | `1` | `4` | `PowerPro_lto.o`
`smState.191` | `Zero` | `0x20000731` | `1` | `1` | `PowerPro_lto.o`
`smState.181` | `Zero` | `0x20000732` | `1` | `1` | `PowerPro_lto.o`
`smState.166` | `Zero` | `0x20000733` | `1` | `1` | `PowerPro_lto.o`
`pauseTime` | `Zero` | `0x20000734` | `1` | `4` | `PowerPro_lto.o`
`smState.160` | `Zero` | `0x20000735` | `1` | `1` | `PowerPro_lto.o`
`smState.147` | `Zero` | `0x20000736` | `1` | `1` | `PowerPro_lto.o`
`smState` | `Zero` | `0x20000737` | `1` | `1` | `PowerPro_lto.o`
`pFlash.0` | `Zero` | `0x20000738` | `1` | `4` | `PowerPro_lto.o`
`mode` | `Zero` | `0x20000739` | `1` | `1` | `PowerPro_lto.o`
`buttonState` | `Zero` | `0x2000073A` | `1` | `1` | `PowerPro_lto.o`
`onTimeRT` | `Zero` | `0x2000073C` | `1` | `4` | `PowerPro_lto.o`
`onTimeGN` | `Zero` | `0x20000740` | `1` | `4` | `PowerPro_lto.o`
`onTime` | `Zero` | `0x20000744` | `1` | `4` | `PowerPro_lto.o`
`offTimeRT` | `Zero` | `0x20000748` | `1` | `4` | `PowerPro_lto.o`
`offTimeGN` | `Zero` | `0x2000074C` | `1` | `4` | `PowerPro_lto.o`
`offTime` | `Zero` | `0x20000750` | `1` | `4` | `PowerPro_lto.o`
`blinkModeRT` | `Zero` | `0x20000754` | `1` | `4` | `PowerPro_lto.o`
`blinkModeGN` | `Zero` | `0x20000758` | `1` | `4` | `PowerPro_lto.o`
`alarmMode` | `Zero` | `0x2000075C` | `1` | `4` | `PowerPro_lto.o`
`OVP_SM_On.ovpInput` | `Zero` | `0x20000760` | `1` | `4` | `PowerPro_lto.o`
`LVP_SM_On.lvpInput` | `Zero` | `0x20000764` | `1` | `4` | `PowerPro_lto.o`
`LVP_OVP_SM_On.lvpOROvpInput` | `Zero` | `0x20000768` | `1` | `4` | `PowerPro_lto.o`
`_acUpBuffer` | `Zero` | `0x20000769` | `1 024` | `1` | `SEGGER_RTT.o (prinops_rtt_v6m_t_le_eabi_small.a)`
`_acDownBuffer` | `Zero` | `0x20000B69` | `16` | `1` | `SEGGER_RTT.o (prinops_rtt_v6m_t_le_eabi_small.a)`
`bootLoaderMark` | `None` | `0x20000B7C` | `1` | `4` | `PowerPro_lto.o`
`__SEGGER_RTL_global_locale` | `----` | `0x20000B80` | `20` | `4` | `mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)`
`uwTickPrio` | `----` | `0x20000B94` | `4` | `4` | `PowerPro_lto.o`
`stdout` | `----` | `0x20000B98` | `4` | `4` | `prinops_rtt.o (prinops_rtt_v6m_t_le_eabi_small.a)`
`stdin` | `----` | `0x20000B9C` | `4` | `4` | `prinops_rtt.o (prinops_rtt_v6m_t_le_eabi_small.a)`
`stderr` | `----` | `0x20000BA0` | `4` | `4` | `prinops_rtt.o (prinops_rtt_v6m_t_le_eabi_small.a)`
`SystemCoreClock` | `----` | `0x20000BA4` | `4` | `4` | `PowerPro_lto.o`

# MODULE SUMMARY

## Memory use by input file

Object File | RX Code | RO Data | RW Data | ZI Data
--- | --- | --- | --- | ---
`PowerPro_lto.o` | `28 108` | `3 143` | `8` | `1 680`
`SEGGER_THUMB_Startup.o` | `20` | `` | `` | ``
`stm32c031xx_Vectors.o` | `214` | `` | `` | ``
`STM32C0xx_Startup.o` | `8` | `` | `` | ``
`Subtotal (4 objects)` | `28 350` | `3 143` | `8` | `1 680`
`libc_v6m_t_le_eabi_small.a` | `2 656` | `32` | `` | ``
`mbops_timeops_v6m_t_le_eabi_small.a` | `190` | `541` | `20` | `4`
`prinops_rtt_v6m_t_le_eabi_small.a` | `470` | `26` | `12` | `1 220`
`strops_v6m_t_le_eabi_small.a` | `94` | `` | `` | ``
`Subtotal (4 archives)` | `3 410` | `599` | `32` | `1 224`
`Total:` | `31 760` | `3 742` | `40` | `2 904`

## Memory use by archive member

Archive member | RX Code | RO Data | RW Data | ZI Data
--- | --- | --- | --- | ---
`__SEGGER_RTL_vfprintf_int_nwp.o (libc_v6m_t_le_eabi_small.a)` | `840` | `` | `` | ``
`fileops.o (libc_v6m_t_le_eabi_small.a)` | `144` | `` | `` | ``
`floatasmops_arm.o (libc_v6m_t_le_eabi_small.a)` | `992` | `` | `` | ``
`intasmops_arm.o (libc_v6m_t_le_eabi_small.a)` | `308` | `` | `` | ``
`mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)` | `190` | `541` | `20` | `4`
`prinops.o (libc_v6m_t_le_eabi_small.a)` | `372` | `32` | `` | ``
`prinops_rtt.o (prinops_rtt_v6m_t_le_eabi_small.a)` | `58` | `` | `12` | `12`
`SEGGER_RTT.o (prinops_rtt_v6m_t_le_eabi_small.a)` | `412` | `26` | `` | `1 208`
`strasmops_arm.o (strops_v6m_t_le_eabi_small.a)` | `34` | `` | `` | ``
`strops.o (strops_v6m_t_le_eabi_small.a)` | `60` | `` | `` | ``
`Subtotal (10 members from 4 archives)` | `3 410` | `599` | `32` | `1 224`
`Objects (4 files)` | `28 350` | `3 143` | `8` | `1 680`
`Total:` | `31 760` | `3 742` | `40` | `2 904`

## Memory use by linker

Description | RX Code | RO Data | RW Data | ZI Data
--- | --- | --- | --- | ---
`Objects (4 files)` | `28 350` | `3 143` | `8` | `1 680`
`Archives (4 files)` | `3 410` | `599` | `32` | `1 224`
`Total:` | `31 760` | `3 742` | `40` | `2 904`

# MODULE DETAIL

## Module PowerPro_lto.o

Symbol or [section] name | Code | RO Data | RW Data | ZI Data
--- | --- | --- | --- | ---
`MODE_SECONDARYPROTECTION_Exec` | `1 688` | `` | `` | ``
`HAL_UART_Init` | `1 584` | `` | `` | ``
`MODE_LVP_Exec` | `1 492` | `` | `` | ``
`MODE_LVP_OVP_Exec` | `1 492` | `` | `` | ``
`MX_ADC1_Init` | `1 480` | `` | `` | ``
`MODE_OVP_Exec` | `1 464` | `` | `` | ``
`MODE_SECONDARYPROTECTION_PLUS_Exec` | `1 152` | `` | `` | ``
`USART1_IRQHandler` | `1 120` | `` | `` | ``
`HAL_ADC_ConfigChannel` | `1 088` | `` | `` | ``
`MODE_MAINSWITCH_Exec` | `1 048` | `` | `` | ``
`main` | `988` | `` | `` | ``
`MX_TIM17_Init` | `780` | `` | `` | ``
`HAL_RCC_OscConfig` | `708` | `` | `` | ``
`HAL_GPIO_Init` | `632` | `` | `` | ``
`HAL_RCCEx_PeriphCLKConfig` | `476` | `` | `` | ``
`MX_TIM16_Init` | `452` | `` | `` | ``
`HAL_DMA_Init` | `444` | `` | `` | ``
`TIM16_IRQHandler` | `436` | `` | `` | ``
`HAL_ADCEx_Calibration_Start` | `436` | `` | `` | ``
`HAL_RCC_ClockConfig` | `412` | `` | `` | ``
`EEPROM_Write` | `404` | `` | `` | ``
`HAL_TIM_Base_Init` | `396` | `` | `` | ``
`HAL_ADC_Start_DMA` | `352` | `` | `` | ``
`MX_USART1_UART_Init` | `304` | `` | `` | ``
`mbUartInit` | `276` | `` | `` | ``
`mbSlaveWriteMultipleRegisters` | `276` | `` | `` | ``
`LEDS_Exec` | `264` | `` | `` | ``
`HAL_UART_Receive_DMA` | `260` | `` | `` | ``
`MX_GPIO_Init` | `236` | `` | `` | ``
`mbSlaveReadHoldingRegisters` | `236` | `` | `` | ``
`HAL_DMA_Start_IT` | `232` | `` | `` | ``
`HAL_DMA_IRQHandler` | `232` | `` | `` | ``
`HAL_UART_ErrorCallback` | `200` | `` | `` | ``
`mbSlaveWriteSingleRegister` | `192` | `` | `` | ``
`HAL_TIM_IC_Start_IT` | `176` | `` | `` | ``
`HAL_UART_Transmit_DMA` | `164` | `` | `` | ``
`UART_DMAReceiveCplt` | `164` | `` | `` | ``
`BUTTON_Exec` | `160` | `` | `` | ``
`TIM_Base_SetConfig` | `156` | `` | `` | ``
`HAL_TIM_Base_Start_IT` | `148` | `` | `` | ``
`HAL_TIM_IC_CaptureCallback` | `144` | `` | `` | ``
`mbInit` | `136` | `` | `` | ``
`VOLTAGE_MEAS_Exec` | `136` | `` | `` | ``
`UART_DMAError` | `130` | `` | `` | ``
`mbSlaveCheckModbusRtuQuery` | `128` | `` | `` | ``
`mbCrc16` | `116` | `` | `` | ``
`mbSlaveProcessPdu` | `110` | `` | `` | ``
`UART_WaitOnFlagUntilTimeout` | `108` | `` | `` | ``
`BUZZER_Exec` | `108` | `` | `` | ``
`SystemClock_Config` | `108` | `` | `` | ``
`TIM_CCxChannelCmd` | `104` | `` | `` | ``
`ADC_DMAConvCplt` | `102` | `` | `` | ``
`HAL_InitTick` | `100` | `` | `` | ``
`mbSlaveProcessRtuQuery` | `100` | `` | `` | ``
`RELAIS_Exec` | `100` | `` | `` | ``
`HAL_NVIC_SetPriority` | `96` | `` | `` | ``
`UART_EndRxTransfer` | `96` | `` | `` | ``
`MX_IWDG_Init` | `88` | `` | `` | ``
`SystemCoreClockUpdate` | `84` | `` | `` | ``
`HAL_RCC_GetSysClockFreq` | `84` | `` | `` | ``
`FLASH_WaitForLastOperation` | `80` | `` | `` | ``
`UARTEx_SetNbDataToProcess` | `80` | `` | `` | ``
`EEPROM_StoreConfig` | `76` | `` | `` | ``
`UART_DMATransmitCplt` | `74` | `` | `` | ``
`mbCheckCrc16` | `70` | `` | `` | ``
`MX_DMA_Init` | `68` | `` | `` | ``
`MODESWITCH_ReadMode` | `68` | `` | `` | ``
`mbAppendCrc16` | `66` | `` | `` | ``
`HAL_RCC_GetPCLK1Freq` | `64` | `` | `` | ``
`HAL_Init` | `60` | `` | `` | ``
`CHIP_TEMPERATURE_Exec` | `60` | `` | `` | ``
`mbSlaveResponseException` | `50` | `` | `` | ``
`HAL_GPIO_WritePin` | `48` | `` | `` | ``
`CHIP_TEMPERATURE_Calibration` | `48` | `` | `` | ``
`EEPROM_WriteDefaults` | `48` | `` | `` | ``
`HAL_UART_ReceiverTimeout_Config` | `44` | `` | `` | ``
`HAL_UART_EnableReceiverTimeout` | `42` | `` | `` | ``
`mbSend` | `38` | `` | `` | ``
`HAL_FLASH_Unlock` | `36` | `` | `` | ``
`UART_DMARxHalfCplt` | `36` | `` | `` | ``
`EEPROM_ReadDeviceParameter` | `36` | `` | `` | ``
`FAN_SetSpeed` | `36` | `` | `` | ``
`HAL_FLASH_OB_Unlock` | `32` | `` | `` | ``
`HAL_NVIC_SystemReset` | `28` | `` | `` | ``
`assert_failed` | `28` | `` | `` | ``
`DMA1_Channel2_3_IRQHandler` | `24` | `` | `` | ``
`mbGetFrameComplete` | `24` | `` | `` | ``
`SYS_DATA_Init` | `24` | `` | `` | ``
`mbClearRxFrame` | `22` | `` | `` | ``
`HAL_Delay` | `20` | `` | `` | ``
`ADC_DMAError` | `20` | `` | `` | ``
`HAL_FLASH_OB_Launch` | `20` | `` | `` | ``
`JumpToBootloader` | `20` | `` | `` | ``
`HAL_UART_TxCpltCallback` | `20` | `` | `` | ``
`mbClearTxBuffer` | `18` | `` | `` | ``
`SysTick_Handler` | `16` | `` | `` | ``
`DMA1_Channel1_IRQHandler` | `16` | `` | `` | ``
`SystemInit` | `16` | `` | `` | ``
`HAL_IWDG_Refresh` | `16` | `` | `` | ``
`UART_DMAAbortOnError` | `16` | `` | `` | ``
`HAL_GetTick` | `12` | `` | `` | ``
`CHIP_TEMPERATURE_GetTemp` | `12` | `` | `` | ``
`EEPROM_ReadFirstStart` | `12` | `` | `` | ``
`MODESWITCH_GetMode` | `12` | `` | `` | ``
`RELAIS_GetTemp` | `12` | `` | `` | ``
`RELAIS_GetState` | `12` | `` | `` | ``
`VOLTAGE_MEAS_GetUin` | `12` | `` | `` | ``
`VOLTAGE_MEAS_GetUout` | `12` | `` | `` | ``
`HAL_GPIO_ReadPin` | `10` | `` | `` | ``
`Error_Handler` | `4` | `` | `` | ``
`NMI_Handler` | `2` | `` | `` | ``
`HardFault_Handler` | `2` | `` | `` | ``
`SVC_Handler` | `2` | `` | `` | ``
`PendSV_Handler` | `2` | `` | `` | ``
`ADC_DMAHalfConvCplt` | `2` | `` | `` | ``
`UART_DMATxHalfCplt` | `2` | `` | `` | ``
`[.rodata..L.str.48]` | `` | `101` | `` | ``
`[.rodata..L.str.104]` | `` | `100` | `` | ``
`[.rodata..L.str.16]` | `` | `99` | `` | ``
`[.rodata..L.str.27]` | `` | `99` | `` | ``
`[.rodata..L.str.68]` | `` | `99` | `` | ``
`[.rodata..L.str.86]` | `` | `99` | `` | ``
`[.rodata..L.str.47]` | `` | `98` | `` | ``
`[.rodata..L.str.53]` | `` | `97` | `` | ``
`[.rodata..L.str.101]` | `` | `97` | `` | ``
`[.rodata..L.str.13]` | `` | `96` | `` | ``
`[.rodata..L.str.36]` | `` | `96` | `` | ``
`[.rodata..L.str.63]` | `` | `96` | `` | ``
`[.rodata..L.str.71]` | `` | `96` | `` | ``
`AHBPrescTable` | `` | `64` | `` | ``
`[.rodata..L.str.2]` | `` | `60` | `` | ``
`[.rodata..Lstr.11.199]` | `` | `60` | `` | ``
`[.rodata..Lstr.148]` | `` | `53` | `` | ``
`[.rodata..L.str.1]` | `` | `47` | `` | ``
`[.rodata..L.str.8]` | `` | `45` | `` | ``
`[.rodata..Lstr.144]` | `` | `45` | `` | ``
`[.rodata..Lstr.167]` | `` | `45` | `` | ``
`[.rodata..Lstr.13.200]` | `` | `43` | `` | ``
`[.rodata..Lstr.22.183]` | `` | `41` | `` | ``
`[.rodata..L.str.7.133]` | `` | `39` | `` | ``
`[.rodata..Lstr.18.155]` | `` | `39` | `` | ``
`[.rodata..Lstr.12.149]` | `` | `38` | `` | ``
`[.rodata..Lstr.20.157]` | `` | `38` | `` | ``
`[.rodata..Lstr.20.176]` | `` | `38` | `` | ``
`[.rodata..Lstr.15.193]` | `` | `37` | `` | ``
`[.rodata..Lstr.18]` | `` | `35` | `` | ``
`[.rodata..Lstr.18.174]` | `` | `35` | `` | ``
`[.rodata..Lstr.8.197]` | `` | `35` | `` | ``
`[.rodata..L.str.224]` | `` | `35` | `` | ``
`[.rodata..Lstr.16.192]` | `` | `34` | `` | ``
`APBPrescTable` | `` | `32` | `` | ``
`[.rodata..Lstr.12.161]` | `` | `32` | `` | ``
`[.rodata..Lstr.12]` | `` | `30` | `` | ``
`[.rodata..Lstr.12.168]` | `` | `30` | `` | ``
`[.rodata..Lstr.24.150]` | `` | `29` | `` | ``
`[.rodata..Lstr.9.198]` | `` | `29` | `` | ``
`[.rodata..Lstr.3]` | `` | `28` | `` | ``
`[.rodata..L.str.7]` | `` | `28` | `` | ``
`[.rodata..Lstr.8]` | `` | `28` | `` | ``
`[.rodata..Lstr.14.194]` | `` | `28` | `` | ``
`[.rodata..L.str.5]` | `` | `26` | `` | ``
`[.rodata..Lstr.10]` | `` | `26` | `` | ``
`[.rodata..Lstr.24]` | `` | `25` | `` | ``
`[.rodata..Lstr.15.152]` | `` | `25` | `` | ``
`[.rodata..Lstr.11]` | `` | `25` | `` | ``
`[.rodata..Lstr.24.169]` | `` | `25` | `` | ``
`UARTPrescTable` | `` | `24` | `` | ``
`[.rodata..Lstr.22.158]` | `` | `23` | `` | ``
`[.rodata..Lstr.23.159]` | `` | `22` | `` | ``
`[.rodata..L.str.4]` | `` | `21` | `` | ``
`[.rodata..Lstr.15]` | `` | `21` | `` | ``
`[.rodata..Lstr.15.171]` | `` | `21` | `` | ``
`[.rodata..L.str.117]` | `` | `20` | `` | ``
`[.rodata..L.str.3]` | `` | `19` | `` | ``
`[.rodata..Lstr.22]` | `` | `19` | `` | ``
`[.rodata..Lstr.22.177]` | `` | `19` | `` | ``
`[.rodata..Lstr]` | `` | `18` | `` | ``
`[.rodata..L.str.124]` | `` | `18` | `` | ``
`[.rodata..Lstr.23]` | `` | `18` | `` | ``
`[.rodata..Lstr.23.178]` | `` | `18` | `` | ``
`[.rodata..Lstr.4]` | `` | `17` | `` | ``
`[.rodata..L.str.6]` | `` | `17` | `` | ``
`[.rodata..L.str.5.131]` | `` | `17` | `` | ``
`[.rodata..L.str.6.132]` | `` | `17` | `` | ``
`[.rodata..Lswitch.table.UART_SetConfig]` | `` | `16` | `` | ``
`[.rodata..L.str.2.128]` | `` | `16` | `` | ``
`[.rodata..L.str.3.129]` | `` | `16` | `` | ``
`[.rodata..L.str.4.130]` | `` | `16` | `` | ``
`[.rodata..Lstr.17.154]` | `` | `16` | `` | ``
`[.rodata..Lstr.19.156]` | `` | `16` | `` | ``
`[.rodata..L.str.1.125]` | `` | `14` | `` | ``
`[.rodata..Lstr.17]` | `` | `9` | `` | ``
`[.rodata..Lstr.17.173]` | `` | `9` | `` | ``
`[.rodata..L.str.205]` | `` | `9` | `` | ``
`UARTEx_SetNbDataToProcess.numerator` | `` | `8` | `` | ``
`UARTEx_SetNbDataToProcess.denominator` | `` | `8` | `` | ``
`[.rodata..Lstr.19]` | `` | `8` | `` | ``
`[.rodata..Lstr.19.175]` | `` | `8` | `` | ``
`SystemCoreClock` | `` | `` | `4` | ``
`uwTickPrio` | `` | `` | `4` | ``
`modbusData` | `` | `` | `` | `564`
`sys_data` | `` | `` | `` | `224`
`huart1` | `` | `` | `` | `148`
`hadc1` | `` | `` | `` | `100`
`hdma_adc1` | `` | `` | `` | `92`
`hdma_usart1_rx` | `` | `` | `` | `92`
`hdma_usart1_tx` | `` | `` | `` | `92`
`htim17` | `` | `` | `` | `76`
`htim16` | `` | `` | `` | `76`
`adcData` | `` | `` | `` | `20`
`flash_device_parameter_default` | `` | `` | `` | `16`
`uwTick` | `` | `` | `` | `4`
`longPressCounterButtonOn` | `` | `` | `` | `4`
`longPressCounterButtonOff` | `` | `` | `` | `4`
`onTimeCounter` | `` | `` | `` | `4`
`offTimeCounter` | `` | `` | `` | `4`
`calTemperatureSensor30Value` | `` | `` | `` | `4`
`temp` | `` | `` | `` | `4`
`onTimeCounterGN` | `` | `` | `` | `4`
`offTimeCounterGN` | `` | `` | `` | `4`
`onTimeCounterRT` | `` | `` | `` | `4`
`offTimeCounterRT` | `` | `` | `` | `4`
`blinkCounter` | `` | `` | `` | `4`
`numberOfBlinks` | `` | `` | `` | `4`
`ic_overflows` | `` | `` | `` | `4`
`oldTimeMSTick` | `` | `` | `` | `4`
`msCounter` | `` | `` | `` | `4`
`frequency` | `` | `` | `` | `4`
`LVP_SM_On.lvpTimeCounter` | `` | `` | `` | `4`
`LVP_SM_On.oldtime` | `` | `` | `` | `4`
`LVP_OVP_SM_On.lvpAndOvpInputTimeCounter` | `` | `` | `` | `4`
`LVP_OVP_SM_On.oldtime` | `` | `` | `` | `4`
`OVP_SM_On.ovpTimeCounter` | `` | `` | `` | `4`
`OVP_SM_On.oldtime` | `` | `` | `` | `4`
`autoRetryMode` | `` | `` | `` | `4`
`SECONDARYPROTECTION_SM_On.lvpAndOvpInputTimeCounter` | `` | `` | `` | `4`
`SECONDARYPROTECTION_SM_On.oldtime` | `` | `` | `` | `4`
`SECONDARYPROTECTION_SM_Error.retry_counter` | `` | `` | `` | `4`
`SECONDARYPROTECTION_SM_Error.oldTimeMSTick` | `` | `` | `` | `4`
`autoRetryMode.190` | `` | `` | `` | `4`
`SECONDARYPROTECTION_SM_On.lvpAndOvpInputTimeCounter.196` | `` | `` | `` | `4`
`SECONDARYPROTECTION_SM_On.oldtime.195` | `` | `` | `` | `4`
`SECONDARYPROTECTION_SM_Error.retry_counter.201` | `` | `` | `` | `4`
`SECONDARYPROTECTION_SM_Error.oldTimeMSTick.202` | `` | `` | `` | `4`
`relais_temperature` | `` | `` | `` | `4`
`onTimeCounterSET` | `` | `` | `` | `4`
`onTimeCounterRESET` | `` | `` | `` | `4`
`dropLimitCounter` | `` | `` | `` | `4`
`voltageUin` | `` | `` | `` | `4`
`voltageUout` | `` | `` | `` | `4`
`pFlash.0` | `` | `` | `` | `1`
`buttonState` | `` | `` | `` | `1`
`alarmMode` | `` | `` | `` | `1`
`offTime` | `` | `` | `` | `1`
`onTime` | `` | `` | `` | `1`
`blinkModeGN` | `` | `` | `` | `1`
`offTimeGN` | `` | `` | `` | `1`
`onTimeGN` | `` | `` | `` | `1`
`blinkModeRT` | `` | `` | `` | `1`
`offTimeRT` | `` | `` | `` | `1`
`pauseTime` | `` | `` | `` | `1`
`onTimeRT` | `` | `` | `` | `1`
`bootLoaderMark` | `` | `` | `` | `1`
`smState` | `` | `` | `` | `1`
`LVP_SM_On.lvpInput` | `` | `` | `` | `1`
`smState.147` | `` | `` | `` | `1`
`LVP_OVP_SM_On.lvpOROvpInput` | `` | `` | `` | `1`
`smState.160` | `` | `` | `` | `1`
`smState.166` | `` | `` | `` | `1`
`OVP_SM_On.ovpInput` | `` | `` | `` | `1`
`smState.181` | `` | `` | `` | `1`
`smState.191` | `` | `` | `` | `1`
`mode` | `` | `` | `` | `1`
`relaisState` | `` | `` | `` | `1`
`Total:` | `28 108` | `3 143` | `8` | `1 680`

## Module SEGGER_THUMB_Startup.o

Symbol or [section] name | Code | RO Data | RW Data | ZI Data
--- | --- | --- | --- | ---
`_start` | `20` | `` | `` | ``
`Total:` | `20` | `` | `` | ``

## Module stm32c031xx_Vectors.o

Symbol or [section] name | Code | RO Data | RW Data | ZI Data
--- | --- | --- | --- | ---
`_vectors` | `180` | `` | `` | ``
`WWDG_IRQHandler` | `2` | `` | `` | ``
`RTC_IRQHandler` | `2` | `` | `` | ``
`FLASH_IRQHandler` | `2` | `` | `` | ``
`RCC_IRQHandler` | `2` | `` | `` | ``
`EXTI0_1_IRQHandler` | `2` | `` | `` | ``
`EXTI2_3_IRQHandler` | `2` | `` | `` | ``
`EXTI4_15_IRQHandler` | `2` | `` | `` | ``
`DMAMUX1_IRQHandler` | `2` | `` | `` | ``
`ADC1_IRQHandler` | `2` | `` | `` | ``
`TIM1_BRK_UP_TRG_COM_IRQHandler` | `2` | `` | `` | ``
`TIM1_CC_IRQHandler` | `2` | `` | `` | ``
`TIM3_IRQHandler` | `2` | `` | `` | ``
`TIM14_IRQHandler` | `2` | `` | `` | ``
`TIM17_IRQHandler` | `2` | `` | `` | ``
`I2C1_IRQHandler` | `2` | `` | `` | ``
`SPI1_IRQHandler` | `2` | `` | `` | ``
`USART2_IRQHandler` | `2` | `` | `` | ``
`Total:` | `214` | `` | `` | ``

## Module STM32C0xx_Startup.o

Symbol or [section] name | Code | RO Data | RW Data | ZI Data
--- | --- | --- | --- | ---
`reset_handler` | `8` | `` | `` | ``
`Total:` | `8` | `` | `` | ``

## Module fileops.o (libc_v6m_t_le_eabi_small.a)

Symbol or [section] name | Code | RO Data | RW Data | ZI Data
--- | --- | --- | --- | ---
`fwrite` | `50` | `` | `` | ``
`puts` | `44` | `` | `` | ``
`fputc` | `34` | `` | `` | ``
`putchar` | `16` | `` | `` | ``
`Total:` | `144` | `` | `` | ``

## Module floatasmops_arm.o (libc_v6m_t_le_eabi_small.a)

Symbol or [section] name | Code | RO Data | RW Data | ZI Data
--- | --- | --- | --- | ---
`__aeabi_dmul_aux` | `394` | `` | `` | ``
`__aeabi_ddiv` | `196` | `` | `` | ``
`__aeabi_fmul` | `182` | `` | `` | ``
`__aeabi_d2iz` | `52` | `` | `` | ``
`__aeabi_d2uiz` | `46` | `` | `` | ``
`__aeabi_f2uiz` | `36` | `` | `` | ``
`__aeabi_ui2f` | `30` | `` | `` | ``
`__aeabi_i2d` | `28` | `` | `` | ``
`__aeabi_ui2d` | `28` | `` | `` | ``
`Total:` | `992` | `` | `` | ``

## Module intasmops_arm.o (libc_v6m_t_le_eabi_small.a)

Symbol or [section] name | Code | RO Data | RW Data | ZI Data
--- | --- | --- | --- | ---
`__aeabi_uldivmod` | `136` | `` | `` | ``
`__aeabi_idiv` | `64` | `` | `` | ``
`__aeabi_uidiv` | `56` | `` | `` | ``
`__aeabi_lmul` | `46` | `` | `` | ``
`__aeabi_idiv0` | `6` | `` | `` | ``
`Total:` | `308` | `` | `` | ``

## Module prinops.o (libc_v6m_t_le_eabi_small.a)

Symbol or [section] name | Code | RO Data | RW Data | ZI Data
--- | --- | --- | --- | ---
`__SEGGER_RTL_putc` | `138` | `` | `` | ``
`vfprintf_l` | `108` | `` | `` | ``
`printf` | `40` | `` | `` | ``
`__SEGGER_RTL_prin_flush` | `26` | `` | `` | ``
`vfprintf` | `26` | `` | `` | ``
`__SEGGER_RTL_init_prin_l` | `18` | `` | `` | ``
`__SEGGER_RTL_stream_write` | `16` | `` | `` | ``
`__SEGGER_RTL_hex_uc` | `` | `16` | `` | ``
`__SEGGER_RTL_hex_lc` | `` | `16` | `` | ``
`Total:` | `372` | `32` | `` | ``

## Module __SEGGER_RTL_vfprintf_int_nwp.o (libc_v6m_t_le_eabi_small.a)

Symbol or [section] name | Code | RO Data | RW Data | ZI Data
--- | --- | --- | --- | ---
`__SEGGER_RTL_vfprintf_int_nwp` | `840` | `` | `` | ``
`Total:` | `840` | `` | `` | ``

## Module prinops_rtt.o (prinops_rtt_v6m_t_le_eabi_small.a)

Symbol or [section] name | Code | RO Data | RW Data | ZI Data
--- | --- | --- | --- | ---
`__SEGGER_RTL_X_file_stat` | `44` | `` | `` | ``
`__SEGGER_RTL_X_file_write` | `10` | `` | `` | ``
`__SEGGER_RTL_X_file_bufsize` | `4` | `` | `` | ``
`stdin` | `` | `` | `4` | ``
`stdout` | `` | `` | `4` | ``
`stderr` | `` | `` | `4` | ``
`__SEGGER_RTL_stdin_file` | `` | `` | `` | `4`
`__SEGGER_RTL_stdout_file` | `` | `` | `` | `4`
`__SEGGER_RTL_stderr_file` | `` | `` | `` | `4`
`Total:` | `58` | `` | `12` | `12`

## Module SEGGER_RTT.o (prinops_rtt_v6m_t_le_eabi_small.a)

Symbol or [section] name | Code | RO Data | RW Data | ZI Data
--- | --- | --- | --- | ---
`SEGGER_RTT_WriteNoLock` | `104` | `` | `` | ``
`_WriteBlocking` | `88` | `` | `` | ``
`_DoInit` | `84` | `` | `` | ``
`_WriteNoCheck` | `58` | `` | `` | ``
`SEGGER_RTT_Write` | `56` | `` | `` | ``
`_GetAvailWriteSpace` | `22` | `` | `` | ``
`_DoInit._aInitStr` | `` | `17` | `` | ``
`[.rodata.libc..L.str]` | `` | `9` | `` | ``
`_acUpBuffer` | `` | `` | `` | `1 024`
`_SEGGER_RTT` | `` | `` | `` | `168`
`_acDownBuffer` | `` | `` | `` | `16`
`Total:` | `412` | `26` | `` | `1 208`

## Module strops.o (strops_v6m_t_le_eabi_small.a)

Symbol or [section] name | Code | RO Data | RW Data | ZI Data
--- | --- | --- | --- | ---
`memcmp` | `46` | `` | `` | ``
`strlen` | `14` | `` | `` | ``
`Total:` | `60` | `` | `` | ``

## Module strasmops_arm.o (strops_v6m_t_le_eabi_small.a)

Symbol or [section] name | Code | RO Data | RW Data | ZI Data
--- | --- | --- | --- | ---
`__aeabi_memclr` | `20` | `` | `` | ``
`memcpy` | `14` | `` | `` | ``
`Total:` | `34` | `` | `` | ``

## Module mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)

Symbol or [section] name | Code | RO Data | RW Data | ZI Data
--- | --- | --- | --- | ---
`__SEGGER_RTL_ascii_mbtowc` | `46` | `` | `` | ``
`__SEGGER_RTL_ascii_isctype` | `28` | `` | `` | ``
`__SEGGER_RTL_ascii_iswctype` | `28` | `` | `` | ``
`__SEGGER_RTL_current_locale` | `20` | `` | `` | ``
`__SEGGER_RTL_ascii_wctomb` | `16` | `` | `` | ``
`__SEGGER_RTL_ascii_tolower` | `14` | `` | `` | ``
`__SEGGER_RTL_ascii_towlower` | `14` | `` | `` | ``
`__SEGGER_RTL_ascii_toupper` | `12` | `` | `` | ``
`__SEGGER_RTL_ascii_towupper` | `12` | `` | `` | ``
`__SEGGER_RTL_ascii_ctype_map` | `` | `128` | `` | ``
`__SEGGER_RTL_c_locale_data` | `` | `88` | `` | ``
`__SEGGER_RTL_c_locale_month_names` | `` | `87` | `` | ``
`__SEGGER_RTL_c_locale_day_names` | `` | `58` | `` | ``
`__SEGGER_RTL_c_locale_abbrev_month_names` | `` | `49` | `` | ``
`__SEGGER_RTL_codeset_ascii` | `` | `32` | `` | ``
`__SEGGER_RTL_c_locale_abbrev_day_names` | `` | `29` | `` | ``
`__SEGGER_RTL_c_locale_date_time_format` | `` | `15` | `` | ``
`__SEGGER_RTL_ascii_ctype_mask` | `` | `13` | `` | ``
`__SEGGER_RTL_c_locale` | `` | `12` | `` | ``
`__SEGGER_RTL_c_locale_date_format` | `` | `9` | `` | ``
`__SEGGER_RTL_c_locale_time_format` | `` | `9` | `` | ``
`__SEGGER_RTL_c_locale_am_pm_indicator` | `` | `7` | `` | ``
`[.rodata.libc..L.str]` | `` | `2` | `` | ``
`__SEGGER_RTL_data_utf8_period` | `` | `2` | `` | ``
`__SEGGER_RTL_data_empty_string` | `` | `1` | `` | ``
`__SEGGER_RTL_global_locale` | `` | `` | `20` | ``
`__SEGGER_RTL_locale_ptr` | `` | `` | `` | `4`
`Total:` | `190` | `541` | `20` | `4`

## All modules

| Code | RO Data | RW Data | ZI Data
--- | --- | --- | --- | ---
`Grand total:` | `31 760` | `3 742` | `40` | `2 904`

# UNPLACED SECTIONS AND BLOCKS

## Unplaced sections

Section | Size | Align | Object
--- | --- | --- | ---
`.text.ADC_DMAError` | `14` | `2` | `PowerPro_lto.o`
`.text.UART_DMAReceiveCplt` | `A4` | `2` | `PowerPro_lto.o`
`.text.UART_DMARxHalfCplt` | `24` | `2` | `PowerPro_lto.o`
`.text.UART_DMAAbortOnError` | `10` | `2` | `PowerPro_lto.o`
`.rodata..L.str.13` | `60` | `1` | `PowerPro_lto.o`
`.rodata..L.str.16` | `63` | `1` | `PowerPro_lto.o`
`.rodata..L.str.27` | `63` | `1` | `PowerPro_lto.o`
`.rodata..L.str.36` | `60` | `1` | `PowerPro_lto.o`
`.rodata..L.str.47` | `62` | `1` | `PowerPro_lto.o`
`.rodata..L.str.48` | `65` | `1` | `PowerPro_lto.o`
`.rodata..L.str.53` | `61` | `1` | `PowerPro_lto.o`
`.rodata..L.str.63` | `60` | `1` | `PowerPro_lto.o`
`.rodata..L.str.68` | `63` | `1` | `PowerPro_lto.o`
`.rodata..L.str.71` | `60` | `1` | `PowerPro_lto.o`
`.rodata..L.str.86` | `63` | `1` | `PowerPro_lto.o`
`.rodata.UARTPrescTable` | `18` | `2` | `PowerPro_lto.o`
`.rodata..L.str.101` | `61` | `1` | `PowerPro_lto.o`
`.rodata..L.str.104` | `64` | `1` | `PowerPro_lto.o`
`.rodata.UARTEx_SetNbDataToProcess.numerator` | `8` | `1` | `PowerPro_lto.o`
`.rodata.UARTEx_SetNbDataToProcess.denominator` | `8` | `1` | `PowerPro_lto.o`
`.rodata..Lstr` | `12` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.3` | `1C` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.4` | `11` | `1` | `PowerPro_lto.o`
`.rodata..L.str.117` | `14` | `1` | `PowerPro_lto.o`
`.rodata..L.str.1` | `2F` | `1` | `PowerPro_lto.o`
`.rodata..L.str.2` | `3C` | `1` | `PowerPro_lto.o`
`.rodata..L.str.3` | `13` | `1` | `PowerPro_lto.o`
`.rodata..L.str.4` | `15` | `1` | `PowerPro_lto.o`
`.rodata..L.str.5` | `1A` | `1` | `PowerPro_lto.o`
`.rodata..L.str.6` | `11` | `1` | `PowerPro_lto.o`
`.rodata..L.str.7` | `1C` | `1` | `PowerPro_lto.o`
`.rodata..L.str.8` | `2D` | `1` | `PowerPro_lto.o`
`.rodata..L.str.124` | `12` | `1` | `PowerPro_lto.o`
`.rodata..L.str.1.125` | `E` | `1` | `PowerPro_lto.o`
`.rodata..L.str.2.128` | `10` | `1` | `PowerPro_lto.o`
`.rodata..L.str.3.129` | `10` | `1` | `PowerPro_lto.o`
`.rodata..L.str.4.130` | `10` | `1` | `PowerPro_lto.o`
`.rodata..L.str.5.131` | `11` | `1` | `PowerPro_lto.o`
`.rodata..L.str.6.132` | `11` | `1` | `PowerPro_lto.o`
`.rodata..L.str.7.133` | `27` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.144` | `2D` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.12` | `1E` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.15` | `15` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.17` | `9` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.18` | `23` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.19` | `8` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.22` | `13` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.23` | `12` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.24` | `19` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.148` | `35` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.12.149` | `26` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.15.152` | `19` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.17.154` | `10` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.18.155` | `27` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.19.156` | `10` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.20.157` | `26` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.22.158` | `17` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.23.159` | `16` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.24.150` | `1D` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.8` | `1C` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.10` | `1A` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.11` | `19` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.12.161` | `20` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.167` | `2D` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.12.168` | `1E` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.15.171` | `15` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.17.173` | `9` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.18.174` | `23` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.19.175` | `8` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.20.176` | `26` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.22.177` | `13` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.23.178` | `12` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.24.169` | `19` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.22.183` | `29` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.8.197` | `23` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.9.198` | `1D` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.11.199` | `3C` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.13.200` | `2B` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.14.194` | `1C` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.15.193` | `25` | `1` | `PowerPro_lto.o`
`.rodata..Lstr.16.192` | `22` | `1` | `PowerPro_lto.o`
`.rodata..L.str.205` | `9` | `1` | `PowerPro_lto.o`
`.rodata..L.str.224` | `23` | `1` | `PowerPro_lto.o`
`.init.Reset_Handler` | `8` | `2` | `STM32C0xx_Startup.o`
`.init_array` | `4` | `4` | `STM32C0xx_Startup.o`
`.text.libc.__aeabi_ddiv` | `C4` | `2` | `floatasmops_arm.o (libc_v6m_t_le_eabi_small.a)`
`.text.libc.__aeabi_d2iz` | `34` | `2` | `floatasmops_arm.o (libc_v6m_t_le_eabi_small.a)`
`.text.libc.__aeabi_f2uiz` | `24` | `2` | `floatasmops_arm.o (libc_v6m_t_le_eabi_small.a)`
`.text.libc.__aeabi_ui2d` | `1C` | `2` | `floatasmops_arm.o (libc_v6m_t_le_eabi_small.a)`
`.text.libc.__aeabi_idiv` | `40` | `2` | `intasmops_arm.o (libc_v6m_t_le_eabi_small.a)`
`.text.libc.__aeabi_uidiv` | `38` | `2` | `intasmops_arm.o (libc_v6m_t_le_eabi_small.a)`
`.text.libc.__aeabi_uldivmod` | `88` | `2` | `intasmops_arm.o (libc_v6m_t_le_eabi_small.a)`
`.text.libc.__SEGGER_RTL_prin_flush` | `1A` | `2` | `prinops.o (libc_v6m_t_le_eabi_small.a)`
`.text.libc.__SEGGER_RTL_init_prin_l` | `12` | `2` | `prinops.o (libc_v6m_t_le_eabi_small.a)`
`.text.libc.vfprintf` | `1A` | `2` | `prinops.o (libc_v6m_t_le_eabi_small.a)`
`.text.libc.__SEGGER_RTL_stream_write` | `10` | `2` | `prinops.o (libc_v6m_t_le_eabi_small.a)`
`.rodata.libc.__SEGGER_RTL_hex_uc` | `10` | `1` | `prinops.o (libc_v6m_t_le_eabi_small.a)`
`.rodata.libc.__SEGGER_RTL_hex_lc` | `10` | `1` | `prinops.o (libc_v6m_t_le_eabi_small.a)`
`.text.libc.__SEGGER_RTL_X_file_write` | `A` | `2` | `prinops_rtt.o (prinops_rtt_v6m_t_le_eabi_small.a)`
`.text.libc._GetAvailWriteSpace` | `16` | `2` | `SEGGER_RTT.o (prinops_rtt_v6m_t_le_eabi_small.a)`
`.text.libc._WriteNoCheck` | `3A` | `2` | `SEGGER_RTT.o (prinops_rtt_v6m_t_le_eabi_small.a)`
`.text.libc._WriteBlocking` | `58` | `2` | `SEGGER_RTT.o (prinops_rtt_v6m_t_le_eabi_small.a)`
`.rodata.libc._DoInit._aInitStr` | `11` | `1` | `SEGGER_RTT.o (prinops_rtt_v6m_t_le_eabi_small.a)`
`.rodata.libc..L.str` | `9` | `1` | `SEGGER_RTT.o (prinops_rtt_v6m_t_le_eabi_small.a)`
`.text.libc.memcmp` | `2E` | `2` | `strops.o (strops_v6m_t_le_eabi_small.a)`
`.text.libc.strlen` | `E` | `2` | `strops.o (strops_v6m_t_le_eabi_small.a)`
`.text.libc.memcpy` | `E` | `2` | `strasmops_arm.o (strops_v6m_t_le_eabi_small.a)`
`.text.libc.__aeabi_memclr` | `14` | `2` | `strasmops_arm.o (strops_v6m_t_le_eabi_small.a)`
`.text.libc.__SEGGER_RTL_ascii_mbtowc` | `2E` | `2` | `mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)`
`.text.libc.__SEGGER_RTL_ascii_wctomb` | `10` | `2` | `mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)`
`.text.libc.__SEGGER_RTL_ascii_toupper` | `C` | `2` | `mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)`
`.text.libc.__SEGGER_RTL_ascii_tolower` | `E` | `2` | `mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)`
`.text.libc.__SEGGER_RTL_ascii_towupper` | `C` | `2` | `mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)`
`.text.libc.__SEGGER_RTL_ascii_towlower` | `E` | `2` | `mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)`
`.rodata.libc.__SEGGER_RTL_c_locale_day_names` | `3A` | `1` | `mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)`
`.rodata.libc.__SEGGER_RTL_c_locale_month_names` | `57` | `1` | `mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)`
`.rodata.libc.__SEGGER_RTL_c_locale_am_pm_indicator` | `7` | `1` | `mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)`
`.rodata.libc.__SEGGER_RTL_c_locale_date_format` | `9` | `1` | `mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)`
`.rodata.libc.__SEGGER_RTL_c_locale_time_format` | `9` | `1` | `mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)`
`.rodata.libc.__SEGGER_RTL_c_locale_date_time_format` | `F` | `1` | `mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)`
`.rodata.libc..L.str` | `2` | `1` | `mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)`
`.rodata.libc.__SEGGER_RTL_c_locale_abbrev_day_names` | `1D` | `1` | `mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)`
`.rodata.libc.__SEGGER_RTL_c_locale_abbrev_month_names` | `31` | `1` | `mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)`
`.rodata.libc.__SEGGER_RTL_data_utf8_period` | `2` | `1` | `mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)`
`.rodata.libc.__SEGGER_RTL_data_empty_string` | `1` | `1` | `mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)`
`.rodata.libc.__SEGGER_RTL_ascii_ctype_map` | `80` | `1` | `mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)`
`.rodata.libc.__SEGGER_RTL_ascii_ctype_mask` | `D` | `1` | `mbops.o (mbops_timeops_v6m_t_le_eabi_small.a)`
`Total:` | `4786` | `` | ``

# LINK SUMMARY

## Diagnostic summary

    Link complete: 58 error.