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

CC1310休眠结束后再次发送失败

用rfPacketTx_nortos修改的程序,先采集ad然后射频发送,发送结束后进入休眠,休眠结束后第二次采集ad,到这步都能正常运行,但是再次进入射频发送时就失败了。调试时报错提示如下

在实际运行中,接收端监听到的数据其中的计数一直为0,接收的时间间隔没错,说明在第二次发送失败后,mcu立即重启,请问是什么原因导致的这个问题

Viki Shi:

这是JTAG连接报错,你把程序下载进芯片再测试看看

user6370980:

回复 Viki Shi:

下载后运行也是一样,第一次发送没问题,到第二次的时候就重启了,我发送端有发送一个计数的,接收端接收到的一直是初始值

user6370980:

回复 Viki Shi:

但如果是说重启的话,复位脚的电平却没有变化,感觉很奇怪

user6370980:

回复 Viki Shi:

我用的是4×4的mcu,上电时先将不用的引脚设为下拉输入

主要步骤运行如下

user6370980:

回复 Viki Shi:

测试发现,只要在执行RF_runCmd前先执行sleep就会发送失败,调试到这步时就会提示JTAG连接报错

Viki Shi:

回复 user6370980:

为什么要在RF_runCmd执行sleep?sleep状态下RF core不运行

user6370980:

回复 Viki Shi:

我要在上电时先休眠一段时间,现在是一进入这个线程就先执行sleep,有一块板已经能够正常连续的发送了,目前一共调试了四块板,但是其他三块板却不行,仿真时发现,在发送时卡在了下面这个步骤,同一批的自制板上边也没多少元器件,但是mcu运行效果却不一样,请问什么问题下会卡在这一步

Viki Shi:

回复 user6370980:

这段函数实现的是,信号量已释放,系统中没有任务运行,然后就进入配置的power policy【一般是低功耗】

卡在这里说明系统中还有任务,信号量没释放,导致休眠失败

user6370980:

回复 Viki Shi:

但是跑的是同一个程序,即使程序只留下发送功能,也是只有一块板行,其他三块还是卡在这,板子我这也检查了很多次,并未有什么问题,这就很奇怪了

Viki Shi:

回复 user6370980:

这个光凭想象也无法判断,还是要动手测,只能建议你软硬件方面进行对比排查了

赞(0)
未经允许不得转载:TI中文支持网 » CC1310休眠结束后再次发送失败
分享到: 更多 (0)