Part Number:CC1310
大家好,
我用的是CC1310芯片,flash是128K的空间,
程序跑起来,很大概率会死机,用仿真器看发现代码最后停在了0x10000486的位置, 超出了128K的位置,
看代码上下文,上一条指令是wfi,难道这片位置的代码是ti自己的库吗?
Kevin Qiu1:
0x10000486是ROM中的符号位置,调试器无法访问,内存具体使用情况可查看map文件
,
yang bo:
你好,我想发帖子,有一个视频,一直发布不了,对视频大小有要求吗?
,
Kevin Qiu1:
map文件检查了吗,内存是否超出?
几分钟的应该是可以的,或者压缩一下上传
,
yang bo:
subGhz_MotorController.map
我查了一下,map文件没有超过128K范围的。
,
yang bo:
,
yang bo:
代码在 d2和d4的两个位置,一直跳。 就是图上面相邻的两行
,
Kevin Qiu1:
内存没有超出,通常出现No source available是因为任务中存在阻塞,一直在等待解除阻塞
你应该检查程序中的事件或信号量阻塞部分,以解除阻塞使程序可以正常运行
,
yang bo:
多谢你的建议,昨天下午好好的检查了一下,发现程序确实不是真死机了,是假死了, 按下按键,程序还是会有响应的,但是按下按键,信号量post了,另一个任务pend却没有用,我再好好查查是什么原因。
,
yang bo:
Hi,你好,可否帮我看一下代码,因为代码是上个工程师的,我对1310不熟,帮我看一下,感觉是rf那个任务死掉了,按键post的信号也不响应,按遥控器控制也不响应的?
,
yang bo:
也不是每次都死掉,给设备上电的时候,容易出现这个问题
,
yang bo:
这个地方,有时候仿真,点下一步,直接就跑起来了。
,
Kevin Qiu1:
注意这是公共论坛,如果代码涉及机密,建议你删除它
按照这里的步骤使用ROV监控下任务:https://dev.ti.com/tirex/content/simplelink_cc13x0_sdk_4_10_01_01/docs/proprietary-rf/proprietary-rf-users-guide/proprietary-rf-guide/debugging-index.html
另外在这里加个LED或者串口打印,看是否会进入到这里面:
if(EasyLink_init(&easyLink_params) != EasyLink_Status_Success) { System_abort("EasyLink_init failed");
// use LED or UART to monitor iInitialization state
…
}
,
yang bo:
明白了,我已经删除了!
,
yang bo:
因为暂时没有去搞那个项目了,等后面有时间在搞
,
Kevin Qiu1:
好的