评论
我还没有处理我的工作,但我很确定您需要使用 STLink 上传图像。 |
我有一个 ST-link,可以试试。 我必须承认,在引导加载程序方面我有点迷茫,我是否需要上传一个新的引导加载程序来实现这一点,或者它是构建过程的一部分吗?这对我来说是全新的,因为我之前使用过基于 Arduino 的 grbl 控制器,并且构建马林鱼只是按照说明进行,没有任何问题。 我真的不在乎我使用什么 IDE,如果它有帮助我可以切换到另一个 IDE。如果我让它工作,我可以写一份详细的说明列表来帮助其他专注于让它工作的人。我可以购买第二个控制器并为将来的版本构建测试环境。 |
以下是我对引导加载程序概念的理解: 引导加载程序是一段或多或少永久驻留在控制器中的代码(有些在 ROM 中)。它从某个地方(例如 SD 卡)读取二进制文件并将其闪存,然后设置处理器(重新定位向量表)并启动它。 可闪存引导加载程序通常(?)放置在向量表所在的闪存的开头。对于那些刷写驻留在 SD 卡上的代码的人,它设置 MCU 以从中读取并检查是否存在二进制文件(firmware.bin),如果找到则将其闪烁在内存中的自身上方(您会在起始地址上方看到用于我提供的二进制文件是 0x08008000,而不是闪存开始处的 0x08000000)。如果没有找到,它会检查有效代码(?)并输入已经闪烁的代码。 IIRC 对于 ARM 处理器,链接器生成的代码必须与要运行的地址相匹配,否则会崩溃。 请注意,如果引导加载程序位于闪存中,则在使用调试探针进行闪存时可能会覆盖它,如果发生这种情况,则必须重新闪存。 您是否尝试运行我制作的二进制文件?请注意,它必须重命名为SD 卡上的firmware.bin,否则引导加载程序不会刷新它。 |
感谢您对引导加载程序的细分,这很有帮助。 我尝试了预编译的二进制文件,将其放在 SD 卡上(重命名为 firmware.bin)并重新启动了电路板。不幸的是,同样的问题出现在 Windows 未检测到该板的地方。 |
USB 外围设备对不正确的时钟设置非常敏感。我们应该以某种方式排除任何问题? |
我的 STLINK V2 已经到了,我设法用 marlin 引导加载程序(擦掉它之后……糟糕)和 marlin 固件来刷新控制器,所有这些都是通过 stlink。在闪烁 grblhal 后我仍然没有让窗口检测板,这可能是由于我的构建。所有电压似乎都很好,它一定是设备内存中的引导加载程序和固件。我一定做错了什么。 使用 stlink 和相关软件,我可以做些什么来共享设备信息以便对其进行诊断? |
您是否确认您的 SKR2 具有 STM32F407VGT6 而不是 STM32F429VGT6? |
我刚刚提交了一个更新,其中清理了调试配置,希望这可以帮助解决这个问题。 暂停程序时,它应该在代码中的随机位置停止,而不是在故障处理程序中。验证。 请注意,这会覆盖引导加载程序,并且必须在尝试引导加载程序版本之前重新刷新。 |
我可以确认芯片是 F407 而不是 STM32F429VGT6 我只是在学习如何使用 STM32CUBE IDE,所以我可能需要一天左右的时间才能回复, 我可能会得到一些开发板来练习。我更熟悉 8 位世界,这是我第一次真正体验 32 位(工具已经走了很长一段路) |
我想我已经取得了一些不错的进步。 在执行以下所有步骤之前,我删除了现有的 Eclipse 工作区 步骤 1 – 安装 STM32CUBEIDE 我是 STM32CUBEIDE 的新手,所以我认为我没有正确调试它,但发布指南会很有用。 即使我遇到了所有问题,我仍然热衷于使用这个板。它没有引导加载程序,但我不在乎,只要它能工作就行。 由于 board 的逗号现在可以工作,我可以继续构建一个与我自制的 cnc 相匹配的工作配置。哦,建立一个用于手动控制的控制板。 我有一个问题,获得第二块板并测试新版本是否对这个社区有帮助?无论如何我都会测试新版本,因为 cnc 一直在使用,我不想在生产系统上测试? |
@bthird很好,这意味着时钟设置是正确的。 我假设您刷过Debug F407 8MHz版本?那么引导加载程序构建一定有问题。
网上有很多攻略,搜索一下就会找到很多。
是的,这可能会有所帮助。我主要在发布前测试 STM32F401、STM32F756 和 iMXRT1062 驱动程序的更改,具体取决于更改的内容。但是,我不会使用可用的不同板图重新测试所有不同的配置。这将是一项艰巨的任务,也是不可能的,因为我没有,也不想要所需的电路板。可以设置自动化测试,但这只会捕获编译问题,而不是像这样的运行时问题。 |
您如何从 STM32CUBEProgrammer 加载固件?我可以看到我的 ST-Link,但无法将其连接到 SKR 板。我尝试了重置按钮和不同的 ST-Link 配置位,我似乎无法将其设置为连接状态以上传固件。 编辑:我设法能够使用 STM32 St-Link Utility 上传固件! |
@terjeio我相信设置是正确的。至于将是我下一个任务的引导加载程序(我不会将它用于我的生产系统)。我并不是说引导加载程序坏了,可能是我缺乏知识导致了问题。我正在订购第二块板,并将完成一个带有屏幕截图的详细帮助文件(不确定上传到哪里,因为这不是问题)。我认为需要董事会的具体帮助,因为要让它发挥作用可能会有一些不同的过程。 @boboxx第一步真的应该是更新您的 ST 链接的固件,我有稳定性问题,但我正在使用克隆。 如果您能够上传固件,您可以通过比较两个文件来检查上传的文件是否已正确上传。 |
@boboxx 你是如何解决这个问题的? |
我已将此存储库的 Wiki 开放供所有人编辑,因此请将其添加到其中。 引导加载程序没问题,是二进制文件不正确——可能是错误的起始地址?可能可以调试二进制文件,但我不确定该怎么做。也许必须在调试配置中更改起始地址?或者它可以使用当前设置进行调试?我从来没有尝试从不同于闪存开始的地址加载和运行二进制文件,所以我根本不知道。 下面我标出了可能需要设置的设置: IMO 二进制文件本身很好,因为它在闪存开始时闪烁时运行。
之后能连上吗? |
我仍然无法在最新的拉动下使用它。我在 STM ide 和 Platform 上试过了。我可以通过 stlink 上传固件,但开发板无法启动。 [ env:btt_skr_2 ] |
@boboxx如果您使用 ST-Link 和引导加载程序版本进行闪存,则必须更改目标地址,否则您将覆盖引导加载程序并且 MCU 将崩溃。在我看来,使用 ST-Link 刷新“正常”版本对您来说会更简单。 |
我怎样才能找到正常闪光灯应该设置什么?我已经刷过几次这个板所以它很可能丢失了它原来的引导加载程序 |
尝试将加载程序脚本更改为 |
非常感谢你的工作:) |
我在通过 SD 卡将固件上传到 BTT SKR2 板时遇到问题。当通过 SD 卡插入固件时,未检测到电路板。万一这是一块有问题的板子,我上传了 Marlin 2.0,它又可以工作了。
我所做的唯一更改是:
inc/my_machine.h 删除注释
#define BOARD_BTT_SKR_20 // 基于 F407 的 3D 打印机板
和
platfomio.ini 添加:
[env:btt_skr_2]
board = genericSTM32F407VGT6
board_build.ldscript = STM32F407VGTX_BL32K_FLASH.ld
build_flags = ${common.build_flags}
-D BOARD_BTT_SKR_20=
-D HSE_VALUE=8000000
-D USB_SERIAL_CDC=1
-D VECT_TAB_OFFSET= 0 ${common.build_flags} -D VECT_TAB_OFFSET=
0
eeprom
lib_extra_dirs = ${common.lib_extra_dirs}
我还尝试使用 board_build.ldscript = STM32F407VGTX_FLASH.ld 来构建不同的电路板
我对 grblhal 寄予厚望,我真的希望它能正常工作,因为 GRBL 在我的机器上非常棒。
警告!
-d board_btt_skr_20
忽略[env:btt_skr_2] 部分中的未知配置选项警告!
-d hse_value
忽略[env:btt_skr_2] 部分中的未知配置选项警告!
-d usb_serial_cdc
忽略[env:btt_skr_2] 部分中的未知配置选项警告!
-d vect_tab_offset
忽略[env:btt_skr_2] 部分中的未知配置选项处理 btt_skr_2(板:genericSTM32F407VGT6;平台:ststm32;框架:stm32cube)
———————— ———————————————- ———————————————- ———————————————- ————————– 可以通过
-v, --verbose
选项配置启用详细模式:https://docs.platformio.org/page/boards/ststm32/genericSTM32F407VGT6.html
平台:ST STM32 (15.0.0) > STM32F407VG(128k RAM。1024k 闪存)
硬件:STM32F407VGT6 168MHz、128KB RAM、1MB 闪存
DEBUG:当前(stlink) 外部 (jlink, stlink) 包
:
LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ off, Compatibility ~ soft
找到 78 个兼容库
扫描依赖…
依赖关系图
|–
|–
|–
|–
|–
|–
|–
|–
|–
|–
|–
|–
在发布模式下
构建 编译 .pio\build\btt_skr_2\ FrameworkHALDriver\Src\stm32f4xx_hal.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_adc.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_adc_ex.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_can.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_cec.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xop.o
编译.cortex \btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_crc.o
Compiling .pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_cryp.o
Compiling .pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_cryp_ex.o
Compiling .pio\build\btt_skr_2\FrameworkHALDriver\ src\stm32f4xx_hal_dac.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_dac_ex.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_dcmi.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_dcmi_ex.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_dfsdm.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\
Srcp.x_halingdma.x_stm32f4x \btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_dma2d.o
Compiling .pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_dma_ex.o
Compiling .pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_dsi.o
Compiling .pio\build\btt_skr_2\FrameworkHALDriver\ src\stm32f4xx_hal_eth.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_exti.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_flash.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_flash_ex.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_flash_ramfunc.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\
stm32f4x \btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_fmpi2c_ex.o
Compiling .pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_fmpsmbus.o
Compiling .pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_fmpsmbus_ex.o
Compiling .pio\build\btt_skr_2\FrameworkHALDriver\ src\stm32f4xx_hal_gpio.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_hash.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_hash_ex.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_hcd.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_i2c.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\
stm32f4xx_build.o \btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_i2s.o
Compiling .pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_i2s_ex.o
Compiling .pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_irda.o
Compiling .pio\build\btt_skr_2\FrameworkHALDriver\ src\stm32f4xx_hal_iwdg.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_lptim.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_ltdc.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_ltdc_ex.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_mmc.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\
stm32_f4.xx_hal \btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_nor.o
编译 .pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_pccard.o
编译 .pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_pcd.o 编译 .pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_pcd
\FrameworkHAL_build2\Drivetio src\stm32f4xx_hal_pcd_ex.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_pwr.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_pwr_ex.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_qspi.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_rcc.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\
stm32fcc_exx.hal_r \btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_rng.o
编译 .pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_rtc.o
编译 .pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_rtc_rng.o
编译src\stm32f4xx_hal_sai.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_sai_ex.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_sd.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_sdram.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_smartcard.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\
stm32_f4xx_build.xx_hal \btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_spdifrx.o
编译 .pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_spi.o
编译 .pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_tioskrbuildHDriverb.o
编译src\stm32f4xx_hal_tim.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_tim_ex.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_uart.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_usart.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_hal_wwdg.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\
stm32f4.xx_ll \btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_ll_crc.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_ll_dac.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_ll_dma.o
编译HAL\rFrameworkr\Drivet2pio src\stm32f4xx_ll_dma2d.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_ll_exti.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_ll_fmc.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_ll_fmpi2c.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_ll_fsmc.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\
stm32_f4x \btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_ll_i2c.o
Compiling .pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_ll_lptim.o
Compiling .pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_ll_pwr.o
Compiling .pio\build\btt_skr_2\FrameworkHALDriver\ src\stm32f4xx_ll_rcc.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_ll_rng.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_ll_rtc.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_ll_sdmmc.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_ll_spi.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\
stm32f4.xx_ll \btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_ll_usart.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_ll_usb.o
编译.pio\build\btt_skr_2\FrameworkHALDriver\Src\stm32f4xx_ll_utils.o
编译\tio_skr_build8\tioskr_buildb4\tioskr_buildb4蓝牙\hc_05.o
编译.pio\build\btt_skr_2\lib532\grbl\alarms.o
编译.pio\build\btt_skr_2\lib532\grbl\coolant_control.o
编译.pio\build\btt_skr_2\lib532\grbl\corexy.o
编译.pio\build\btt_skr_2\lib532\grbl\errors.o
编译.pio\build\btt_skr_2\lib532\grbl\gcode.o
编译.pio\build\btt_skr_2\lib532\grbl\grbllib.o
编译.pio\build\btt_skr_2\lib532\grbl\ioports.o
编译.pio\build \btt_skr_2\lib532\grbl\limits.o
编译 .pio\build\btt_skr_2\lib532\grbl\maslow.o
编译 .pio\build\btt_skr_2\lib532\grbl\motion_control.o
编译 .pio\build\btt_skr_2\lib532\ grbl\my_plugin.o
编译 .pio\build\btt_skr_2\lib532\grbl\ngc_expr.o
编译 .pio\build\btt_skr_2\lib532\grbl\ngc_params.o
编译 .pio\build\btt_skr_2\lib532\grbl\nuts_bolts.o
编译.pio\build\btt_skr_2\lib532\grbl\nvs_buffer.o
编译.pio\build\btt_skr_2\lib532\grbl\override.o
编译.pio\build\btt_skr_2\lib532\grbl\pid.o
编译.pio\build\btt_skr_2\lib532\grbl\planner.o
编译.pio\build\btt_skr_2\lib532\grbl\protocol.o
编译.pio\build \btt_skr_2\lib532\grbl\regex.o
编译 .pio\build\btt_skr_2\lib532\grbl\report.o
编译 .pio\build\btt_skr_2\lib532\grbl\settings.o
编译 .pio\build\btt_skr_2\lib532\ grbl\sleep.o
编译 .pio\build\btt_skr_2\lib532\grbl\spindle_control.o
编译 .pio\build\btt_skr_2\lib532\grbl\state_machine.o
编译 .pio\build\btt_skr_2\lib532\grbl\stepper.o
编译 .pio\build\btt_skr_2\lib532\grbl\stream.o
编译 .pio\build\btt_skr_2\lib532\grbl\system.o
编译 .pio\build\btt_skr_2\lib532\grbl\tool_change.o
编译 .pio\build\btt_skr_2\lib532\grbl\wall_plotter.o
编译 .pio\build\btt_skr_2\lib5bd\keypad\keypad.o
编译 .pio\build \btt_skr_2\lib291\laser\coolant.o
编译 .pio\build\btt_skr_2\lib291\laser\ppi.o
编译 .pio\build\btt_skr_2\libcb6\motors\trinamic.o
编译 .pio\build\btt_skr_2\libaed\ odometer\odometer.o
编译.pio\build\btt_skr_2\lib25d\spindle\huanyang.o
编译.pio\build\btt_skr_2\lib25d\spindle\modbus.o
编译.pio\build\btt_skr_2\lib153\Core\usbd_core.o
编译.pio\build\btt_skr_2\lib153\Core\usbd_ctlreq.o
编译.pio\build\btt_skr_2\lib153\Core\usbd_ioreq.o
编译 .pio\build\btt_skr_2\libe35\Class\CDC\Src\usbd_cdc.o
编译 .pio\build\btt_skr_2\lib1a6\App\usb_device.o
编译 .pio\build\btt_skr_2\lib1a6\App\usbd_cdc_if.o
编译.pio\build\btt_skr_2\lib1a6\App\usbd_desc.o
编译 .pio\build\btt_skr_2\lib860\Target\usbd_conf.o
编译 .pio\build\btt_skr_2\lib319\eeprom\eeprom_24AAxxx.o
编译 .pio\build\ btt_skr_2\lib319\eeprom\eeprom_24LC16B.o
编译.pio\build\btt_skr_2\src\btt_skr_2.0.o
编译.pio\build\btt_skr_2\src\diskio.o
编译.pio\build\btt_skr_2\src\driver.o
编译.pio\build\btt_skr_2\src\flash.o
编译.pio\build\btt_skr_2\src\i2c.o
编译.pio\build\btt_skr_2\src\ioports.o
编译.pio\build\btt_skr_2\src\main.o
编译.pio\build\btt_skr_2\src\serial.o
编译.pio\build\btt_skr_2\src\spi.o
编译.pio\build\btt_skr_2\src\st_morpho .o
编译 .pio\build\btt_skr_2\src\st_morpo_dac.o
编译 .pio\build\btt_skr_2\src\stm32f4xx_hal_msp.o
编译 .pio\build\btt_skr_2\src\stm32f4xx_it.o
编译 .pio\build\btt_skr_2\src \syscalls.o
编译 .pio\build\btt_skr_2\src\sysmem.o
编译 .pio\build\btt_skr_2\src\system_stm32f4xx.o
编译 .pio\build\btt_skr_2\src\usb_serial.o
编译 .pio\build\btt_skr_2 \FrameworkCMSISDevice\gcc\startup_stm32f407xx.o
编译.pio\build\btt_skr_2\FrameworkCMSISDevice\system_stm32f4xx.o
存档 .pio\build\btt_skr_2\libFrameworkCMSISDevice.a
链接 .pio\build\btt_skr_2\firmware.elf
检查大小 .pio\build\btt_skr_2\firmware.elf
通过“PlatformIO Home > Project Inspect”RAM 可获得高级内存使用情况
:[ = ] 8.3%(使用了 131072 字节中的 10912 字节)
闪存:[= ] 11.0%(使用了 1048576 字节中的 115512 字节)
构建 .pio\build\btt_skr_2\firmware.bin
============ ================================================ ======================= [成功] 耗时 14.12 秒 ===================== ================================================ ==============
环境状态持续时间
btt_skr_2 成功 00:00:14.124
=========================================== ========================================== 1 成功于 00:00:14.124 ================================================ ===================================
终端将被任务重用,按任意键关闭它。
谁能阐明我可能做错了什么?