You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ESP32-S3模块烧录LVGL工程时无法打开端口问题求助

ESP32-S3烧录LVGL项目串口端口错误的解决方法

问题描述

尝试将LVGL移植到ESP32的演示项目烧录至搭载ESP32-S3-WROVER芯片的WT32-SC01 PLUS(3.5英寸320X480)模块,使用ESP-IDF v4.4.4编译正常,但执行烧录命令idf.py -p 9 flash时出现串口无法打开的错误。

错误日志

Executing action: flash
Running ninja in directory c:\cpp_test\!esp32\lv_port_esp32\build
Executing "ninja flash"...
[1/5] cmd.exe /C "cd /D C:\cpp_test\!esp32\lv_port_esp32\b....bin C:/cpp_test/!esp32/lv_port_esp32/build/lvgl-demo.bin"
lvgl-demo.bin binary size 0x67210 bytes. Smallest app partition is 0x100000 bytes. 0x98df0 bytes (60%) free.
[2/5] Performing build step for 'bootloader'
[1/1] cmd.exe /C "cd /D C:\cpp_test\!esp32\lv_port_esp32\build\bootloader\esp-idf\esptool_py && C:\Espressif\python_env\idf4.4_py3.11_env\Scripts\python.exe C:/espressif/frameworks/esp-idf-v4.4.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x1000 C:/cpp_test/!esp32/lv_port_esp32/build/bootloader/bootloader.bin"
Bootloader binary size 0x63b0 bytes. 0xc50 bytes (11%) free.
[2/3] cmd.exe /C "cd /D C:\espressif\frameworks\esp-idf-v4...sp-idf-v4.4.4/components/esptool_py/run_serial_tool.cmake"
esptool.py esp32 -p 9 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 40m --flash_size 2MB 0x1000 bootloader/bootloader.bin 0x10000 lvgl-demo.bin 0x8000 partition_table/partition-table.bin
Traceback (most recent call last):
esptool.py v3.3.2
Serial port 9
  File "C:\espressif\frameworks\esp-idf-v4.4.4\components\esptool_py\esptool\esptool.py", line 5482, in <module>
    _main()
  File "C:\espressif\frameworks\esp-idf-v4.4.4\components\esptool_py\esptool\esptool.py", line 5475, in _main
    main()
  File "C:\espressif\frameworks\esp-idf-v4.4.4\components\esptool_py\esptool\esptool.py", line 4782, in main
    esp = esp or get_default_connected_device(ser_list, port=args.port, connect_attempts=args.connect_attempts,
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\espressif\frameworks\esp-idf-v4.4.4\components\esptool_py\esptool\esptool.py", line 115, in get_default_connected_device
    _esp = chip_class(each_port, initial_baud, trace)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\espressif\frameworks\esp-idf-v4.4.4\components\esptool_py\esptool\esptool.py", line 345, in __init__
    self._port = serial.serial_for_url(port)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Espressif\python_env\idf4.4_py3.11_env\Lib\site-packages\serial\__init__.py", line 90, in serial_for_url
    instance.open()
  File "C:\Espressif\python_env\idf4.4_py3.11_env\Lib\site-packages\serial\serialwin32.py", line 64, in open
    raise SerialException("could not open port {!r}: {!r}".format(self.portstr, ctypes.WinError()))
serial.serialutil.SerialException: could not open port '9': FileNotFoundError(2, 'The system cannot find the file specified.', None, 2)
CMake Error at run_serial_tool.cmake:56 (message):
  C:/Espressif/python_env/idf4.4_py3.11_env/Scripts/python.exe
  C:/espressif/frameworks/esp-idf-v4.4.4/components/esptool_py/esptool/esptool.py
  --chip esp32 failed


FAILED: CMakeFiles/flash C:/cpp_test/!esp32/lv_port_esp32/build/CMakeFiles/flash
cmd.exe /C "cd /D C:\espressif\frameworks\esp-idf-v4.4.4\components\esptool_py && C:\Espressif\tools\cmake\3.23.1\bin\cmake.exe -D IDF_PATH=\"C:/espressif/frameworks/esp-idf-v4.4.4\" -D SERIAL_TOOL=\"C:/Espressif/python_env/idf4.4_py3.11_env/Scripts/python.exe C:/espressif/frameworks/esp-idf-v4.4.4/components/esptool_py/esptool/esptool.py --chip esp32\" -D SERIAL_TOOL_ARGS=\"--before=default_reset --after=hard_reset write_flash @flash_args\" -D WORKING_DIRECTORY=\"C:/cpp_test/!esp32/lv_port_esp32/build\" -P C:/espressif/frameworks/esp-idf-v4.4.4/components/esptool_py/run_serial_tool.cmake"
ninja: build stopped: subcommand failed.
ninja failed with exit code 1

解决步骤

  • 修正端口参数格式:Windows系统下串口端口必须以COM开头,原命令中的9格式错误,正确格式应为COM9,执行以下命令:
    idf.py -p COM9 flash
    
  • 确认正确的串口编号:
    1. 打开Windows设备管理器,展开「端口(COM和LPT)」,找到ESP32模块对应的串口(通常标注为「USB Serial Port」或「Silicon Labs CP210x」)。
    2. 记录对应的COM编号,确保命令中使用的编号与设备管理器显示一致。
  • 检查串口连接:
    1. 确认USB数据线具备数据传输功能(部分充电线无数据引脚),重新插拔确保连接稳定。
    2. 若设备管理器中无对应串口,安装WT32-SC01 PLUS的串口驱动(通常为CP210x驱动)。
  • 指定正确的芯片型号:模块使用ESP32-S3芯片,原命令默认指定esp32可能导致兼容性问题,建议补充芯片参数:
    idf.py -p COM9 --chip esp32s3 flash
    

内容的提问来源于stack exchange,提问作者vico

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 07:12:06