
单片机_操作系统
# UCOSII / UcosIII / FreeRtos / RTthread
又一个小垃圾
学习之后,如果不成体系或者不使用那么很快就会忘记自己所学的东西。这样自己的付出和身心的劳累与疲惫将没有任何的意义。还会打击自己的自信心,人生应该有正反馈,人生应该是积极快乐的。
展开
-
第十二章 事件标志组
前面我们讲过可以使用信号量来完成任务同步,这里我们再讲解一下另外一种任务同步的方法,就是事件标志组,事件标志组用来解决一个任务和多个事件之间的同步,本章分为以下几个部分。12.1事件标志组12.2事件标志组相关函数12.3事件标志组实验...原创 2021-02-22 14:54:25 · 122 阅读 · 0 评论 -
第十三章 同时等待多个内核对象
在前几章中我们讲解了任务如何等待单个对象,比如信号量、互斥信号量、消息队列和时间标志组等。本章我们就讲解一下 UCOSIII如何同时等待多个内核对象,在 UCOSIII中只支持同时等待多个信号量和消息队列,不支持同时等待多个事件标志组和互斥信号量,本章分为如下几部分:13.1同时等待多个内核对象13.2 OSPendMulti()函数13.3同时等待多个内核对象实验...原创 2021-02-22 14:54:12 · 180 阅读 · 0 评论 -
第十四章 存储管理
作为一个操作系统,内存管理是其必备的功能,在 UCOSIII中也有内存管理模块,使用内存管理模块可以动态的分配和释放内存,这样可以高效的使用“昂贵”的内存资源,本章我们就学习一下 UCOSIII的内存管理,本章分为如下几部分:14.1内存管理简介14.2存储区创建14.3存储块的使用14.4存储管理实验...原创 2021-02-22 14:53:58 · 110 阅读 · 0 评论 -
第十一章 UCOSIII消息传递
有时候一个任务要和另外一个或者几个任务进行“交流”,这个“交流”就是消息的传递,也称之为任务间通信,在 UCOSIII中消息可以通过消息队列作为中介发布给任务,也可以直接发布给任务,本章我们就讲解一个 UCOSIII中的消息传递,本章分为如下几部分。11.1消息队列11.2消息队列相关函数11.3消息队列实验...原创 2021-02-18 20:20:34 · 132 阅读 · 0 评论 -
第十章 UCOSIII信号量和互斥信号量
第十章 UCOSIII信号量和互斥信号量前言前言在 UCOSIII中有可能会有多个任务会访问共享资源,因此信号量最早用来控制任务存取共享资源,现在信号量也被用来实现任务间的同步以及任务和 ISR间同步。在可剥夺的内核中,当任务独占式使用共享资源的时候,会出现低优先级的任务先于高优先级任务运行的现象,这个现象被称为优先级反转,为了解决优先级反转这个问题,UCOSIII引入了互斥信号量这个概念。本章我们就来讲解一下 UCOSIII的信号量和互斥信号量,本章分为如下几个部分。10.1 信号量10.2原创 2021-02-18 20:19:32 · 229 阅读 · 0 评论 -
第九章 UCOSIII软件定时器
在学习单片机的时候会使用定时器来做很多定时任务,这个定时器是单片机自带的,也就是硬件定时器,在 UCOSIII中提供了软件定时器,我们可以使用这些软件定时器完成一些功能,本章我们就讲解一下 UCOSIII的软件定时器,本章分为以下几个部分。9.1定时器工作模式9.2 UCOSIII定时器实验...原创 2021-02-18 20:17:07 · 204 阅读 · 0 评论 -
第八章 UCOSIII中断和时间管理
本章我们讲解一下 UCOSIII的中断处理和时间管理,在使用 UCOS操作系统的时候我们对于中断服务程序的处理就要做一点修改,这个和我们不使用操作系统的时候是不同的。我们在对某些任务做延时的时候会使用到一些延时函数,本章我们就讲解一下这两个知识点,本章分为以下几个部分:8.1中断管理8.2时间管理...原创 2021-02-18 20:16:34 · 154 阅读 · 0 评论 -
第七章 UCOSIII系统内部任务
在 UCOSII中我们知道有两个系统任务:统计任务和空闲任务,在 UCOSIII中系统内部任务扩展到了 5个,本章我们就详细的讲解一下 UCOSIII中的这 5个系统任务,本章分为如下几部分:7.1空闲任务7.2时钟节拍任务7.3统计任务7.4定时任务7.5中断服务管理任务7.6钩子函数...原创 2021-02-18 20:09:04 · 149 阅读 · 0 评论 -
第六章 任务相关API函数使用
在上一章中我们讲解了 UCOSIII的任务管理,我们学习就是为了使用,这一节我们就讲解一下 UCOSIII如何创建任务和任务相关函数的使用,本章分为如下几个部分:6.1任务创建和删除实验6.2任务挂起和恢复实验6.3时间片轮转调度实验...原创 2021-02-18 20:08:28 · 157 阅读 · 0 评论 -
第五章 UCOSIII任务管理
多任务操作系统最主要的就是对任务的管理,包括任务的创建、挂起、删除和调度等,因此对于 UCOSIII操作系统中任务管理的理解就显得尤为重要。本章我们就讲解 UCOSIII中的任务管理,本章分为如下几个部分:5.1 UCOSIII启动和初始化5.2任务状态5.3任务控制块5.4任务堆栈5.5任务就绪表5.3任务调度和切换...原创 2021-02-18 20:07:52 · 437 阅读 · 0 评论 -
第四章 UCOSIII 的移植
第四章 UCOSIII 的移植前言4.1 UCOSIII简介4.2 移植准备工作4.3 UCOS III移植4.4 软件设计4.5 下载验证前言在 2009年Micrium推出了UCOSIII,相对于 UCOSII性能有了进一步的提升,支持时间片轮转调度,极短的关中断事件等。本章我们就讲解如何在 STM32F407开发板上移植 UCOSIII 操作系统。4.1 UCOSIII简介4.2 移植准备工作4.3 UCOS III移植4.4 软件设计4.5 下载验证4.1 UCOSII原创 2021-02-18 20:03:50 · 978 阅读 · 0 评论 -
第三章 移植文件讲解
第三章 移植文件讲解前言3.1 滴答定时器Systick3.2 os_cpu_a.asm文件详解3.3 os_cpu.h文件详解3.4 os_cpu_c.c文件详解总结前言在第一章我们讲解了UCOSII在STM32F407开发板上的移植过程,第二章讲解了一下Cortex-M3和 M4处理器的一些基础知识,本章我们就结合前两章内容讲解一下我们在 UCOSII移植过程中的一些重要文件和我们移植 UCOSII的过程中都做了那些工作,本章分为如下几部分:3.1 滴答定时器Systick原创 2021-02-18 19:47:29 · 460 阅读 · 0 评论 -
第二章 CortexM3/M4基础
第二章 CortexM3/M4基础前言2.1 Cortex-M3/M4通用寄存器2.1.1 通用寄存器1. 通用目的寄存器 R0-R121. 功能寄存器 R13-R152.1.2 特殊功能寄存器组1 状态字寄存器S(三合一)(xPSR):2 中断屏蔽寄存器S3 控制寄存器(CONTROL)2.2操作模式和特权级别2.3 FPU单元2.3.1 FPU寄存器2.3.2 Lazy Stacking2.4 堆栈2.4.1 Cortex-M3/M4堆栈操作2.4.2 双堆栈机制2.4.3 Stack frame原创 2021-02-18 18:38:21 · 3103 阅读 · 2 评论