目前uCOS中已经接触到的全局变量:

OSTCBCur

OSIntNesting

OSPrioHighRdy    最高优先级任务

任哲编著《嵌入式实时操作系统uC/OS-II原理及应用》P76中图3-2函数OSIntExit()的流程图

与卢友亮编著《嵌入式实时操作系统uC/OS原理与实践》中P78最上面一段文字,理解了。

“与多疑者共事则事必不成,与好利者共事则己必受累;无实学却徒有虚名当知有祸变;凡专注一事终身则必有成就。天下古今庸人皆以惰字致败;天下古今人才皆以傲字致败;须趁三十以前立志猛进;观人四法:讲信用,无官气,有条理,少大话。—— 曾国藩”

OSTaskStkInit()     任务堆栈初始化

调用OSTaskStkInit()函数建立堆栈,函数返回值psp是任务栈的新栈顶,并保存在任务的OS_TCB中。

OSTaskStkInit()函数中的第四个参数主要是为了兼容OSTaskCreateExt()函数而设置的,不用可以设置成0.

OSTCBInit()      任务控制模块初始化      OSTCBInit()所属文件是OS_CORE.C

OSTCBInit()函数从空闲的OS_TCB缓冲区中获得并初始化一个OS_TCB。

OSTaskCtr     任务计数器

INT8U OSTaskCreate (void(*task)(void *pd),void *pdata, OS_STK *ptos, INT8U prio)

函数需要四个参数:

(1)task:任务代码的指针。

(2)pdata:当任务开始执行时传递给任务的参数的指针。

(3)ptos:分配给任务堆栈的栈顶指针。

(4)prio:分配给任务的优先级。

uCOS2014.1.8的更多相关文章

  1. uCOS2014.1.11

    typedef unsigned char  BOOLEAN;typedef unsigned char  INT8U;      /* Unsigned  8 bit quantity   */ty ...

  2. uCOS2014.1.11(转载)(void*)0 的理解

    一般把(void*)0定义为NULL表示这是个空指针void的含义void的字面意思是“无类型”,void *则为“无类型指针”,void *可以指向任何类型的数据.众所周知,如果指针p1和p2的类型 ...

  3. uCOS2014.1.10

    uC/OS-Ⅱ任务的结构有两种:一种是无限循环结构:另一种是只执行一次的程序结构.若采用只执行一次的程序结构,就要用任务删除函数来实现. uC/OS-Ⅱ进行任务的管理是从调用启动函数OSStart() ...

  4. uCOS2014.1.9

    卢友亮P69 ptcb->OSTCBStat |= OS_STAT_SUSPEND; /*标志任务被挂起*/ 这句是标志人物被挂起成阻塞态的关键. OSTCBStat  //任务的当前状态标志 ...

  5. uCOS2014.1.7

    主要关于任务堆栈: 在计算机中一般设置一个专用的地址寄存器用来存放堆栈的栈顶地址,这个寄存器称为堆栈指针(SP). 任务堆栈有两种,一种是地址向下增长的,PC就是采用这样的堆栈: 另一种是地址向上增长 ...

随机推荐

  1. Python程序设计 实验 1 熟悉 IDLE 和在线编程平台

    ------------恢复内容开始------------ 安徽工程大学 Python程序设计 实验报告 班级   物流191   姓名  姚彩琴  学号3190505129 成绩 日期     2 ...

  2. HPU第一次团队赛

    D. Tom的战力问题 Tom被斯派克揍了TAT.Tom下定决心要战胜斯派克.但是在战胜最强的斯派克之前,Tom要先打败其他的狗.为此,他打算先收集一下信息.现在Tom在了得到了一些关于战斗力的小道消 ...

  3. C++11<functional>深度剖析

    自C++11以来,C++标准每3年修订一次.C++14/17都可以说是更完整的C++11:即将到来的C++20也已经特性完整了. C++11已经有好几年了,它的年龄比我接触C++的时间要长10倍不止吧 ...

  4. linux之cat 操作

    1.查看或创建 cat 1.txt #如果目录有这个文件则会打开查看,没有则会创建 2.压缩空白 cat 1.txt 我是第一行 我是第二 行 cat -bs 1.txt # 变成 cat 1.txt ...

  5. [php] phpStudy+XDebug配置

    一.配置前说明: 1.phpStudy集成了XDebug扩展,所以不用单独下载XDebug. 2.打开XDebug扩展:其它选项菜单 > PHP扩展 > Xdebug 二.配置步骤: ph ...

  6. UnicodeDecodeError: 'gbk' codec can't decode byte 0x8a in position 2: illegal multibyte sequence

    pycharm报错UnicodeDecodeError: 'gbk' codec can't decode byte 0x8a in position 2: illegal multibyte seq ...

  7. ElasticSearch的高级复杂查询:非聚合查询和聚合查询

    一.非聚合复杂查询(这儿展示了非聚合复杂查询的常用流程) 查询条件QueryBuilder的构建方法 1.1 精确查询(必须完全匹配上,相当于SQL语句中的“=”) ① 单个匹配 termQuery ...

  8. 二、Go语言开发环境安装与编写第一个Hello World

    本系列文章均为学习过程中记录的笔记,欢迎和我一起来学习Go语言. 全文使用环境如下: Go语言版本:1.13 操作系统:deepin 使用工具:Goland开发工具 Go语言追溯历史 Go语言2009 ...

  9. 进制之间转换——day_01

    一.计算机文件大小单位 b = bit 位(比特) B = Byte 字节 1B = 8b #一个字节等于8位 简写 1Byte = 8 bit 1KB = 1024B 1MB = 1024KB 1G ...

  10. Service Location Protocol SLP

    https://www.ibm.com/developerworks/cn/linux/l-slp/ 服务发现(service discovery) 是在网络环境中发现必须使用的服务的能力.例如,如果 ...