为什么USB串口无法与STM32黑药丸中的STM32FreeRTOS配合使用?

问题描述 投票:0回答:1

在我的 STM32 项目中,我想同时使用 FreeRTOS 和串行通信。但在包含 FreeRTOS 依赖项后,串行连接无法正常工作。我正在 PlatformIO STM32Duino 框架工作并使用库 FreeRTOS

看下面是我的测试代码

#include <Arduino.h>
void setup() {

  Serial.begin(9600);
  Serial.println("Serial Started...");
}
void loop() {
  Serial.println("Hello world..");
  delay(1000);
}

PlatformIO配置如下

[env:STM32]
platform = ststm32
board = blackpill_f411ce
framework = arduino
upload_protocol = dfu
monitor_speed = 115200
build_flags = 
    -D PIO_FRAMEWORK_ARDUINO_ENABLE_CDC
    -D USBCON
build_src_filter=+<*> -<.git/> -<.svn/> -<doc/>
lib_deps= https://github.com/stm32duino/STM32FreeRTOS/archive/refs/tags/10.3.2.zip

但是我发现在Windows中检测到COM端口,但串行监视器无法连接到COM端口。 如果我注释掉“lib_deps=....”行,一切正常

如果有人知道解决方案请告诉我

c++ arduino stm32 freertos platformio
1个回答
0
投票

我在 ini 文件中定义了 configMEMMANG_HEAP_NB,现在 Serial 和 FreeRTOS 可以正常工作。以下是新配置

[env:STM32]
platform = ststm32
board = blackpill_f411ce
framework = arduino
debug_tool = stlink
upload_protocol = stlink
monitor_speed = 115200
build_flags = 
    -D PIO_FRAMEWORK_ARDUINO_ENABLE_CDC
    -D USBCON
    -D configMEMMANG_HEAP_NB
build_src_filter=+<*> -<.git/> -<.svn/> -<doc/>
lib_deps=https://github.com/stm32duino/STM32FreeRTOS.git
© www.soinside.com 2019 - 2024. All rights reserved.