更新了一下VScode,ST最新版本是3.6.4
cubeIDE编译后如何能把部分代码存放到内部Flash,剩下的存放在外部Flash?
cubeide的代码怎么编译到内部+外部FLASH里面去
有人用过正式版的STM32CubeIDE for Visual Studio Code了吗?
STM32CubeID V1.19.0 无法识别串口设备
配置CubeMX后(STM32H723VGT6),自动生成的代码,编译报错
基于STM32F103的HAL库实现USB(HID) OTA升级
stm32g431rbt怎么显示汉字
STM32N6中使用AI推理的时候调用app_postprocess_init的时候程序卡死
怎么将keil工程更换为vscode工具链?
微信公众号
手机版
显示如下报错
D:/stm32cubeide/STM32CubeIDE_1.14.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.100.202309141235/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/bin/ld.exe: ./Core/Src/gpio.o:D:/stm32cubeide/L431_RTOS/Debug/../Core/Inc/main.h:42: multiple definition of `u_buf'; ./Core/Src/freertos.o:D:/stm32cubeide/L431_RTOS/Debug/../Core/Inc/main.h:42: first defined here
D:/stm32cubeide/STM32CubeIDE_1.14.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.100.202309141235/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/bin/ld.exe: ./Core/Src/main.o:D:/stm32cubeide/L431_RTOS/Debug/../Core/Inc/main.h:42: multiple definition of `u_buf'; ./Core/Src/freertos.o:D:/stm32cubeide/L431_RTOS/Debug/../Core/Inc/main.h:42: first defined here
D:/stm32cubeide/STM32CubeIDE_1.14.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.100.202309141235/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/bin/ld.exe: ./Core/Src/stm32l4xx_hal_msp.o:D:/stm32cubeide/L431_RTOS/Debug/../Core/Inc/main.h:42: multiple definition of `u_buf'; ./Core/Src/freertos.o:D:/stm32cubeide/L431_RTOS/Debug/../Core/Inc/main.h:42: first defined here
D:/stm32cubeide/STM32CubeIDE_1.14.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.100.202309141235/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/bin/ld.exe: ./Core/Src/stm32l4xx_it.o:D:/stm32cubeide/L431_RTOS/Debug/../Core/Inc/main.h:42: multiple definition of `u_buf'; ./Core/Src/freertos.o:D:/stm32cubeide/L431_RTOS/Debug/../Core/Inc/main.h:42: first defined here
D:/stm32cubeide/STM32CubeIDE_1.14.1/STM32CubeIDE/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.11.3.rel1.win32_1.1.100.202309141235/tools/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/bin/ld.exe: ./Core/Src/usart.o:D:/stm32cubeide/L431_RTOS/Debug/../Core/Inc/main.h:42: multiple definition of `u_buf'; ./Core/Src/freertos.o:D:/stm32cubeide/L431_RTOS/Debug/../Core/Inc/main.h:42: first defined here
collect2.exe: error: ld returned 1 exit status
make: *** [makefile:68: L431_RTOS.elf] Error 1
重复定义了,引用一次main.h就会定义一次,在main.h中,一般用户extern或者特殊的定义方式,防止重复定义。
建议看看C语言extern关键字的用法。
建议多读读HAL库源码,学学别人的代码结构。