Part Number:CC1312ROther Parts Discussed in Thread:CC1200, CC1310
TI大神,cc1312在TI15.4 中作为集中器,与cc1210 作为传感器通信,在几个循环后进入RF发射循坏(死循环)如下:
请问这是怎么回事,能否避免这种情况,或者在进入死循环后让他自动重启,下图是 ROV截图
cc1312
Kevin Qiu1:
没有CC1210这个型号的产品,是否指的是CC1200?
CC1200不支持15.4stack,CC1310 CC1311以及CC1312支持15.4stack
,
user5153918:
发错了,应该是 1310
,
Kevin Qiu1:
在例程上修改或添加了哪些,直接使用例程CC1310可以直接入网吗
上面的信息看不出来是什么问题,只是显示了空闲任务处于抢占状态
,
user5153918:
cc1310入网没有任何问题,并且能够正常执行任务,但是在集中器给节点发送若干消息后会出现mactask一直运行,执行栈见图1,导致apptask一直阻塞。
,
Kevin Qiu1:
看一下里面的OSAL,是不是这个原因;https://dev.ti.com/tirex/content/simplelink_cc13xx_cc26xx_sdk_6_10_00_29/docs/ti154stack/html/ti154stack/application-overview.html
,
user5153918:
看了OSAL的文档,还是不能确定哪里的问题,就是不能确定是APPtask的问题还是macTask的问题,APPtask中我们有很多编码解码工作,大量使用了Csf_malloc 和Csf_free,并且能够保证用完就释放,同时回使用很多无线数据传输接口
,
Kevin Qiu1:
mactask的优先级高,如果mactask一直运行,则会抢占apptask
上面的ROV图中显示idle处于抢占状态,没有看到mactask的抢占情况,同时注意回调函数中不应有阻塞相关函数的调用
user5153918 说:或者在进入死循环后让他自动重启,
可以用HAL_SYSTEM_RESET()进行软件复位
,
user5153918:
我用定时器设置了定时重启(软重启),执行后芯片起不来怎么回事。。。。。
,
Kevin Qiu1:
注意使用HAL_SYSTEM_RESET()时要断开调试器