FR8018HA JLINK MDK5在线调试老是断开
- 
					
					
					
					
 使用JLINK OB V2断点单步调试程序,但是单步执行老是断, 
 大家有没有遇到这样的情况,很头痛,不能友好的调试代码,严重影响效率;JLINK 输出信息: 
 **JLink Warning: CPU could not be halted
 ***JLink Error: Can not read register 15 (R15) while CPU is running
 ***JLink Error: Can not read register 16 (XPSR) while CPU is running
 ***JLink Error: Can not read register 0 (R0) while CPU is running
 ***JLink Error: Can not read register 1 (R1) while CPU is running
 ***JLink Error: Can not read register 2 (R2) while CPU is running
 ***JLink Error: Can not read register 3 (R3) while CPU is running
 ***JLink Error: Can not read register 4 (R4) while CPU is running
 ***JLink Error: Can not read register 5 (R5) while CPU is running
 ***JLink Error: Can not read register 6 (R6) while CPU is running
 ***JLink Error: Can not read register 7 (R7) while CPU is running
 ***JLink Error: Can not read register 8 (R8) while CPU is running
 ***JLink Error: Can not read register 9 (R9) while CPU is running
 ***JLink Error: Can not read register 10 (R10) while CPU is running
 ***JLink Error: Can not read register 11 (R11) while CPU is running
 ***JLink Error: Can not read register 12 (R12) while CPU is running
 ***JLink Error: Can not read register 13 (R13) while CPU is running
 ***JLink Error: Can not read register 14 (R14) while CPU is running
 ***JLink Error: Can not read register 15 (R15) while CPU is running
 ***JLink Error: Can not read register 16 (XPSR) while CPU is running
 ***JLink Error: Can not read register 17 (MSP) while CPU is running
 ***JLink Error: Can not read register 18 (PSP) while CPU is running
 ***JLink Error: Can not read register 20 (CFBP) while CPU is running硬件连接: 
 VCC GND SWD CLK代码中已经屏蔽了相关patch: 
 #if 0
 [4] = {
 .patch_pc = 0x00004aae,
 .replace_function = frspim_rd,
 },
 [3] = {
 .patch_pc = 0x00004b02,
 .replace_function = frspim_wr,
 }, 
 
- 
					
					
					
					
 单步调试时注意 底层射频部分不能用单步调试. 
 FR8010H.FLM 是什么时候的?
 
- 
					
					
					
					
 @刘流鎏 
 有没有看门狗? 连接线过长?
 
- 
					
					
					
					
 @刘流鎏 
 感谢回复,debug的是自己的代码部分,
 FR8010H.FLM 用比较工具确认了一下是git上sdk中最新的版本
 
- 
					
					
					
					
 @刘流鎏 在 FR8018HA JLINK MDK5在线调试老是断开 中说: 连接线过长,或者接触不良? 
 
- 
					
					
					
					
 @刘流鎏 
 好的 我关闭看门狗好了很多,对于连接线 我后续看看。顺便请教一个问题,栈空间大小如何修改? 按照我的理解: - 系统栈主要应该是用于中断的嵌套,一般在.s启动文件中配置,
 在8018HA的SDK中,我发现app_boot_vector.s中“;Stack_Size EQU 0x280 ;0x00000400 ”是注释掉的,
 并且没有 “Heap_Mem SPACE Heap_Size”分配栈空间的指令;
 - 任务栈,底层应该是个FreeRTOS,那么任务栈是从堆空间分配的,
 那么我是否可以通过FreeRTOSConfig.h中
 #define configTOTAL_HEAP_SIZE ( ( size_t ) ( 17 * 1024 ) ) 来修改;
 对于我们的应用,基本使用os_timer 和os_task, 
 现在遇到一些偶发的奇怪问题,现在分析怀疑可能在某些情况下可能调用过深;
 所以想了解SDK中的栈是如何配置分配的,谢谢~
 
- 系统栈主要应该是用于中断的嵌套,一般在.s启动文件中配置,
- 
					
					
					
					
 @kk 在 FR8018HA JLINK MDK5在线调试老是断开 中说: K中 堆栈的配置参照http://www.freqchip.net/topic/599/%E7%8E%B0%E8%B1%A1-%E5%BC%82%E5%B8%B8%E5%8F%91%E7%94%9Fcrash-dump-regs-pc-0xa506-%E7%8E%B0%E8%B1%A1%E8%BE%83%E5%BC%82%E5%B8%B8-%E6%9C%89%E5%AE%9A%E6%97%B6%E5%99%A8%E6%8C%82%E4%BA%86-%E4%B9%9F%E6%9C%89%E7%9B%B4%E6%8E%A5crash%E5%90%8E%E6%8C%82%E8%B5%B7%E7%9C%8B%E9%97%A8%E7%8B%97%E6%97%A0%E6%B3%95%E9%87%8D%E5%90%AF-%E4%B9%9F%E6%9C%89%E7%9B%B4%E6%8E%A5crash%E5%90%8E%E9%87%8D%E5%90%AF 
 
- 
					
					
					
					
 
 
- 
					
					
					
					
 @刘流鎏 好的 谢谢~