当前课程知识点:现代电子系统设计 >  第五章 微处理器与片上系统 >  5.8 嵌入式操作系统 >  5.8.2 嵌入式操作系统

返回《现代电子系统设计》慕课在线视频课程列表

5.8.2 嵌入式操作系统在线视频

下一节:5.8.3 嵌入式操作系统

返回《现代电子系统设计》慕课在线视频列表

5.8.2 嵌入式操作系统课程教案、知识点、字幕

下面讲第五章第八节

嵌入式操作系统

其中的第二小节

嵌入式实时操作系统举例

在这小节

我们讲两个小的操作系统

freeRTOS和μc/OS

freeRTOS有什么样的特点呢

我们来看一下

它是一个开源的RTOS

那么它比较简单

但是功能还是比较强大的

它是由Richard Barry和

FreeRTOS团队写的

它的版权是属于

Real Time Engineers公司

但是可以免费使用

下面来看下它的结构

它的结构主要包括两部分

一个是它的内核

内核主要是用来

对任务进行管理和调度

然后有管理硬件

另外还有一部分就是设备驱动程序

从它内部软件的结构来看

它的任务管理占百分之五十

主要有两个任务管理的文件

它是用来产生 调度

和保持任务的

第二部分是通信部分

是占它整个存储容量的百分之四十

包括两个文件

也就是队列文件

那么它的任务和中断之间

是通过队列来发送数据的

而且用信号量和互斥器

来对重要资源的使用进行标记

最后一部分

就是硬件接口

也就是它的驱动程序

占整个软件的百分之六

那么下面我们来看

什么是信号量

什么是互斥器

什么是队列

我们举一个例子

假设我们有三个任务

一个是心电信号采集的任务

一个是信号显示的任务

一个是蓝牙通信的任务

那么心电信号采集以后

要通过信号显示任务进行显示

同时可以通过蓝牙

把这个心电信号发送给手机

或者是其它的设备

这时候采集的数据

可以用一个队列来存储

这个队列是先进先出的

那么心电信号采集的数据

可以存在这个队列的内存中

而信号显示和蓝牙通信任务

可以从这个队列中

去读取所需的数据

那只有采集完成以后

写了数据

那么后面的两个任务才可以读取

因此心电信号采集完成以后

这个任务它会有信号量

来通知后面两个任务

它的信号采集已经写到什么位置了

而后面的两个任务

因为都要从这个队列中去读取数据

而读取的时候

可能不能同时对某一个数据

进行操作

所以这时候

可能就需要有一个互斥器

告诉对方

谁占用了这个资源

这就是一个通信的例子

freeRTOS

它的任务的数量是没有限制的

任务之间它的调度

是采用优先级来调度

然后有两种方式

一种是抢占式的

也就是对于不同的优先级

高优先级的会被优先调度

第二种是协作式的

也就是相同的优先级

会被轮流调度

如何来产生任务呢

那么freeRTOS

是通过一个函数来产生任务的

就是xTaskCreate

然后产生任务的时候

有六个参数

我们下面来看下这个例子

在这个例子里头

产生了两个任务

首先

任务的第一个参数

是任务的函数名

第二个参数是任务名

那么都是字符串

方便调试

第三个参数就是占的大小

那么它的单位是字

那这时候呢

这个占的大小主要是根据任务

所需要的存储的容量来确定的

第四个就是任务的参数

第五个就是优先级

第六个是任务句柄

那么这个任务句柄

是在操作任务时候的一个标识

接下来看μc/OS

μc/OS有什么特点呢

我们来看一下

它是一个轻量级的

实时的

多任务的基于优先级的操作系统

那么它是开源的

用ANSI C写的

它对于学术研究使用是免费的

但是其它的应用是收费的

它可以用于8到64位的微处理器

目前的版本有两个

一个是μc/OS Ⅱ

一个是μc/OS Ⅲ

它的调度策略也是基于优先级调度的

是采用抢占式的调度策略

那么它的任务数目小于64个

下面看一下它的结构

它的结构包括三个部分

第一个就是接近于硬件的这部分

是微处理器相关的一些特定的代码

实际上也就是一些硬件的驱动程序

第二部分就是左边的这一部分

是与处理器无关的

包括调度策略

事件标志

信号量

邮箱

事件队列

任务管理

时间管理

存储器管理等等

右边这部分

是跟应用相关的特定的一些配置

比如任务的最大数目

队列的最大长度等等

这是它的结构

那么在产生任务的时候

它跟freeRTOS一样

是通过函数去产生的

这个函数是OSTaskCreateExt

它产生任务的时候有九个参数

这九个参数

跟freeRTOS的六个参数是类似的

那下面我们看这个例子

在这个例子中

产生了一个任务

它的九个参数我们就不再一一列举了

感谢您的观看

现代电子系统设计课程列表:

课程简介

-课程简介

第一章 第一章 现代电子系统概述

-1.1 电子系统简介

--1.1 电子系统简介

-1.2 现代电子系统举例

--1.2 现代电子系统举例

-1.3 现代电子系统的组成

--1.3 现代电子系统的组成

-1.4 现代电子系统设计方法

--1.4 现代电子系统设计方法

-第一章 作业

-第一章 讨论题

第二章 传感器和执行器

-2.1 传感器定义

--2.1 传感器定义

-2.2 传感器的分类和性能指标

--2.2 传感器的分类和性能指标

-2.3 常用传感器介绍

-- 2.3.1 常用传感器介绍(1)

-- 2.3.2 常用传感器介绍(2)

--2.3.3 常用传感器介绍(3)

-2.4 常用执行器介绍

--2.4 常用执行器介绍

-第二章 作业

-第二章 讨论题

第三章 模拟电路和模数混合电路

-3.1 模拟信号处理简介

--3.1 模拟信号处理简介

-3.2 信号放大和隔离电路

--3.2 信号放大和隔离电路

-3.3 滤波电路

--3.3 滤波电路

-3.4 运算电路(一)

--3.4 运算电路(一)

-3.5 运算电路(二)

--3.5 运算电路(二)

-3.6 电压比较器

--3.6 电压比较器

-3.7 功率放大电路

--3.7 功率放大电路

-3.8 模-数转换器

--3.8 模-数转换器

-3.9 数-模转换器

--3.9 数-模转换器

-第三章 作业

-第三章 讨论题

第四章 直流电源

-4.1 直流电源简介

--4.1 直流电源简介

-4.2 线性稳压电源

--4.2 线性稳压电源

-4.3 开关稳压电源

--4.3 开关稳压电源

-第四章 作业

-第四章 讨论题

第五章 微处理器与片上系统

-5.1 微处理器简介

--5.1 微处理器简介

-5.2 微处理器和片上系统的发展历程

--5.2 微处理器和片上系统的发展历程

-5.3 微处理器分类

--5.3 微处理器分类

-5.4 微处理器和片上系统举例

--5.4 微处理器和片上系统举例

-5.5 微处理器和片上系统硬件结构

--5.5 微处理器和片上系统硬件结构

-5.6 外围接口和设备

--5.6.1 外围接口和设备简介

--5.6.2 串行接口UART

-- 5.6.3 串行总线SPI

--5.6.4 串行总线 I2C

--5.6.5 串行总线USB

--5.6.6 网络接口CAN

--5.6.7 无线网络接口蓝牙

-5.7 嵌入式软件开发方法

--5.7 嵌入式软件开发方法

-5.8 嵌入式操作系统

-- 5.8.1 嵌入式操作系统

--5.8.2 嵌入式操作系统

--5.8.3 嵌入式操作系统

-5.9 外围设备应用程序开发简介

--5.9 外围设备应用程序开发简介

-第五章 作业

-第五章 讨论题

第六章 TM4C123 SoC及其系统设计

-6.1 TM4C123 简介

--6.1 TM4C123 SoC简介

-6.2 TM4C123 实验板

--6.2 TM4C123 实验板

-6.3 TM4C123 软件开发

--6.3 TM4C123 软件开发

-6.4 TM4C123 实验举例

--6.4 TM4C123实验举例

-第六章 作业

-第六章 阅读资料

-第六章 讨论题

第七章 PSoC及其系统设计

-7.1 PSoC简介

--7.1 PSoC简介

-7.2 PSoC实验板

--7.2 PSoC实验板

-7.3 PSoC软件开发

--7.3 PSoC软件开发

-7.4 PSoC实验举例

--7.4 PSoC实验举例

-第七章 作业

-第7章 阅读资料

-第七章 讨论题

第八章 FPGA与数字系统设计

-8.1 FPGA简介

--8.1 FPGA简介

-8.2 FPGA的发展趋势

--8.2 FPGA的发展趋势

-8.3 FPGA的特点

--8.3 FPGA的特点

-8.4 FPGA的结构

--8.4 FPGA的结构

-8.5 FPGA结构举例

--8.5 FPGA结构举例

-8.6 FPGA设计工具和方法

--8.6 FPGA设计工具和方法

-8.7 QuartusⅡ集成开发环境

--8.7 QuartusⅡ集成开发环境

-8.8 DE2-115实验平台简介

--8.8 DE2-115实验平台简介

-8.9 Verilog硬件设计语言

-- 8.9.1 Verilog简介

--8.9.2 Verilog语法

--8.9.3 Verilog设计方法

--8.9.4 Verilog设计举例(1)

--8.9.5 Verilog设计举例(2)

--8.9.6 Verilog设计举例(3)

--8.9.7 Verilog设计举例(4)

-- 8.9.8 设计仿真

-8.10 数字电路设计与仿真举例

--8.10 数字电路设计与仿真举例

-第八章 作业

-第八章 阅读资料

-第八章 讨论题

第九章 SOPC系统设计

-9.1 SOPC简介

--9.1 SOPC简介

-9.2 Nios II 微处理器简介

--9.2 Nios II 微处理器简介

-9.3 Avalone总线简介

--9.3 Avalone总线简介

-9.4 SOPC设计方法简介

--9.4 SOPC设计方法简介

-9.5 SOPC设计举例

-- 9.5.1 设计内容

--9.5.2 实验操作(1)

-- 9.5.3 实验操作(2)

-9.6 Nios II 软件设计

--9.6 Nios II 软件设计

-第九章 作业

-第九章 讨论题

第十章 SoC实验与设备

-10.1 实验内容与要求

--10.1 实验内容与要求.

-10.2 实验设备与器材

--10.2 实验设备与器材

-10.3 注意事项与调试方法

--10.3 注意事项与调试方法

-10.4 实验结果展示

--10.4 实验结果展示

--学生课内作品展示-音乐播放器

--学生课内作品展示-螃蟹机器人

--学生课内作品展示-手势识别跟踪

--学生课内作品展示-倒立摆

--学生课外作品展示-无线触摸输入设备

--学生课内作品展示-数字手写体识别

-第十章 作业

-第十章 讨论题

期末考试

-期末考试

--期末考试

5.8.2 嵌入式操作系统笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。