欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

哪位大神有renesas m16c65系列 ucos2 移植经验的 求解答,多谢

更新时间: 2014-01-05 03:15:10 责任编辑: Author_N1

 

哪位大神有Renesas M16C65系列 UCOS2 移植经验的 求解答,谢谢
IDE: IAR
Hardware: Renesas M16C65
OS: ucos2.56

我从官网上下载了M16C62P的例程做参考,移植了快1周,任务建立也成功,在OSStart()单步调试到RETI后,程序飞了,什么原因,请大神指点,谢谢

    .EVEN

OSStartHighRdy:
    JSR         OSTaskSwHook

    MOV.W       OSTCBHighRdy, A0               ; ISP = OSTCBHighRdy->OSTCBStkPtr
    LDC         [A0], ISP

    MOV.B       #01H, OSRunning                ; OSRunning = TRUE

    POPM        R0,R1,R2,R3,A0,A1,SB,FB

    REIT
--参考方法--
LZ先到UCOS的官网找找

:)
--参考方法--
OSStart()后应该会有个死循环
--参考方法--
是否初始堆栈(非任务堆栈,main函数使用的堆栈)设置的太小了,你在main函数的初始化函数里用了太多的局部变量导致堆栈溢出了。

初始堆栈一般是在启动汇编中设置的。
--参考方法--
INT32S main (void)
{
CPU_INT08U  os_err;

os_err = os_err; /* prevent warning... */

  /* Note:  ÓÉÓÚʹÓÃUCOS, ÔÚOSÔËÐÐ֮ǰÔËÐÐ,×¢Òâ±ðʹÄÜÈκÎÖжÏ. */
IntDisAll();                     /* Disable all ints until we are ready to accept them.  */

  OSInit();                        /* Initialize "uC/OS-II, The Real-Time Kernel".         */


os_err = OSTaskCreateExt((void (*)(void *)) App_TaskStart,  /* Create the start task.                               */
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 03:15:10
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/20130/
本文WWW.DOC100.NET DOC100.NET版权所有。