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

CC1310 TI-15.4 Stack 例程运行出错

使用TI-15.4 Stack的collector例程,不做任何修改,程序会进入到错误中断。

协议栈,CCS 6 都是官网下载的最新的。

程序进入这个函数里面,错误原因是MAIN_ASSERT_HWI_TIRTOS,

/*!
* @brief Fill in your own assert function.
*
* @param assertReason – reason: MAIN_ASSERT_HWI_TIRTOS,
* MAIN_ASSERT_ICALL, or
* MAIN_ASSERT_MAC
*/
void Main_assertHandler(uint8_t assertReason)
{
Main_assertReason = assertReason;

#if defined(RESET_ASSERT)
Csf_assertInd(assertReason);

/* Pull the plug and start over */
SysCtrlSystemReset();
#else
Hwi_disable();
while(1)
{
/* Put you code here to do something if in assert */
}
#endif
}

调试发现执行到 void ICall_createRemoteTasks(void)函数的最后Task_restore(keytask); 就会进入错误中断。

什么原因导致的呢?

user3825375:

我也碰到类似问题,用CC2650 4*4的芯片跑ZStack home的例程,运行到Task_restore(keytask)就运行不下去了(也许是程序跑飞了),把keytask改成1 ,就能运行通过,有么有大神给解答下

Yunjie ZHANG:

我也碰到了这个问题?是否有人知道为什么呢?

以前用TIMAC的时候也碰到过,那个时候是因为TIMAC的stack是一个独立的文件,现在cc1310的只有一个binary,应该不是这个问题吧?

VV:

回复 Yunjie ZHANG:

@Yunjie Zhang,

请问使用的15.4-stack是哪个版本的?

这个问题是否在调试的时候出现,全速运行的时候会出现吗?

Yunjie ZHANG:

回复 VV:

Hi VV,

我使用的是最新的环境如下:

Win10

CCS7.2

simplelink_cc13x0_sdk_1_40_00_10

tirtos_cc13xx_cc26xx_2_21_00_06

xdctools_3_50_02_20_core

为了避免发生问题,我已经把所有软件卸载,重新安装,产生的是一个全新的环境。

硬件: CC1310 LaunchXL F128. 已在smart flash中确认过。单板在下载例程之前是好的,默认程序可以运行。

Probe :板载XDS110。Probe测试正常。

使用的例程位于C:\ti\simplelink_cc13x0_sdk_1_40_00_10\examples\rtos\CC1310_LAUNCHXL\ti154stack\sensor

现象和步骤:

1.  import project sensor_c1310lp,配置如下所示:

2. rebuild project

3. Run -> Debug 下载代码,正常。

4. 代码在函数ICall_createRemoteTasks中Task_restore(keytask)这一句挂死

调试的时候我只下载了sensor_cc1310lp.out这一个binary。

麻烦你帮我解答一下如何处理。非常感谢!

Yunjie ZHANG:

回复 Yunjie ZHANG:

另外我切换过好几个版本的simplelink和tirtos,都是这个现象。全速运行的时候也没有反应。

全速运行的时候的反应如下:

1. T4C129芯片旁边绿灯亮。

2. LCD上没有任何显示

3. CC1310旁红灯亮。

如果还需要什么信息麻烦你告知我一下。

Yunjie ZHANG:

回复 Yunjie ZHANG:

我看到guide上面有这样一句话:

Example ICALL Usage

Figure 48. shows an example command being sent from the application to the TI 15.4-Stack through the ICALL, with a corresponding return value passed back to the application. ICall_init() initializes the ICALL module instance itself and ICall_createRemoteTasks() creates a task per external image, with an entry function at a known address. 

这是不是表示stack的image是独立的,而不是sensor_1310lp.out?

Yunjie ZHANG:

回复 Yunjie ZHANG:

 刚才在文档中还找到一句:

Build the stack project, then connect a LaunchPad to the PC, and call it sensor-launchpad.

Download the stack project onto the sensor-launchpad, and terminate the debug session when the download is finished.

Build the sensor application project and download it onto the CC13x0 LaunchPad using the method previously used to download the stack and terminate the debug session once the download is complete.

这是不是说stack是一个独立的Project?如果是的话,我在哪里可以找到这个project呢?文档和代码里面都没有任何的描述。

VV:

回复 Yunjie ZHANG:

现在的15.4协议栈都只有一个image了。

你说的LCD没有反应,是指跟CC1310 Launchpad配的LCD吗?白色的那块,这块板子的话检查下接触是否良好,比较容易坏。

另外协议栈默认是UART输出来替代LCD的,需要改下。

全速运行以后看到什么效果? 有没有进入搜索网络状态,直接在搜网的地方下断电呢?

Yunjie ZHANG:

回复 VV:

好,我试一下。谢谢。

赞(0)
未经允许不得转载:TI中文支持网 » CC1310 TI-15.4 Stack 例程运行出错
分享到: 更多 (0)