开始设计

This commit is contained in:
2026-08-10 01:21:15 +08:00
commit e45398991f
228 changed files with 20827 additions and 0 deletions
+178
View File
@@ -0,0 +1,178 @@
{
"version": 3,
"cmakeMinimumRequired": {
"major": 3,
"minor": 21,
"patch": 0
},
"configurePresets": [
{
"name": "base",
"hidden": true,
"generator": "Unix Makefiles",
"binaryDir": "${sourceDir}/build/${presetName}",
"environment": {
},
"cacheVariables": {
"CMAKE_EXPORT_COMPILE_COMMANDS": "ON"
}
},
{
"name": "arm-gcc",
"hidden": true,
"displayName": "GNU Arm GCC Toolchain",
"description": "Using GNU Arm Embedded Toolchain",
"inherits": "base",
"environment": {
"CPU_FLAGS":"-mcpu=cortex-m3 -mthumb -DSTM32F103xB -DUSE_FULL_LL_DRIVER",
"COMPILE_FLAGS":"-Wall -Wextra -fdata-sections -ffunction-sections -Wno-pedantic -Wno-unused-parameter -Wno-cast-function-type",
"ASM_FLAGS":"",
"DEBUG_FLAGS": "",
"LINK_FLAGS":"-Wl,--gc-sections --specs=nano.specs --specs=nosys.specs -Wl,-Map=${sourceDir}/build/${presetName}/${presetName}.map",
"LINK_SCRIPT":"${sourceDir}/$env{CPU_MODEL_NAME}/Link.ld"
},
"cacheVariables": {
"CMAKE_SYSTEM_NAME": "Generic",
"CMAKE_C_COMPILER": "$env{TOOLCHAIN_PATH}/arm-none-eabi-gcc$env{EXE_SUFFIX}",
"CMAKE_ASM_COMPILER": "$env{TOOLCHAIN_PATH}/arm-none-eabi-gcc$env{EXE_SUFFIX}",
"CMAKE_LINKER": "$env{TOOLCHAIN_PATH}/arm-none-eabi-ld$env{EXE_SUFFIX}",
"CMAKE_OBJCOPY": "$env{TOOLCHAIN_PATH}/arm-none-eabi-objcopy$env{EXE_SUFFIX}",
"CMAKE_OBJDUMP": "$env{TOOLCHAIN_PATH}/arm-none-eabi-objdump$env{EXE_SUFFIX}",
"CMAKE_SIZE": "$env{TOOLCHAIN_PATH}/arm-none-eabi-size$env{EXE_SUFFIX}",
"CMAKE_C_COMPILER_WORKS": "true",
"CMAKE_CXX_COMPILER_WORKS": "true"
}
},
{
"name": "arm-gcc-debug",
"hidden": true,
"displayName": "GNU ARM GCC Debug",
"inherits": "arm-gcc",
"environment": {
"DEBUG_FLAGS":"-Og -g0"
},
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Debug",
"CMAKE_C_FLAGS_INIT":"$env{CPU_FLAGS} $env{COMPILE_FLAGS} $env{DEBUG_FLAGS}",
"CMAKE_ASM_FLAGS_INIT":"$env{CPU_FLAGS} $env{ASM_FLAGS}",
"CMAKE_EXE_LINKER_FLAGS_INIT":"$env{LINK_FLAGS} -T$env{LINK_SCRIPT}"
}
},
{
"name": "arm-gcc-release",
"hidden": true,
"displayName": "GNU ARM GCC Release",
"inherits": "arm-gcc",
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Release",
"CMAKE_C_FLAGS_INIT":"$env{CPU_FLAGS} $env{COMPILE_FLAGS} $env{DEBUG_FLAGS}",
"CMAKE_ASM_FLAGS_INIT":"$env{CPU_FLAGS} $env{ASM_FLAGS}",
"CMAKE_EXE_LINKER_FLAGS_INIT":"$env{LINK_FLAGS} -T$env{LINK_SCRIPT}"
}
},
{
"name": "armcc-v6",
"hidden": true,
"displayName": "ARMCC V6 Toolchain",
"description": "Using Arm Compiler 6 (armclang)",
"inherits": "base",
"cacheVariables": {
"CMAKE_SYSTEM_NAME": "Generic",
"CMAKE_C_COMPILER": "armclang",
"CMAKE_CXX_COMPILER": "armclang",
"CMAKE_ASM_COMPILER": "armasm",
"CMAKE_LINKER": "armlink",
"CMAKE_OBJCOPY": "fromelf",
"CMAKE_OBJDUMP": "fromelf",
"CMAKE_SIZE": "fromelf",
"CMAKE_C_COMPILER_WORKS": "true"
}
},
{
"name": "armcc-v5-base",
"hidden": true,
"displayName": "ARMCC V5 Toolchain",
"description": "Using Arm Compiler 5 (armcc)",
"inherits": "base",
"environment": {
"CPU_FLAGS":"--cpu Cortex-M3 --apcs=interwork",
"COMPILE_FLAGS": "--diag_suppress=1,68,1207,3731 --c99 --split_sections -DSTM32F103xB -D__MICROLIB -DUSE_FULL_LL_DRIVER -D__UVISION_VERSION=\"538\"",
"ASM_FLAGS":"--cpu=Cortex-M3 --apcs=interwork --pd \"__MICROLIB SETA 1\" --pd \"__UVISION_VERSION SETA 538\" --pd \"STM32F103xB SETA 1\" --pd \"USE_FULL_LL_DRIVER SETA 1\" --xref --cpreproc ",
"LINK_FLAGS":"--library_type=microlib --strict --summary_stderr --info summarysizes --map --xref --callgraph --symbols --info sizes --info totals --info unused --info veneers --list \"${sourceDir}/build/${presetName}/${presetName}.map\"",
"LINK_SCRIPT":"${sourceDir}/$env{CPU_MODEL_NAME}/Link.ld"
},
"cacheVariables": {
"CMAKE_SYSTEM_NAME": "Generic",
"CMAKE_C_COMPILER": "$env{TOOLCHAIN_PATH}/armcc.exe",
"CMAKE_CXX_COMPILER": "$env{TOOLCHAIN_PATH}/armcc.exe",
"CMAKE_ASM_COMPILER": "$env{TOOLCHAIN_PATH}/armasm.exe",
"CMAKE_LINKER": "$env{TOOLCHAIN_PATH}/armlink.exe",
"CMAKE_OBJCOPY": "$env{TOOLCHAIN_PATH}/fromelf.exe",
"CMAKE_OBJDUMP": "$env{TOOLCHAIN_PATH}/fromelf.exe",
"CMAKE_SIZE": "$env{TOOLCHAIN_PATH}/fromelf.exe",
"CMAKE_C_COMPILER_WORKS": "true",
"CMAKE_CXX_COMPILER_WORKS": "true",
"CMAKE_TRY_COMPILE_TARGET_TYPE": "STATIC_LIBRARY"
}
},
{
"name": "armcc-v5-debug",
"hidden": true,
"displayName": "ARM Compiler 5 (AC5) - Debug",
"description": "使用 Keil AC5 工具链进行调试构建",
"inherits": "armcc-v5-base",
"environment": {
"DEBUG_FLAGS": "-O0"
},
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Debug",
"CMAKE_C_FLAGS_INIT":"$env{CPU_FLAGS} $env{COMPILE_FLAGS} $env{DEBUG_FLAGS}",
"CMAKE_ASM_FLAGS_INIT":"$env{CPU_FLAGS} $env{ASM_FLAGS}",
"CMAKE_EXE_LINKER_FLAGS_INIT":"$env{LINK_FLAGS} --scatter=\"$env{LINK_SCRIPT}\""
}
},
{
"name": "armcc-v5-release",
"hidden": true,
"displayName": "ARM Compiler 5 (AC5) - Release",
"description": "使用 Keil AC5 工具链进行调试构建",
"inherits": "armcc-v5-base",
"environment": {
"DEBUG_FLAGS": "-O2"
},
"cacheVariables": {
"CMAKE_BUILD_TYPE": "Release",
"CMAKE_C_FLAGS_INIT":"$env{CPU_FLAGS} $env{COMPILE_FLAGS} $env{DEBUG_FLAGS}",
"CMAKE_ASM_FLAGS_INIT":"$env{CPU_FLAGS} $env{ASM_FLAGS}",
"CMAKE_EXE_LINKER_FLAGS_INIT":"$env{LINK_FLAGS} --scatter=\"$env{LINK_SCRIPT}\""
}
}
],
"buildPresets": [
{
"name": "build-gcc-debug",
"configurePreset": "arm-gcc-debug",
"configuration": "Debug"
},
{
"name": "build-gcc-release",
"configurePreset": "arm-gcc-release",
"configuration": "Release"
},
{
"name": "build-armcc-v6-release",
"configurePreset": "armcc-v6",
"configuration": "Release"
},
{
"name": "build-armcc-v5-debug",
"configurePreset": "armcc-v5-debug",
"configuration": "Debug"
},
{
"name": "build-armcc-v5-release",
"configurePreset": "armcc-v5-release",
"configuration": "Release"
}
]
}