《嵌入式系统开发》课程PPT教学课件(嵌入式系统及其应用)第三章 uCOS嵌入式开发

嵌入式操作糸统一UC/OS What is uc/OS? u micro C: control uC/OS:适合于小的、控制器的操作系统 小巧 公开源代码,详细的注解 可剥夺实时内核 ■可移植性强 多任务 ■确定性 2002/11
嵌入式操作系统—uC/OS 2002/11 1 What is uC/OS? u: Micro C:control uC/OS : 适合于小的、控制器的操作系统 ◼ 小巧 ◼ 公开源代码,详细的注解 ◼ 可剥夺实时内核 ◼ 可移植性强 ◼ 多任务 ◼ 确定性

嵌入式操作糸统一UC/OS The Story of uc/Os 美国人 Jean labrosse1992年编写的 商业软件的昂贵 应用面覆盖了诸多领域,如照相机、医疗器 械、音响设备、发动机控制、高速公路电话 系统、自动提款机等 1998年uC/OS,目前的版本uC/OS-IV2.51 www.ucos-i.com 2002/11
嵌入式操作系统—uC/OS 2002/11 2 The Story of uC/OS ◼ 美国人Jean Labrosse 1992年编写的 ◼ 商业软件的昂贵 ◼ 应用面覆盖了诸多领域,如照相机、医疗器 械、音响设备、发动机控制、高速公路电话 系统、自动提款机等 ◼ 1998年uC/OS-II,目前的版本uC/OS-II V2.51 ◼ www.uCOS-II.com

嵌入式操作糸统一UC/OS 概要 ■内核结构-任务以及调度机制 任务间通信 ■UC/OS的移植 在PC机上运行uCOS 2002/11 3
嵌入式操作系统—uC/OS 2002/11 3 概要 ◼ 内核结构-任务以及调度机制 ◼ 任务间通信 ◼ uC/OS的移植 ◼ 在PC机上运行uC/OS

嵌入式操作糸统一UC/OS 任务task 典型的一个无限循环 void mytask(void *pdata) for (it do something; waiting do something; 支持64个任务,每个任务一个特定的优先级。优先级 越高,数字越小 系统占用了两个任务,空闲任务和统计任务 2002/11
嵌入式操作系统—uC/OS 2002/11 4 任务task ◼ 典型的一个无限循环。 void mytask(void *pdata) { for (;;) { do something; waiting; do something; } } ◼ 支持64个任务,每个任务一个特定的优先级。优先级 越高,数字越小 ◼ 系统占用了两个任务,空闲任务和统计任务

嵌入式操作糸统一UC/OS 任务的数据结构—任务控制块 任务控制块 os tcb,包括 任务堆栈指针,状态,优先级,任务表 位置,任务链表指针等, 所有的任务控制块分为两条链表,空闲 链表和使用链表 新任务TCB TCBO TCBI nex OSTCBFreelist 图43TCB的双向链表结构 2002/11
嵌入式操作系统—uC/OS 2002/11 5 任务的数据结构—任务控制块 ◼ 任务控制块 OS_tcb,包括 任务堆栈指针,状态,优先级,任务表 位置,任务链表指针等。 ◼ 所有的任务控制块分为两条链表,空闲 链表和使用链表。 OSTCBFreeList TCB0 TCB1 TCBn 新任务TCB (1) 空 (2) (3) next pre 图 4.3 TCB的双向链表结构

嵌入式操作糸统一UC/OS 任务控制块结构 Struct os tcb oS stK *OSTCBStkPtr struct os tcb *OSTCBNext struct os tcb OSTCBprev; OS EVent *OSTCBEventptr void *OSTCBMsg INT 16U OSTCBDly int8u oSTCBStat inT8U OST CBPrio iNT8U OSTCBX, OSTCBY, OSTCBBitX, oSTCBBitY 3OS_TCB 2002/11
嵌入式操作系统—uC/OS 2002/11 6 任务控制块结构 ◼ Struct os_tcb { OS_STK *OSTCBStkPtr; struct os_tcb *OSTCBNext; struct os_tcb *OSTCBprev; OS_EVENT *OSTCBEventPtr; void *OSTCBMsg; INT16U OSTCBDly; INT8U OSTCBStat; INT8U OSTCBPrio; INT8U OSTCBX, OSTCBY, OSTCBBitX, OSTCBBitY; } OS_TCB

嵌入式操作糸统一UC/OS 任务的状态 WAITING OSMBoxPost OSMBoxPend( oSQPost( OSQPend( OSQPostFront( OSTaskDelO OSSemPost0 OSSemPend() OSTask Resume() OSTaskSuspend( OSTime Dly Resume( OSTime Dly OSTime Dly HMSM( OSTask) oSTaskCreate Ex咱 aSSart( OSIntExitO OS TASK SW DORMAN READY SR OSTaskDelO OSInt Exit Task is Preempted Figure 3-1, Task States 2002/11
嵌入式操作系统—uC/OS 2002/11 7 任务的状态

嵌入式操作糸统一UC/OS 任务的状态 OSTCBStat 运行,就绪,等待,挂起. OSTCBStat 低四位 挂起队列邮箱信号量 可以有多个准备就绪的任务,但一个时 刻只有一个任务可以运行, OSHighRd 2002/11
嵌入式操作系统—uC/OS 2002/11 8 任务的状态 OSTCBStat ◼ 运行,就绪,等待,挂起… ◼ 可以有多个准备就绪的任务,但一个时 刻只有一个任务可以运行,OSHighRdy 挂起 队列邮箱信号量 OSTCBStat 低四位

嵌入式操作糸统一UC/OS 任务的调度- OSSched UC/OS是占先式实时多任务内核,优先级 最高的任务一旦准备就绪,则拥有CPU的 所有权开始投入运行 UC/OS中不支持时间片轮转法,每个任务 的优先级要求不一样且是唯一的,所以 任务调度的工作就是:查找准备就绪的 最高优先级的任务并进行上下文切换。 2002/11
嵌入式操作系统—uC/OS 2002/11 9 任务的调度--OSSched ◼ uC/OS是占先式实时多任务内核,优先级 最高的任务一旦准备就绪,则拥有CPU的 所有权开始投入运行。 ◼ uC/OS中不支持时间片轮转法,每个任务 的优先级要求不一样且是唯一的,所以 任务调度的工作就是:查找准备就绪的 最高优先级的任务并进行上下文切换

嵌入式操作糸统一UC/OS 任务的调度 就绪任务表:用于存贮每个任务的就绪 状态标志。由两个变量组成: OSRedy Grp:8位,每位表示一组(8个)任务中 是否有就绪的任务 OSRdytb]:位图方式表示某个任务是否就绪。 2002/11
嵌入式操作系统—uC/OS 2002/11 10 任务的调度 ◼ 就绪任务表:用于存贮每个任务的就绪 状态标志。由两个变量组成: ◼ OSRedyGrp:8位,每位表示一组(8个)任务中 是否有就绪的任务。 ◼ OSRdyTbl[]:位图方式表示某个任务是否就绪
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《嵌入式系统开发》课程PPT教学课件(嵌入式系统及其应用)第二章 嵌入式操作系统.ppt
- 《电气设计禁忌手册》.pdf
- 上海交通大学:《基本电路理论》第二章 电路元件 §2.3 电路元件及其约束方程 §2.4 电容器.pps
- 上海交通大学:《基本电路理论》第二章 电路元件 §2.1 独立电源 §2.2 几种典型的独立源信号波形及其符号.pps
- 上海交通大学:《现代电源设计讲座》课程教学资源(PPT课件讲稿)第一章(1-1)功率半导体技术新进展.ppt
- 上海交通大学:《现代电源设计讲座》课程教学资源(PPT课件讲稿)第三章 开关电源变压器.ppt
- 上海交通大学:《现代电源设计讲座》课程教学资源(PPT课件讲稿)第二章(2-5)TOPSwitch器件.ppt
- 上海交通大学:《现代电源设计讲座》课程教学资源(PPT课件讲稿)第二章(2-2-4)PWM控制与驱动电路.ppt
- 上海交通大学:《现代电源设计讲座》课程教学资源(PPT课件讲稿)第一章 现代电源技术概述.ppt
- 天津中德职业技术学院:《楼宇智能化技术》第七章 安全防范系统.pdf
- 天津中德职业技术学院:《楼宇智能化技术》第九章 (实训)给排水监控系统.pdf
- 天津中德职业技术学院:《楼宇智能化技术》第四章 直接式数字控制器.pdf
- 天津中德职业技术学院:《楼宇智能化技术》第六章 火灾报警与消防联动.pdf
- 天津中德职业技术学院:《楼宇智能化技术》第五章 组态控制技术.pdf
- 天津中德职业技术学院:《楼宇智能化技术》第八章 结构化综合布线系统.pdf
- 天津中德职业技术学院:《楼宇智能化技术》第一章 建筑设备监控系统.pdf
- 天津中德职业技术学院:《楼宇智能化技术》第三章 传感器与驱动装置.pdf
- 天津中德职业技术学院:《楼宇智能化技术》第一章 智能建筑的基本概述.pdf
- 北京航空航天大学:《自动控制原理》课程教学资源(授课教案讲义)第三章 线性系统的时域分析法 3.1 引言 3.2 一阶系统的时域分析 3.3 二阶系统的时域分析.doc
- 北京航空航天大学:《自动控制原理》课程教学资源(授课教案讲义)第三章 线性系统的时域分析法 3.1 引言 3.2 一阶系统的时域分析 3.3 二阶系统的时域分析.doc
- 《嵌入式系统开发》课程PPT教学课件(嵌入式系统及其应用)第四章 嵌入式系统硬件平台.ppt
- 《嵌入式系统开发》课程PPT教学课件(嵌入式系统及其应用)第一章 嵌入式系统概述.ppt
- 上海交通大学:《基本电路理论》绪论、第一章 集中参数电路和基尔霍夫定律 §1.1 电路模型和基本变量 §1.2 基尔霍夫定律.pps
- 上海交通大学:《基本电路理论》第一章 集中参数电路和基尔霍夫定律(1.3)从网络到图 §1.4 KCL、KVL的矩阵形式 §1.5 特勒根定理.pps
- 西安电子科技大学:《信号与系统》课程教学资源(电子教案)第七章 离散系统的z域分析.pdf
- 西安电子科技大学:《信号与系统》课程教学资源(电子教案)第一章 信号与系统.pdf
- 西安电子科技大学:《信号与系统》课程教学资源(电子教案)第二章 连续系统的时域分析.pdf
- 西安电子科技大学:《信号与系统》课程教学资源(电子教案)第三章 连续系统的频域分析.pdf
- 西安电子科技大学:《信号与系统》课程教学资源(电子教案)第八章 系统的状态空间分析.pdf
- 西安电子科技大学:《信号与系统》课程教学资源(电子教案)第五章 离散系统的时域分析.pdf
- 西安电子科技大学:《信号与系统》课程教学资源(电子教案)第四章 连续系统的s域分析.pdf
- 吉林大学:《机电一体化》课程电子教案(PPT教学课件)第二章 传感器及测量系统(2.7-2.8).ppt
- 吉林大学:《机电一体化》课程电子教案(PPT教学课件)第二章 传感器及测量系统(2.9-2.16).ppt
- 吉林大学:《机电一体化》课程电子教案(PPT教学课件)第一章 机电一体化技术概论(主讲:赵丁选).ppt
- 吉林大学:《机电一体化》课程电子教案(PPT教学课件)第二章 传感器及测量系统(2.1-2.6).ppt
- 《电工技术》PPT教学课件(教案讲稿)第1章 电路的基本概念与基本定律.ppt
- 《电工技术》PPT教学课件(教案讲稿)第1章 电路的基本概念与基本定律.ppt
- 《电工技术》PPT教学课件(教案讲稿)第2章 电路的分析方法.ppt
- 《电工技术》PPT教学课件(教案讲稿)第3章 正弦交流电路.ppt
- 《电工技术》PPT教学课件(教案讲稿)第5章 非正弦周期电流的电路.ppt