[uCOS/RTOS]

IAR下UCOS-iii 调试问题

[复制链接]
1761|3
手机看帖
扫描二维码
随时随地手机跟帖
liuxiang5119|  楼主 | 2015-3-15 23:48 | 显示全部楼层 |阅读模式
IAR下JLINK  SWD模式调试 ,没进入一个任务就会有一个cstack越界的警告
Sun Mar 15, 2015 23:43:15: The stack pointer for stack 'CSTACK' (currently 0x20002CF8) is outside the stack range (0x20005EB8 to 0x200062B8)
所有任务启动后就进入这个硬件错误函数
static  void  App_Fault_ISR (void)
{
    while (DEF_TRUE) {
        ;
    }
}

工程在keil下编译没有错误,而且单步调试什么的没有错误,而且各任务堆栈大小也没有越界,为什么在IAR下调试就不行,每次都进这个硬件错误,开始是
#if OS_CFG_STAT_TASK_EN > 0u
    OSStatTaskCPUUsageInit(&err);                                     /* Compute CPU capacity with no task running         */
    #endif
这个初始化函数过不去,直接进入App_Fault_ISR,然后我把 OS_CFG_STAT_TASK_EN置0   然后就任务启动什么的可以过去,但是最后还是进入 App_Fault_ISR,不知道大伙谁碰到过这个问题

相关帖子

liuxiang5119|  楼主 | 2015-3-19 15:03 | 显示全部楼层
没人碰到过这个问题吗 还是说没人用IAR去调Ucos呢

使用特权

评论回复
星辰yyt| | 2015-4-14 15:14 | 显示全部楼层
之前遇到过这种警告,但是程序运行没有什么问题,后来升级IAR版本就没有这个警告了。
IAR里面有个堆栈检查好像是keil里面没有的,关闭的话就不会有警告。但是如果你的程序真的堆栈溢出了肯定还是有问题的。
Tools->Options->Stack

使用特权

评论回复
wangyao19920204| | 2015-4-14 19:12 | 显示全部楼层
进入硬件中断多半是访问越界了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

13

主题

124

帖子

4

粉丝