打印

uCOS在430上的移植问题

[复制链接]
657|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
闻风小城|  楼主 | 2016-9-7 22:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在IAR中编译期间没问题,在运行期间会出现堆栈溢出的问题。在IAR中已将堆栈大小改为1024依然出现堆栈指针溢出问题。提示如下:
The stack pointer for stack 'Stack' (currently Memory:0x34A) is outside the stack range (Memory:0x8D4 to Memory:0xA00)

有没有人遇到同样的问题,如何解决的?

相关帖子

沙发
dirtwillfly| | 2016-9-7 22:28 | 只看该作者
你添加了几个任务?

使用特权

评论回复
板凳
usysm| | 2016-9-7 22:44 | 只看该作者
堆栈空间大小还能大吗?

使用特权

评论回复
地板
usysm| | 2016-9-7 22:47 | 只看该作者
看一下你的工程文件看看。

使用特权

评论回复
5
闻风小城|  楼主 | 2016-9-8 10:05 | 只看该作者
dirtwillfly 发表于 2016-9-7 22:28
你添加了几个任务?

仅仅添加了一个用户任务,依然出现溢出

使用特权

评论回复
6
闻风小城|  楼主 | 2016-9-8 10:06 | 只看该作者
usysm 发表于 2016-9-7 22:44
堆栈空间大小还能大吗?

不能了,在大IAR会提示,不能通过编译

使用特权

评论回复
7
闻风小城|  楼主 | 2016-9-8 10:09 | 只看该作者
usysm 发表于 2016-9-7 22:47
看一下你的工程文件看看。

好,我打包把整个工程文件上传,望可以查找问题所在!

使用特权

评论回复
8
闻风小城|  楼主 | 2016-9-8 10:11 | 只看该作者
这是整个工程文件,用户程序在app.c里面

在MSP430F149下的移植.rar

1.51 MB

使用特权

评论回复
9
闻风小城|  楼主 | 2016-9-8 10:26 | 只看该作者
dirtwillfly 发表于 2016-9-7 22:28
你添加了几个任务?

在OSStartHighRdy()函数中,出现溢出现象
430F149系列会停到此处,汇编代码如下
OSStartHighRdy
            call     #OSTaskSwHook

            mov.b    #1, &OSRunning         ; //置内核运行标志

            mov.w    SP, &OSISRStkPtr       ; //保护中断堆栈              

            mov.w    &OSTCBHighRdy, R13     ; //载入最高优先级任务堆栈
            mov.w    @R13, SP

            POPALL                          ; //从堆栈弹出任务对应的所有寄存器【在此处溢出,并停留】
            
            reti                            ; //效仿一次中断返回

使用特权

评论回复
10
iyoum| | 2016-9-8 16:28 | 只看该作者
这个在设置好堆栈了也这样

使用特权

评论回复
11
iyoum| | 2016-9-8 16:31 | 只看该作者
以前在stm32上移植过,没有问题的。

使用特权

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

本版积分规则

2

主题

20

帖子

0

粉丝