**JLink警告:CPU无法停止 *** JLINK错误:CPU运行时无法读取寄存器15(R15) ***JLink Error: Can not read register 16 (XPSR) while CPU is running .(无法读取XPSR寄存器16 ***JLink Error: Can not read register 0 (R0) while CPU正在运行 *** jlink错误:CPU运行时无法读取寄存器1(R1) ***JLink Error: Can not read register 2 (R2) while CPU正在运行 *** jlink错误:CPU运行时无法读取寄存器3(R3) ***JLink Error: Can not read register 4 (R4) while CPU正在运行 ***JLink Error: Can not read register 5 (R5) while CPU正在运行 ***JLink Error: Can not read register 6 (R6) while CPU正在运行 *** jlink错误:CPU运行时无法读取寄存器7(R7) ***JLink Error: Can not read register 8 (R8) while CPU正在运行 *** JLINK错误:CPU运行时无法读取寄存器9(R9) ***JLink Error: Can not read register 10 (R10) while CPU正在运行 *** jlink错误:CPU运行时无法读取寄存器11(R11) ***JLink Error: Can not read register 12 (R12) while CPU正在运行 *** JLINK错误:CPU正在运行时无法读取寄存器13(R13) *** JLINK错误:CPU运行时无法读取寄存器14(R14) *** JLINK错误:CPU运行时无法读取寄存器15(R15) ***JLink Error: Can not read register 16 (XPSR) while CPU is running .(无法读取XPSR寄存器16 *** jlink错误:CPU运行时无法读取寄存器17(MSP) *** jlink错误:CPU运行时无法读取寄存器18(PSP) ***JLink Error: Can not read register 20 (CFBP) while CPU正在运行
嗨Qyt,
这是我们的英文论坛,客户用英语发布他们的问题。所以,请尝试用英语翻译你的问题。否则,您可以在中国论坛中发布您的问题。
谢谢,PM_DIALOG.
嗨,PM_Dialog
对不起,我再次重复我的问题。
我在官网下载了最新的dsp程序,但是当我运行程序进入调试模式时,程序很容易运行。下载的程序有修改的地方吗?如何正常进入调试模式?我使用的芯片是DA14580。
谢谢,Qyt.
嗨Qyt,
谢谢你用英语翻译你的问题。
你能把你的问题说清楚吗?你的意思是固件下载到系统ram后,你仍然附加了调试器,你想修改固件?如果是,这是不可能的
我强烈推荐你去看一看教程8:调试方法它描述了如何调试代码。
谢谢,PM_DIALOG.
嗨,pm_dialog.
我将详细描述我的问题。
我使用keil IDE打开DSPS的工程v5.15版本。在打开调试模式的过程中出现问题。当我启动调试会话并运行它时,命令将打印以下信息:
函数void disp_memlog(空白)
{
int idx;
unsigned int min_delta;
Exec(“log> memlog.log”);
printf("\n\n***内存记录结果***\n\n");
printf(">>> ENV HEAP <<<\n");
printf("Used size in this HEAP: %4d (current) - %4d (maximum)\n"), mem_log[0]。used_sz, mem_log [0] .max_used_sz);
printf("Used size in other HEAPs: %4d (current) - %4d (maximum)\n\n"), mem_log[0]。used_other_sz, mem_log [0] .max_used_other_sz);
printf(">>> DB HEAP <<<\n");
printf(“此堆中的使用大小:%4d(当前) - %4d(最大)\ n”,mem_log [1] .used_sz,mem_log [1] .max_used_sz);
printf("Used size in other HEAPs: %4d (current) - %4d (maximum)\n\n"), mem_log[1]。used_other_sz, mem_log [1] .max_used_other_sz);
printf(">>> MSG HEAP <<<\n");
printf("Used size in this HEAP: %4d (current) - %4d (maximum)\n"), mem_log[2]。used_sz, mem_log [2] .max_used_sz);
printf(“其他堆中的使用大小:%4d(当前) - %4d(最大)\ n \ n”,mem_log [2] .used_other_sz,mem_log [2] .max_used_other_sz);
printf(">>> Non-Ret HEAP <<<\n");
printf(“此堆中的使用大小:%4d(当前) - %4d(最大)\ n”,mem_log [3] .use_sz,mem_log [3] .max_used_sz);
printf(“其他堆中的使用大小:%4d(current) - %4d(最大)\ n \ n”,mem_log [3] .used_other_sz,mem_log [3] .max_used_other_sz);
exec(“注销”);
} // disp_memlog()结束
**JLink警告:CPU无法停止
*** JLINK错误:CPU运行时无法读取寄存器15(R15)
***JLink Error: Can not read register 16 (XPSR) while CPU is running .(无法读取XPSR寄存器16
***JLink Error: Can not read register 0 (R0) while CPU正在运行
*** jlink错误:CPU运行时无法读取寄存器1(R1)
***JLink Error: Can not read register 2 (R2) while CPU正在运行
*** jlink错误:CPU运行时无法读取寄存器3(R3)
***JLink Error: Can not read register 4 (R4) while CPU正在运行
***JLink Error: Can not read register 5 (R5) while CPU正在运行
***JLink Error: Can not read register 6 (R6) while CPU正在运行
*** jlink错误:CPU运行时无法读取寄存器7(R7)
***JLink Error: Can not read register 8 (R8) while CPU正在运行
*** JLINK错误:CPU运行时无法读取寄存器9(R9)
***JLink Error: Can not read register 10 (R10) while CPU正在运行
*** jlink错误:CPU运行时无法读取寄存器11(R11)
***JLink Error: Can not read register 12 (R12) while CPU正在运行
*** JLINK错误:CPU正在运行时无法读取寄存器13(R13)
*** JLINK错误:CPU运行时无法读取寄存器14(R14)
*** JLINK错误:CPU运行时无法读取寄存器15(R15)
***JLink Error: Can not read register 16 (XPSR) while CPU is running .(无法读取XPSR寄存器16
*** jlink错误:CPU运行时无法读取寄存器17(MSP)
*** jlink错误:CPU运行时无法读取寄存器18(PSP)
***JLink Error: Can not read register 20 (CFBP) while CPU正在运行
我用jlink下载程序。我可以保证连接是正确的,因为调试da1458x_sdk5.0.1从官方网站下载的程序的版本也没有问题。
请帮我解决这个问题。
谢谢,Qyt.
嗨Qyt,
您能否向我提供一些关于您的问题的额外投入?您使用的是我们的任何开发板或您有定制董事会吗?您是否能够下载固件表单中的任何其他示例的SDK进入System-RAM?
从Keil环境,请导航到:
项目 - >目标选项 - >调试 - >设置(右上角)
之后,您应该能够看到J-Link的序列号。按OK并尝试将固件下载到HE System-RAM中。
谢谢,PM_DIALOG.
嗨,pm_dialog.
我有一个自定义板。我可以从SDK的任何其他示例下载到System-RAM的固件。只有这个DSP的示例才有问题,我知道Keil环境的配置没有问题。我还可以看到jlink的序列号,然后单击确定,但仍然会在前面描述的问题。
谢谢,Qyt
嗨Qyt,
DSPS项目默认使用的是延长睡眠模式,所以如果你把它改成活动模式,请问你现在是否有同样的问题?
app_default_sleep_mode = ARCH_SLEEP_OFF;/ /在user_config.h
谢谢,PM_DIALOG.
嗨,PM_Dialog
谢谢你的回答,我已经解决了以前的问题,现在我有一个新的问题我想问一下,同样的是DSPS程序,我只能在运行后发送数据,不可接受数据,是否是在程序中完成了什么修改?
谢谢,Qyt.
嗨Qyt,
很高兴你读了你的问题,如果你发现我的答案有用请标记它。你能澄清第二个问题吗?您将DA14580连接到DSPS移动应用程序,不是吗?您是否在源代码中进行了任何修改?请注意,如果使用扩展睡眠模式,则必须使用UART流量控制(HW for SW流量控制)。否则,你将无法醒来。
谢谢,PM_DIALOG.
嗨,PM_Dialog
我将DA14580连接到DSPS移动应用程序。我没有对源代码进行任何更改。现在我可以通过计算机向手机发送数据,但我无法通过手机向计算机的串行端口发送数据。现在数据传输是单向传输。我是否需要在DSPS程序中进行一些修改以实现双向数据传输?
谢谢,Qyt
嗨Qyt,
不,您将不需要对DSPS参考设计做任何修改,以便将数据从您的手机发送到PC。你能给我一些建议吗?您正在使用哪个PC串行应用程序?你是如何将数据从手机发送到PC的?如果你发现任何有用的答案,请在其中一个上标记为“已接受”。
谢谢,PM_DIALOG.
嗨,PM_Dialog
我使用的是你们官网的DAPS应用。我用这个软件连接到DA14580。我可以在PC上向手机发送数据,但我不能从手机向PC发送数据。目前还不清楚软件端是否有需要修改的配置。
PC上的串口应用应该没问题,使用我平时用的串口助手来打印数据。dsp程序的v5.15版本是否无法在串口应用中打印手机发送的数据。但是我可以使用V3.15版本的dsp程序在PC和手机上正常发送和接收数据。所以为了实现数据的双向收发功能,我想知道V5.15的版本是否需要修改。
谢谢,Qyt.
嗨Qyt,
如果你有一个自定义板,你使用哪个UART引脚?请注意,如果您想使用扩展睡眠模式,您应该有UART流控制(软件或硬件)。否则你将无法醒来,因为该设备会在广告或连接间隔期间进入延长睡眠模式。
谢谢,PM_DIALOG.