TI中文支持网
TI专业的中文技术问题搜集分享网站

CC1312R: CC1312 TI15.4集中器程序 在macTask任务中死循环

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()时要断开调试器

赞(0)
未经允许不得转载:TI中文支持网 » CC1312R: CC1312 TI15.4集中器程序 在macTask任务中死循环
分享到: 更多 (0)

© 2024 TI中文支持网   网站地图 鲁ICP备2022002796号-1