RTOS 基础入门与UCOSIII移植

    • 早期操作系统
    • 什么是RTOS
      • 常见的RTOS
      • RTOS核心实时内核
      • 前后台与RTOS优缺点
    • UCOS
      • 可裁剪可剥夺型内核
      • 特点优点
      • 多任务能力
    • UCOS学习方法
      • 多写代码
      • 遇到难点可以先去学会使用API再回来看看代码
    • UCOSIII移植STM32F4x
      • 步骤

早期操作系统

早期没有操作系统概念,一般分为前台程序和后台程序。例如51单片机。将一直循环的作为后台任务,中断作为前台程序。

什么是RTOS?

实时操作系统,又分为硬实时和软实时,硬实时:必须在规定时间内完成,不允许超时。软实时:可以超时,后果没有那么严重

常见的RTOS

  • UCOS,FreeRTOS,RTX,RT-Thread,DJYOS等

RTOS核心:实时内核

前后台与RTOS优缺点

  • 前后台响应太慢
  • RTOS响应快(一直是最 高优先级任务)

UCOS

可裁剪、可剥夺型内核

  • 可以剥夺其他任务的CPU使用权,总是运行就绪队列(ready queue)中priority(优先级)最高的task
  • 中断为最高优先级

特点、优点

  • ucos资料满天飞! Micrium官网链接
  • 具有RTOS所需要的所有功能,包括资源管理、同步、任务通信

多任务能力

  • ucos中每个任务无限循环
  • ucos中priority值越小,优先级越高

UCOS学习方法!

多写代码

遇到难点,可以先去学会使用API,再回来看看代码

UCOSIII移植(STM32F4x)

步骤

  1. 移动UCOSIII源码文件 至 stm32工程中
  2. 包含文件和头文件
  3. 更改bsp.c bsp.h
  4. 更改os_cpu_a.asm,os_cpu_c.c文件(OSTASKStkInit任务堆栈初始化函数)—否则FPU相关内容会出问题
  5. os_cfg_app.h—与ucos裁剪等相关
  6. 修改sys.h

你可能感兴趣的:(ARM,ucosIII)