您的位置 首页 新能源

关于m0核移植ucosii时遇到的问题

前些天,一网友在我i店里买了关于ucosii移植时遇到的问题,起初我也只是能顺利的把ucosii移植到istm32上,然后能正常的启动起来,然后就把

前些天,一网友在我i店里买了关于ucosii移植时遇到的问题,起先我也仅仅能顺畅的把ucosii移植到istm32上,然后能正常的发动起来,然后就把自己的经历挂到淘宝上共享了,成果还真有人求助。

他告诉我,他的ucosii是从官网上下载下来的,依照他人的把core.c .asm cpu.c 3个文件改好了,可是仍是发动不了,我对M0并不非常了解,网友对ucosii的时钟体系也不太了解,然后我又帮他解说了一番,ucosii的体系时钟是经过体系滴答的发生1s中止发生的,。我提示他先用定时器发生一个1s中止,然后将OSTimeTick();这个函数加到中止里去,但实际上仍是有问题。接着,我让他悉数注释的覅按这句话

//void OS_CPU_SysTickHandler (void)
//{
// OS_CPU_SR cpu_sr;

// OS_ENTER_CRITICAL(); /* Tell uC/OS-II that we are starting an ISR */
// OSIntNesting++;
// OS_EXIT_CRITICAL();

// OSTimeTick(); /* Call uC/OS-IIs OSTimeTick() */

// OSIntExit(); /* Tell uC/OS-II that we are leaving the ISR */
//}

并在 SysTick_handler()这样写

{

OS_CPU_SR cpu_sr;

OS_ENTER_CRITICAL();

OSTimeTick();

OSIntExit();

}

这便是我方才说的 体系1S中止发生的回调函数。

可是体系会卡在发动代码.s里如图

这个问题是因为在发动代码 里没有参加 os_cpu_handlaer的发动函数,不然os 体系也便是ucosii就会无法发动的。参加即可。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/qiche/xinnengyuan/257110.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部