234彩票官网登录

  • <tt class='tlJykMlA'></tt>
  • <thead class='94K7Lauipx'><option class='9cNvbSu7LJ'></option></thead>

    <em class='jepytdnyfeW3'><b class='oR1Ys12nk'><td class='6rzzLTN'></td></b></em>

  • <dl class='Td0EmkF'><b class='qoWhaibfJ9'></b></dl>

  • <span class='lS1G'></span>

    我的一账户
    中国电子DIY

    科技成就未来

    亲爱的一游客,欢迎!

    已有账号,请

    如尚未注册?

    • 客服电话

      在线时间:8:00-16:00

      客服电话

      000-000-0000

      电子邮件

      ndiyadmin@163.com
    • 手机版

      电子DIY手机版

      随时随地掌握网站动态

    • 官方微信

      扫描二维码

      免费获取▓邀请码

    STC单片机uCOS-II移植教程

    [复制链接]
    茂名小吴 发表于 2020-2-12 14:06:46 | 显示全部楼层 |阅读模式 打印 上    一主题 下一主题
    本帖最后由 茂名小吴 于 2020-2-13 16:34 编辑

    前言
           其实关于uCOS-II的一51单片机移植教程№和例子网上    已经有很多了,但是大部分都是基于Proteus仿真外扩内存的一,下载之后也不 能直接在硬件上    使用,也没有具体的一移植教程 。这对于一个想学习操作系统而又●无从下手小白的一来说简直就是噩梦 。
           由于51内核的一特殊性№和keil编译器原因 (51的一系统堆栈指针№和Keil编译后仿真堆栈指针增长的一方向是相反的一)带来移植的一困难 。网上    的一例程处理堆栈的一方式有两种(至于不 太懂的一同学可以移步看看这篇帖子)https://blog.csdn.net/s111sw/article/details/6012720,一种是用小模式Small,另外一种是大模式Large 。Small模式是把系统堆栈数据№和仿真堆栈数据一起复制到用户堆栈XDATA区,这种方式编译代码小但是任务切换速度慢 。而Large模式在编译的一时候Keil默认是把仿真堆栈数据设置在XDATA区,所以在任务切换的一时候只需要把系统堆栈№和仿真堆栈的一当前地址保存到用户堆栈就行,这样的一方式编译代码大但任务切换速度快(现在都是用这种方式,STC12C5A60S2在22.1184MHz晶振下任务切换时间37us) 。可是,前面已经说了51的一系统堆栈指针是向上    增长的一,而Keil编译的一仿真指针是向下增长的一,这就导致了一个 问题---uCOS操作系统的一堆栈检测函数OSTaskStkChk没办法使用 。上    面链接帖子里面用的一方法是修改uCOS的一内核函数实现堆栈检测功能的一 。正是因 为我不 想修改内核函数的一原因 所以才有了我现在移植的一uCOS的一版本 。
                                                                                                                                  1.png
    图1

    虽然51的一系统堆栈指针只能向上    增长,但是在代码里面我们可以人为的一把里面的一数据按照自己的一意愿存放到用户堆栈里 。下面是我移植的一堆栈结构,把系统堆栈增长方向№和仿真堆栈统一起来就可以实现堆栈连续存放数据了 。
                                                                                                                   2.png
                                                                                                                       图2
    开始移植
    准备工具
    1、    电脑一台(废话!)
    2、    Keil4
    3、    下载配套的一代码一份,我移植的一是比较经典的一版本uCOS-II 2.52
    51_uCOS-II V2.52.zip (376.83 KB, 下载次数: 0)
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关注1

    粉丝0

    帖子2

    发布主题
    推荐阅读
    关注我们
    中国电子DIY官方微信

    客服电话:000-000-0000

    客服邮箱:776513803@qq.com

    周一至周五 9:00-18:00

    公司|234彩票官网登录地址:234彩票官网登录深圳市南山区美丽湾大厦B座

    Powered by X3.4@ 2001-2013