# # Marlin Firmware # PlatformIO Configuration File # ################################# # # HC32F460 Architecture with unified HC32 HAL # # Naming Example: HC32F460JEUA # # |- Xiaohua Semiconductor # | |- CPU bit width (32: 32-bit) # | | |- Product Type (F: Universal MCU) # | | | |- Core Type (4: Cortex-M4) # | | | | |- Performance (6: High Performance) # | | | | | |- Configuration (0: Configuration 1) # | | | | | | |- Pin Count (J: 48, K: 60/64, P: 100) # | | | | | | | |- Flash Capacity (C: 256KB, E: 512KB) # | | | | | | | | |- Package (T: LQFP, U: QFN, H:VFBGA) # | | | | | | | | | |- Temperature range (A: -40-85°C, B: -40-105°C) # HC 32 F 4 6 0 J E U A # ################################# # # Base Environment for all HC32F460 variants # [HC32F460_base] platform = https://github.com/shadow578/platform-hc32f46x/archive/1.1.0.zip platform_packages = framework-hc32f46x-ddl@https://github.com/shadow578/framework-hc32f46x-ddl/archive/2.2.2.zip framework-arduino-hc32f46x@https://github.com/shadow578/framework-arduino-hc32f46x/archive/1.2.0.zip board = generic_hc32f460 build_src_filter = ${common.default_src_filter} + + build_type = release build_flags = -D ARDUINO_ARCH_HC32 -D PLATFORM_M997_SUPPORT # Enable M997 command # note: ddl and arduino debug mode are # automatically enabled with MARLIN_DEV_MODE #-D __DEBUG # force DDL debug mode #-D __CORE_DEBUG # force Arduino core debug mode # hc32 app configuration file board_build.app_config = Marlin/src/HAL/HC32/app_config.h # Drivers and Middleware required by the HC32 HAL board_build.ddl.ots = true board_build.ddl.sdioc = true board_build.ddl.wdt = true board_build.ddl.timer0 = true board_build.ddl.timera = true board_build.mw.sd_card = true # extra build flags board_build.flags.common = -g3 # Force emit debug symbols to elf. this does not affect the final binary size -fno-signed-char # Force unsigned chars. this is required for meatpack to work # Additional flags to reduce binary size board_build.flags.cpp = -fno-threadsafe-statics # Disable thread-safe statics (only one core anyway) -fno-exceptions # Disable exceptions (not used by marlin) -fno-rtti # Disable RTTI (not used by marlin) # # Base HC32F460xCxx (256K Flash) # [HC32F460C_base] extends = HC32F460_base board_build.ld_args.flash_size = 256K # # Base HC32F460xExx (512K Flash) # [HC32F460E_base] extends = HC32F460_base board_build.ld_args.flash_size = 512K # # Voxelab Aquila V1.0.0/V1.0.1/V1.0.2/V1.0.3 as found in the Voxelab Aquila X2 & C2 # [env:HC32F460C_aquila_101] extends = HC32F460C_base board_build.ld_args.flash_start = 0xC000 # Bootloader start address, as logged by the bootloader on boot board_build.ld_args.boot_mode = secondary # Save ~1.4k of flash by compiling as secondary firmware # # Creality Ender 2 Pro v2.4.S4_170 (HC32f460kcta) (256K Flash, 192K RAM). # [env:HC32F460C_e2p24s4] extends = HC32F460C_base board_build.ld_args.flash_start = 0x8000