
开始下载程序:2025-03-20 09:16:57 D:\RT-ThreadStudio>cd /d D:\RT-ThreadStudio\repo\Extract\Debugger_Support_Packages\RealThread\PyOCD\0.1.3 D:\RT-ThreadStudio\repo\Extract\Debugger_Support_Packages\RealThread\PyOCD\0.1.3>pyocd.exe flash --target=STM32F103VC --erase=auto --frequency=1000000 D:\RT-ThreadStudio\workspace\jsy_system_ctrl\Debug\rtthread.bin 0001672:CRITICAL:main:No ACK received Traceback (most recent call last): File "pyocd\probe\cmsis_dap_probe.py", line 249, in read_dp File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 836, in read_reg File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 830, in read_reg_cb File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 143, in get_result File "pyocd\utility\concurrency.py", line 28, in _locking File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 667, in flush File "pyocd\utility\concurrency.py", line 28, in _locking File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 915, in _read_packet File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 449, in decode_data File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 418, in _decode_transfer_block_data File "pyocd\probe\pydapaccess\dap_access_cmsis_dap.py", line 341, in _check_response pyocd.probe.pydapaccess.dap_access_api.DAPAccessIntf.TransferError: No ACK received The above exception was the direct cause of the following exception: Traceback (most recent call last): File "pyocd__main.py", line 362, in run File "pyocd__main__.py", line 520, in do_flash File "pyocd\core\session.py", line 302, in enter__ File "pyocd\core\session.py", line 420, in open File "pyocd\board\board.py", line 85, in init File "pyocd\core\coresight_target.py", line 160, in init File "pyocd\utility\sequencer.py", line 213, in invoke File "pyocd\utility\sequencer.py", line 208, in invoke File "pyocd\coresight\dap.py", line 303, in _connect File "pyocd\coresight\dap.py", line 167, in connect File "pyocd\coresight\dap.py", line 194, in read_idr File "pyocd\probe\cmsis_dap_probe.py", line 251, in read_dp File "<string>", line 3, in raise_from pyocd.core.exceptions.TransferError: No ACK received 执行完毕, 耗时:2516ms. |
WS2812B怎么显示任意字符 / 图案?
STM32F103RCT6 定位孔 镂空,会影响使用吗?
HAL库1.8.4在做破坏性测试的时候出现g_state永远为busy的情况导致串口通信发送卡死
L9663驱动开发
stm32cubemx F103芯片tim3 encoder模式pc6和pc7引脚,自动生成代码缺少gpio映射。
stm32的同一个定时器,不同的通道,可以不同时的输出pwm波形吗
USB Device + FatFS + 外挂 flash
STM32F103C8T6 TIM1 CH2输入捕获触发DMA的问题
STM32F103在使用HAL库1.8.5版本使用串口中断发送数据的时候,会出现huart2->TxXferCount为0了,但是并没有清除掉TXEIE中断也没有使能TCIE中断,而且huart2->gState已经被置为HAL_UART_STATE_READE,导致了一直在进入TXEIE中断,主循环都无法执行
STM32的低功耗模式
看看程序里是否占用了调试脚导致连接不畅;
看看BOOT脚的配置是否为主程序启动;
AI给的:
针对DAP-LINK在空芯片第一次烧录后无法二次下载的问题,以下是分步解决方案:
检查硬件连接与供电
确认DAP-LINK与目标板的SWD接口(SWDIO、SWCLK、GND)连接正确且接触良好。 使用万用表测量目标板供电电压,确保在STM32F103VC的工作范围内(通常3.3V)。
降低SWD通信频率 修改烧录命令中的--frequency参数为较低值,如100kHz:
强制在复位状态下连接 添加--connect=under-reset参数,使pyocd在芯片复位期间连接:
手动复位操作
烧录前按住目标板的复位按钮。 执行烧录命令后,待命令提示连接时释放复位按钮。
检查程序是否禁用SWD接口
确认第一次烧录的程序未修改SWD引脚配置(如PA13/SWDIO、PA14/SWCLK)。 若程序中误关闭了SWD功能,需通过BOOT模式清除选项字节: 将BOOT0引脚接高电平,复位进入系统存储器启动模式。 使用STM32CubeProgrammer连接UART或USB DFU,清除读保护(RDP)并恢复选项字节。
尝试完整芯片擦除 修改--erase参数为chip,确保彻底擦除可能存在的保护设置:
更新工具链与PyOCD版本
升级PyOCD至最新版本(如0.36.0):
确认已安装STM32F1系列支持包:
验证DAP-LINK功能 使用其他软件(如Keil MDK、OpenOCD)测试DAP-LINK是否能正常识别芯片,排除硬件故障。
示例操作流程: