仿真时不断显示keep_alive错

用wch_link仿真CH582M的开发板,开启2线调试接口后仿真,不断出现这样的错误:

Warn : keep_alive() was not invoked in the 1000 ms timelimit. GDB alive packet not sent! (19157 ms). Workaround: increase "set remotetimeout" in GDB

Error: [wch_riscv.cpu.0] DMSTATUS read didn't complete in 2 seconds. The target is either really slow or broken. You could increase the timeout with `riscv set_command_timeout_sec`.

Warn : keep_alive() was not invoked in the 1000 ms timelimit. GDB alive packet not sent! (2123 ms). Workaround: increase "set remotetimeout" in GDB

Error: [wch_riscv.cpu.0] DMSTATUS read didn't complete in 2 seconds. The target is either really slow or broken. You could increase the timeout with `riscv set_command_timeout_sec`.

这是什么原因,怎么解决?

您好,看报错信息是读取调试模块寄存器失败,您确认下调试过程中杜邦线是否松动,以及程序中是否有进入低功耗或者睡眠模式


仿真之前下载代码都是成功的,但是开始仿真之后就一直报错,无法正常仿真。接线也是好的,用的代码是官方的BLE_UART例程。


您好,下图是我这边用MRS185和wch-link调试最新EVT中 ble_uart程序的现象,您可以新建一个CH582M的模板工程来试一下,或者下载最新的CH582EVT。

image.png


不好意思,是我的错,没留意开了休眠模式。关掉休眠模式以后仿真就正常了。


只有登录才能回复,可以选择微信账号登录