学习RTOS基础知识笔记1

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学习RTOS基础知识笔记1相关的知识,希望对你有一定的参考价值。

支持前导0指令的CPU

   configUSE_PORT_OPTIMISED_TASK_SELECTION 设置为 1 

考虑到 RAM 的消耗,宏 configMAX_PRIORITIES 最好设置为一

   个满足应用的最小值

RTOS最高优先级configMAX_PRIORITIES-1


configUSE_TIME_SLICING 定义为 1 多个任务可以共用一个优先级,数量不限

  处于就绪态的优先级相同的任务就会使用时间片轮转调度器获取运行时间


创建任务:

 1 xTaskCreate()或 xTaskCreateStatic()

  如果一定要从任务函数中退出, vTaskDelete(NULL)来删除此任务

  从任务函数中返回或退出的话就会调用configASSERT(),必须定义

   configASSERT()


 2 不一定要用延时函数,主要是要用任务切换API函数就可以

   如:请求信号量、队列等,甚至直接调用任务调度器,延时最常用


 3 任务控制块,存储任务的属性

  TCB_t (新版) tskTCB(旧版)

  使用函数 xTaskCreate()创建任务的时候就会自动的给每个任务分配

  一个任务控制块


  根据某些宏决定哪些需要编译,与裁剪有关


 4  任务堆栈

    任务切换保存现场用

  创建任务的时候需要给任务指定堆栈

  使用的函数 xTaskCreate()创建任务(动态方法)xTaskCreate()自动创建

      任务堆栈

   xTaskCreateStatic()创建任务(静态方法)手动定义任务堆栈,堆栈首地址

        作为参数传给函数参数puxStackBuffer

   StackType_t 堆栈大小数据类型,是uint32_t,堆栈实际大写是定义大小

        的4倍


本文出自 “IAR相关问题” 博客,转载请与作者联系!

以上是关于学习RTOS基础知识笔记1的主要内容,如果未能解决你的问题,请参考以下文章

Zephyr RTOS -- 学习笔记总述

RTOS训练营课程学习方法和结构体知识复习 + 链表知识

RTOS训练营课程学习方法和结构体知识复习 + 链表知识

RTOS训练营课程学习方法和结构体知识复习 + 链表知识

FreeRTOSFreeRTOS学习笔记— 任务创建删除挂起和恢复

RTOS训练营课程学习方法和C语言知识(指针结构体函数指针链表)和学员问题