您的位置 首页 芯闻

一步步写STM32 OS【一】 序文

一直想写个类似uCOS的OS,近段时间考研复习之余忙里偷闲,总算有点成果了。言归正传,我觉得OS最难的部分首先便是上下文切换的问题,他和MCU的架构有关,所以对于不同的MCU,这部分需要移植。一旦

  一向想写个相似uCOSOS,近段时刻考研温习之余忙里偷闲,总算有点效果了。言归正传,我觉得OS最难的部分首要就是上下文切换的问题,他和MCU的架构有关,所以关于不同的MCU,这部分需求移植。一旦这个问题解决了,整个OS算是成功了一半了,当然,是关于简略的OS。

  好了,要写一个OS,首要需求一个开发板和仿真器。我的开发板是STM32F4DISCOVERY,自带ST-LINK V2仿真器,板载MCU为STM32F407VGT6,支撑FPU,32位ARM Cortex-M4F核,1024KB FLASH,192 KB RAM,总归很强壮。对STM32其他系列,本OS简直不需修正修正就可运用。开发环境为IAR for ARM 6.5,如果是MDK的话,也是迥然不同,汇编部分需求修正。

  研讨了一下UCOS-II的Cortex-M4的Port部分,觉得很好,就直接拿来用了,修正的很少。首要咱们来看一下这一部分几个比较重要的函数,翻开os_cpu_a.asm文件,定位到下面的当地,注释我改成中文了。当OS初始化结束后,履行OSStart,OSStart最终调用OSStartHighRdy函数,留意在此之前的线程形式和反常形式的仓库都是MSP,在此之后线程形式的仓库是PSP,反常形式的仓库仍是MSP。

  之后咱们在此基础上构建自己的OS,首要完结两个使命相互调用,然后是参加SysTick的使命调度,最终参加信号量,邮箱等功能。

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

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

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

微信扫一扫关注我们

返回顶部