Skip to content

The STM32VIRTUAL Board

Georgi Angelov edited this page Jun 2, 2023 · 21 revisions

ST have too many microcontrolers, so use STM32VIRTUAL Board if I don't have predefined boards
and add the following settings to the Project INI
The values can be found in the CubeMX makefile & linker script

Project INI Example

; VIRTUAL BOARD CONFIG
custom_section          = STM32F1
custom_subsection       = STM32F100xB
custom_mcu              = STM32F100RBTx
custom_cortex           = -mcpu=cortex-m3, -mthumb ; and FPU is exists

custom_ram_size         = 8192
custom_rom_size         = 131072

;custom_openocd_target  = TODO
;custom_svd_path        = TODO
;custom_jlink_device    = TODO

custom_section = STM32F1

Used to include the HAL drivers
STM32F1xx_HAL_Driver

custom_subsection = STM32F100xB

Used to enable HAL Driver = -D STM32F100xB

custom_mcu = STM32F100RBTx

Used to select Linker Script
STM32F100R8Tx_FLASH.ld

custom_cortex = -mcpu=cortex-m3, -mthumb

Separated by a comma
Including setting for FPU as -mfpu=fpv4-sp-d16, -mfloat-abi=hard ... etc if exists

custom_ram_size = 8192

Chip RAM size ( see LD script )
Default 0

custom_rom_size = 131072

Chip FLASH size ( see LD script )
Default 0


TODO custom_openocd_target

TODO custom_svd_path

TODO custom_jlink_device