diff --git a/examples/stm32/lwmem_rtos_stm32l496_discovery/.vscode/c_cpp_properties.json b/examples/stm32/lwmem_rtos_stm32l496_discovery/.vscode/c_cpp_properties.json index 954cb6b..1ead9e6 100644 --- a/examples/stm32/lwmem_rtos_stm32l496_discovery/.vscode/c_cpp_properties.json +++ b/examples/stm32/lwmem_rtos_stm32l496_discovery/.vscode/c_cpp_properties.json @@ -2,6 +2,7 @@ "version": 4, "configurations": [ { + /* ms-vscode.cmake-tools plugin shall to be installed, which provides include paths and defines through CMake file */ "name": "STM32", "includePath": [], "defines": [], diff --git a/examples/stm32/lwmem_rtos_stm32l496_discovery/.vscode/cmake-kits.json b/examples/stm32/lwmem_rtos_stm32l496_discovery/.vscode/cmake-kits.json deleted file mode 100644 index 4bc2d1b..0000000 --- a/examples/stm32/lwmem_rtos_stm32l496_discovery/.vscode/cmake-kits.json +++ /dev/null @@ -1,10 +0,0 @@ -[ - { - "name": "GCC arm-none-eabi - custom toolchain setup", - "compilers": { - "C": "arm-none-eabi-gcc", - "CXX": "arm-none-eabi-g++" - }, - "toolchainFile": "gcc-arm-none-eabi.cmake" - } -] \ No newline at end of file diff --git a/examples/stm32/lwmem_rtos_stm32l496_discovery/.vscode/launch.json b/examples/stm32/lwmem_rtos_stm32l496_discovery/.vscode/launch.json index 4ab494e..76f6682 100644 --- a/examples/stm32/lwmem_rtos_stm32l496_discovery/.vscode/launch.json +++ b/examples/stm32/lwmem_rtos_stm32l496_discovery/.vscode/launch.json @@ -8,14 +8,14 @@ "name": "Debug Microcontroller - ST-Link", "cwd": "${workspaceFolder}", "type": "cortex-debug", - "executable": "${command:cmake.launchTargetPath}", //or fixed file path: build/project-name.elf + "executable": "${command:cmake.launchTargetPath}", //or fixed file path: build/stm32h735g-dk-led.elf "request": "launch", //Use "attach" to connect to target w/o elf download "servertype": "stlink", - "device": "STM32L496AG", //MCU used + "device": "", //MCU used, ex. "STM32H735IG" "interface": "swd", "serialNumber": "", //Set ST-Link ID if you use multiple at the same time "runToMain": true, - "svdFile": "", //SVD file to see registers + "svdFile": "path/to/file.svd", //Path to SVD file to see registers "v1": false, "showDevDebugOutput": true, diff --git a/examples/stm32/lwmem_rtos_stm32l496_discovery/.vscode/tasks.json b/examples/stm32/lwmem_rtos_stm32l496_discovery/.vscode/tasks.json index 3044733..04fe040 100644 --- a/examples/stm32/lwmem_rtos_stm32l496_discovery/.vscode/tasks.json +++ b/examples/stm32/lwmem_rtos_stm32l496_discovery/.vscode/tasks.json @@ -5,7 +5,7 @@ "type": "cppbuild", "label": "Build project", "command": "cmake", - "args": ["--build", "\"build\"", "-j", "8"], + "args": ["--build", "${command:cmake.buildDirectory}", "-j", "8"], "options": { "cwd": "${workspaceFolder}" }, @@ -19,7 +19,7 @@ "type": "shell", "label": "Re-build project", "command": "cmake", - "args": ["--build", "\"build\"", "--clean-first", "-v", "-j", "8"], + "args": ["--build", "${command:cmake.buildDirectory}", "--clean-first", "-v", "-j", "8"], "options": { "cwd": "${workspaceFolder}" }, @@ -29,24 +29,7 @@ "type": "shell", "label": "Clean project", "command": "cmake", - "args": ["--build", "\"build\"", "--target", "clean"], - "options": { - "cwd": "${workspaceFolder}" - }, - "problemMatcher": [] - }, - { - "type": "shell", - "label": "Run CMake configuration", - "command": "cmake", - "args": [ - "--no-warn-unused-cli", - "-DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE", - "-DCMAKE_BUILD_TYPE:STRING=Debug", - "-DCMAKE_TOOLCHAIN_FILE:FILEPATH=gcc-arm-none-eabi.cmake", - "-Bbuild", - "-G", "Ninja" - ], + "args": ["--build", "${command:cmake.buildDirectory}", "--target", "clean"], "options": { "cwd": "${workspaceFolder}" }, diff --git a/examples/stm32/lwmem_rtos_stm32l496_discovery/CMakeLists.txt b/examples/stm32/lwmem_rtos_stm32l496_discovery/CMakeLists.txt index c55a36f..270553b 100644 --- a/examples/stm32/lwmem_rtos_stm32l496_discovery/CMakeLists.txt +++ b/examples/stm32/lwmem_rtos_stm32l496_discovery/CMakeLists.txt @@ -198,6 +198,7 @@ target_link_options(${EXECUTABLE} PRIVATE -T${MCU_LINKER_SCRIPT}${linker_script_SRC} ${CPU_PARAMETERS} -Wl,-Map=${CMAKE_PROJECT_NAME}.map + -u _printf_float # STDIO float formatting support (remove if not used) --specs=nosys.specs -Wl,--start-group -lc @@ -218,9 +219,9 @@ add_custom_command(TARGET ${EXECUTABLE} POST_BUILD COMMAND ${CMAKE_OBJCOPY} -O ihex $ ${EXECUTABLE}.hex ) -# Conver to bin file -> add conditional check? +# Convert to bin file -> add conditional check? add_custom_command(TARGET ${EXECUTABLE} POST_BUILD COMMAND ${CMAKE_OBJCOPY} -O binary $ ${EXECUTABLE}.bin ) -message("Exiting ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt") \ No newline at end of file +message("Exiting ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt") diff --git a/examples/stm32/lwmem_rtos_stm32l496_discovery/CMakePresets.json b/examples/stm32/lwmem_rtos_stm32l496_discovery/CMakePresets.json new file mode 100644 index 0000000..788b377 --- /dev/null +++ b/examples/stm32/lwmem_rtos_stm32l496_discovery/CMakePresets.json @@ -0,0 +1,43 @@ +{ + "version": 3, + "configurePresets": [ + { + "name": "default", + "hidden": true, + "generator": "Ninja", + "binaryDir": "${sourceDir}/build/${presetName}", + "toolchainFile": "${sourceDir}/cmake/gcc-arm-none-eabi.cmake", + "cacheVariables": { + "CMAKE_EXPORT_COMPILE_COMMANDS": "ON" + } + }, + { + "name": "Debug", + "inherits": "default", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Debug" + } + }, + { + "name": "RelWithDebInfo", + "inherits": "default", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "RelWithDebInfo" + } + }, + { + "name": "Release", + "inherits": "default", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Release" + } + }, + { + "name": "MinSizeRel", + "inherits": "default", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "MinSizeRel" + } + } + ] +} \ No newline at end of file diff --git a/examples/stm32/lwmem_rtos_stm32l496_discovery/gcc-arm-none-eabi.cmake b/examples/stm32/lwmem_rtos_stm32l496_discovery/cmake/gcc-arm-none-eabi.cmake similarity index 100% rename from examples/stm32/lwmem_rtos_stm32l496_discovery/gcc-arm-none-eabi.cmake rename to examples/stm32/lwmem_rtos_stm32l496_discovery/cmake/gcc-arm-none-eabi.cmake diff --git a/examples/stm32/lwmem_stm32l496_discovery/.vscode/c_cpp_properties.json b/examples/stm32/lwmem_stm32l496_discovery/.vscode/c_cpp_properties.json index 954cb6b..1ead9e6 100644 --- a/examples/stm32/lwmem_stm32l496_discovery/.vscode/c_cpp_properties.json +++ b/examples/stm32/lwmem_stm32l496_discovery/.vscode/c_cpp_properties.json @@ -2,6 +2,7 @@ "version": 4, "configurations": [ { + /* ms-vscode.cmake-tools plugin shall to be installed, which provides include paths and defines through CMake file */ "name": "STM32", "includePath": [], "defines": [], diff --git a/examples/stm32/lwmem_stm32l496_discovery/.vscode/cmake-kits.json b/examples/stm32/lwmem_stm32l496_discovery/.vscode/cmake-kits.json deleted file mode 100644 index 4bc2d1b..0000000 --- a/examples/stm32/lwmem_stm32l496_discovery/.vscode/cmake-kits.json +++ /dev/null @@ -1,10 +0,0 @@ -[ - { - "name": "GCC arm-none-eabi - custom toolchain setup", - "compilers": { - "C": "arm-none-eabi-gcc", - "CXX": "arm-none-eabi-g++" - }, - "toolchainFile": "gcc-arm-none-eabi.cmake" - } -] \ No newline at end of file diff --git a/examples/stm32/lwmem_stm32l496_discovery/.vscode/launch.json b/examples/stm32/lwmem_stm32l496_discovery/.vscode/launch.json index 4ab494e..76f6682 100644 --- a/examples/stm32/lwmem_stm32l496_discovery/.vscode/launch.json +++ b/examples/stm32/lwmem_stm32l496_discovery/.vscode/launch.json @@ -8,14 +8,14 @@ "name": "Debug Microcontroller - ST-Link", "cwd": "${workspaceFolder}", "type": "cortex-debug", - "executable": "${command:cmake.launchTargetPath}", //or fixed file path: build/project-name.elf + "executable": "${command:cmake.launchTargetPath}", //or fixed file path: build/stm32h735g-dk-led.elf "request": "launch", //Use "attach" to connect to target w/o elf download "servertype": "stlink", - "device": "STM32L496AG", //MCU used + "device": "", //MCU used, ex. "STM32H735IG" "interface": "swd", "serialNumber": "", //Set ST-Link ID if you use multiple at the same time "runToMain": true, - "svdFile": "", //SVD file to see registers + "svdFile": "path/to/file.svd", //Path to SVD file to see registers "v1": false, "showDevDebugOutput": true, diff --git a/examples/stm32/lwmem_stm32l496_discovery/.vscode/tasks.json b/examples/stm32/lwmem_stm32l496_discovery/.vscode/tasks.json index 3044733..04fe040 100644 --- a/examples/stm32/lwmem_stm32l496_discovery/.vscode/tasks.json +++ b/examples/stm32/lwmem_stm32l496_discovery/.vscode/tasks.json @@ -5,7 +5,7 @@ "type": "cppbuild", "label": "Build project", "command": "cmake", - "args": ["--build", "\"build\"", "-j", "8"], + "args": ["--build", "${command:cmake.buildDirectory}", "-j", "8"], "options": { "cwd": "${workspaceFolder}" }, @@ -19,7 +19,7 @@ "type": "shell", "label": "Re-build project", "command": "cmake", - "args": ["--build", "\"build\"", "--clean-first", "-v", "-j", "8"], + "args": ["--build", "${command:cmake.buildDirectory}", "--clean-first", "-v", "-j", "8"], "options": { "cwd": "${workspaceFolder}" }, @@ -29,24 +29,7 @@ "type": "shell", "label": "Clean project", "command": "cmake", - "args": ["--build", "\"build\"", "--target", "clean"], - "options": { - "cwd": "${workspaceFolder}" - }, - "problemMatcher": [] - }, - { - "type": "shell", - "label": "Run CMake configuration", - "command": "cmake", - "args": [ - "--no-warn-unused-cli", - "-DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE", - "-DCMAKE_BUILD_TYPE:STRING=Debug", - "-DCMAKE_TOOLCHAIN_FILE:FILEPATH=gcc-arm-none-eabi.cmake", - "-Bbuild", - "-G", "Ninja" - ], + "args": ["--build", "${command:cmake.buildDirectory}", "--target", "clean"], "options": { "cwd": "${workspaceFolder}" }, diff --git a/examples/stm32/lwmem_stm32l496_discovery/CMakeLists.txt b/examples/stm32/lwmem_stm32l496_discovery/CMakeLists.txt index 239e817..af04a85 100644 --- a/examples/stm32/lwmem_stm32l496_discovery/CMakeLists.txt +++ b/examples/stm32/lwmem_stm32l496_discovery/CMakeLists.txt @@ -182,6 +182,7 @@ target_link_options(${EXECUTABLE} PRIVATE -T${MCU_LINKER_SCRIPT}${linker_script_SRC} ${CPU_PARAMETERS} -Wl,-Map=${CMAKE_PROJECT_NAME}.map + -u _printf_float # STDIO float formatting support (remove if not used) --specs=nosys.specs -Wl,--start-group -lc @@ -202,9 +203,9 @@ add_custom_command(TARGET ${EXECUTABLE} POST_BUILD COMMAND ${CMAKE_OBJCOPY} -O ihex $ ${EXECUTABLE}.hex ) -# Conver to bin file -> add conditional check? +# Convert to bin file -> add conditional check? add_custom_command(TARGET ${EXECUTABLE} POST_BUILD COMMAND ${CMAKE_OBJCOPY} -O binary $ ${EXECUTABLE}.bin ) -message("Exiting ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt") \ No newline at end of file +message("Exiting ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt") diff --git a/examples/stm32/lwmem_stm32l496_discovery/CMakePresets.json b/examples/stm32/lwmem_stm32l496_discovery/CMakePresets.json new file mode 100644 index 0000000..788b377 --- /dev/null +++ b/examples/stm32/lwmem_stm32l496_discovery/CMakePresets.json @@ -0,0 +1,43 @@ +{ + "version": 3, + "configurePresets": [ + { + "name": "default", + "hidden": true, + "generator": "Ninja", + "binaryDir": "${sourceDir}/build/${presetName}", + "toolchainFile": "${sourceDir}/cmake/gcc-arm-none-eabi.cmake", + "cacheVariables": { + "CMAKE_EXPORT_COMPILE_COMMANDS": "ON" + } + }, + { + "name": "Debug", + "inherits": "default", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Debug" + } + }, + { + "name": "RelWithDebInfo", + "inherits": "default", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "RelWithDebInfo" + } + }, + { + "name": "Release", + "inherits": "default", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Release" + } + }, + { + "name": "MinSizeRel", + "inherits": "default", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "MinSizeRel" + } + } + ] +} \ No newline at end of file diff --git a/examples/stm32/lwmem_stm32l496_discovery/gcc-arm-none-eabi.cmake b/examples/stm32/lwmem_stm32l496_discovery/cmake/gcc-arm-none-eabi.cmake similarity index 100% rename from examples/stm32/lwmem_stm32l496_discovery/gcc-arm-none-eabi.cmake rename to examples/stm32/lwmem_stm32l496_discovery/cmake/gcc-arm-none-eabi.cmake