大家好
I've build the demo project ble_adv (release QSPI)
然后我调试它,有很多错误信息:
----------------------------------------------------------------------------------------------------
Segger J-Link GDB Server V5.12F命令行版本
jlinkarm.dll v5.12f(DLL编译5月17日2016年5月17日16:03:35)
WARNING: Unknown command line parameter singlerun found.
-----GDB Server start settings-----
GDBInit file: none
GDB服务器侦听端口:2331
SWO原始输出聆听端口:2332
终端I / O端口:2333
接受远程连接:仅限LocalHost
生成logfile:开
Verify download: on
Init regs on start: on
Silent mode: off
单次运行模式:关闭
目标连接超时:0毫秒
------ J-LINK相关设置------
J-Link Host interface: USB
J-Link脚本:无
J-Link设置文件:无
------目标相关的设置------
目标设备:Cortex-M0
Target interface: SWD
目标接口速度:8000kHz
目标endian:很少
Connecting to J-Link...
j-link已连接。
固件:J-Link ob-Sam3u128 V1编译3月29日2016年18:48:55
硬件:v1.00.
S/N: 480059073
Checking target voltage...
目标电压:3.30 V
Listening on TCP/IP port 2331
连接到目标...连接到目标
等待GDB连接...连接到127.0.0.1
阅读所有寄存器
阅读4个字节@地址0x00000000(Data = 0x07Fe0428)
目标接口速度设置为30 kHz
Resets core & peripherals via SYSRESETREQ & VECTRESET bit.
停止目标CPU ......
...Target halted (PC = 0x07F000D4)
R0 = FFFFFFFF, R1 = FFFFFFFF, R2 = FFFFFFFF, R3 = FFFFFFFF
R4 = FFFFFFFF, R5 = FFFFFFFF, R6 = FFFFFFFF, R7 = FFFFFFFF
r8 = ffffffff,r9 = ffffffff,r10 = ffffffff,r11 = fffffffff
R12= FFFFFFFF, R13= 07FE0428, MSP= 07FE0428, PSP= FFFFFFFC
R14(LR)= FFFFFFFF,R15(PC)= 07F000D4
XPSR C1000000,APSR C0000000,EPSR 01000000,IPSR 00000000
CFBP 00000000,控制00,FaultMask 00,BasePri 00,Primask 00
阅读所有寄存器
读取4个字节@地址0x07f000d4(Data = 0x47804804)
选择自动目标接口速度(2000 kHz)
Flash breakpoints disabled
Resets core & peripherals via SYSRESETREQ & VECTRESET bit.
睡10毫秒
停止目标CPU ......
...Target halted (PC = 0x07F000D4)
写0xdeadbeef @地址0x07fd0000
写0xdeadbeef @地址0x07fd0004
写0xdeadbeef @地址0x07fd0008
编写0xDead10CC @地址0x07fd000c
Writing 0x00000001 @ address 0x400C3050
睡1000ms.
Resets core & peripherals via SYSRESETREQ & VECTRESET bit.
睡10毫秒
停止目标CPU ......
...Target halted (PC = 0x07F01E8A)
读取4个字节@地址0x07f000d4(Data = 0x47804804)
警告:无法读取内存@地址0xFFFFFFFF
警告:无法读取内存@地址0xFFFFFFFF
Resets core & peripherals via SYSRESETREQ & VECTRESET bit.
停止目标CPU ......
...Target halted (PC = 0x07F000D4)
执行setrttsearchranges 0x07fc0000 0x20000
阅读2个字节@地址0x0800a08e(data = 0xffff)
阅读2个字节@地址0x0800a08e(data = 0xffff)
阅读2个字节@地址0x0800A08C(Data = 0xFFFF)
R0 = FFFFFFFF, R1 = FFFFFFFF, R2 = FFFFFFFF, R3 = FFFFFFFF
R4 = FFFFFFFF, R5 = FFFFFFFF, R6 = FFFFFFFF, R7 = FFFFFFFF
r8 = ffffffff,r9 = ffffffff,r10 = ffffffff,r11 = fffffffff
R12= FFFFFFFF, R13= 07FE0428, MSP= 07FE0428, PSP= FFFFFFFC
R14(LR)= FFFFFFFF,R15(PC)= 07F000D4
XPSR C1000000,APSR C0000000,EPSR 01000000,IPSR 00000000
CFBP 00000000,控制00,FaultMask 00,BasePri 00,Primask 00
阅读所有寄存器
读取4个字节@地址0x07f000d4(Data = 0x47804804)
Setting breakpoint @ address 0x0800A08C, Size = 2, BPHandle = 0x0001
启动目标CPU ...
ERROR: Can not read register 15 (R15) while CPU is running
阅读所有寄存器
ERROR: Can not read register 0 (R0) while CPU is running
错误:CPU运行时无法读取寄存器1(R1)
错误:CPU运行时无法读取寄存器2(R2)
错误:CPU运行时无法读取寄存器3(R3)
错误:CPU运行时无法读取寄存器4(R4)
错误:CPU运行时无法读取寄存器5(R5)
错误:CPU运行时无法读取寄存器6(R6)
错误:CPU运行时无法读取寄存器7(R7)
错误:CPU运行时无法读取寄存器8(R8)
错误:CPU运行时无法读取寄存器9(R9)
错误:CPU运行时无法读取寄存器10(R10)
错误:CPU运行时无法读取寄存器11(R11)
错误:CPU运行时无法读取寄存器12(R12)
错误:CPU运行时无法读取寄存器13(R13)
ERROR: Can not read register 14 (R14) while CPU is running
ERROR: Can not read register 15 (R15) while CPU is running
错误:CPU运行时无法读取寄存器16(XPSR)
错误:在CPU运行时无法读取寄存器17(MSP)
错误:CPU运行时无法读取寄存器18(PSP)
错误:在CPU运行时无法读取寄存器24(PREMASK)
错误:在CPU运行时无法读取寄存器25(basepri)
ERROR: Can not read register 26 (FAULTMASK) while CPU is running
错误:CPU运行时无法读取寄存器27(控制)
警告:无法读取内存@地址0x00000000
Removing breakpoint @ address 0x0800A08C, Size = 2
警告:无法读取内存@地址0x00000000
....
---------------------------------
然后调试停止。(自动运行,当begin debug)
还有窗口警报:(红色)
没有任何可用的源“(gdb [1] .proc [42000] .threadgroup [i1],gdb [1] .proc [42000] .sthread [1])。线程[1] .frame [0]”
与此同时,应用程序B-BLE找不到我的设备......
What's wrong?
How can I do?
Best Regards
詹姆士
Hi jamesleo-konka,
你想做什么 ?附加,运行和调试?您遵循的步骤究竟是什么,以便尝试复制您报告的内容?您是否能用SDK中的任何示例项目复制(Un-Customized项目,例如BLE_Adv)?
谢谢mt_dialog.
你好,
我只想调试原来的示例项目,如ble_adv,pxp_reporter ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,)
首先,导入项目并构建它们(具有可选的QSPI项,-Debug或-Release)
And then click the debug (icon bug), select QSPI to debug these project.
在进入调试模式时自动运行该项目。(debug-qspi或attatch)
-------如果在提升模式下调试--------------------
Segger J-Link GDB Server V5.12F命令行版本
jlinkarm.dll v5.12f(DLL编译5月17日2016年5月17日16:03:35)
-----GDB Server start settings-----
GDBInit file: none
GDB服务器侦听端口:2331
SWO原始输出聆听端口:2332
终端I / O端口:2333
接受远程连接:仅限LocalHost
生成logfile:开
Verify download: on
init regs开始:关闭
Silent mode: off
单次运行模式:ON
目标连接超时:0毫秒
------ J-LINK相关设置------
J-Link Host interface: USB
J-Link脚本:无
J-Link设置文件:无
------目标相关的设置------
目标设备:Cortex-M0
Target interface: SWD
目标接口速度:8000kHz
目标endian:很少
Connecting to J-Link...
j-link已连接。
固件:J-Link ob-Sam3u128 V1编译3月29日2016年18:48:55
硬件:v1.00.
S/N: 480059073
Checking target voltage...
目标电压:3.30 V
Listening on TCP/IP port 2331
连接到目标...连接到目标
等待GDB连接...连接到127.0.0.1
阅读所有寄存器
读取4个字节@地址0x07f01e8a(data = 0xb500e7fe)
目标接口速度设置为30 kHz
选择自动目标接口速度(2000 kHz)
闪存断点已启用
启用半托管(手柄BKPT)
Semihosting I/O set to TELNET and GDB Client
读取4个字节@地址0x07f01e8a(data = 0xb500e7fe)
执行setrttsearchranges 0x07fc0000 0x20000
R0 = 00000008,R1 = 50003300,R2 = 00000001,R3 = E000E1FF
R4 = 00000002,R5 = 00000000,R6 = 00000004,R7 = 00000000
r8 = ffffffff,r9 = ffffffff,r10 = ffffffff,r11 = fffffffff
R12 = FFFFFFFF,R13 = 07FE0410,MSP = 07FE0410,PSP = FFFFFFFFC
R14(LR)= 07F00443,R15(PC)= 07F01E8A
XPSR 01000000,APSR 00000000,EPSR 01000000,IPSR 00000000
CFBP 00000000,控制00,FaultMask 00,BasePri 00,Primask 00
阅读所有寄存器
读取4个字节@地址0x07f01e8a(data = 0xb500e7fe)
启动目标CPU ...
----------------the run/stop icon is disabled------------------
App B-BLE也找不到EVK。
在我的经验中,开发人员可以设置断点并运行/停止调试器,并检查在BLE应用上传输的数据....
What should I do?
Thanks
Hi jamesleo-konka,
After building the project, proximity project for example, you should download the code via using the scripts in "Run" option (for example, for downloading code into the qspi through the jtag you should choose "program_qspi_jtag_win"), after doing that, the qspi is programmed and you can start debugging hit the "QSPI" in the debug option in order for the debugger to restart your device and start debugging from the main function (the execution will stop into the main function) and by hitting the "play" button the device will start execution. Or by hitting the "attach" button the debugger will not restart the fw but will attach the debugger and by hitting "pause" you will be able to see the command that was about to execute. For more info you can check either the UM-B-047 document or the User Manual of smart snippets in the Help option (Smart Snippets studio documentation).
谢谢mt_dialog.