FREERTOS 入门


以下为学习freertos的过程知识记录,源自网上学习,谢谢各位网友大神!现总结于此,便于日后温习。

FREERTOS 官网: http://www.freertos.org/  

 freertos BSP开发包下载:http://sourceforge.net/projects/freertos/files/FreeRTOS/  ,这里可以下载最新版本和历史版本。可是找来好半天,再找到的。


freertos 学习网站:http://xilinx.eetrend.com/article/7845  对freertos 比较全面的讲解和代码剖析。


http://blog.csdn.net/findaway123/article/category/1852921  

尤其http://blog.csdn.net/liyuanbhu/article/details/7853717    FreeRTOS 源代码的编程标准与命名约定  中文版说明的很好。

1.FreeRTOS文件:

    FreeRTOS的文件结构非常简单,移植或者版本升级替换也非常方便。
FREERTOS 入门_第1张图片
以上为开发包的文件夹。
    1)与FreeRTOS内核有关的文件数量仅为3个,分别是list.c queue.c tasks.c
    该文件位于FreeRTOS\Source

FREERTOS 入门_第2张图片
此为source文件夹下文件,最新版本还有event_groups.c文件。

    2)与内存分配有关的文件共有4个,分别是heap_1.c,heap_2.c,heap_3.c,heap_4.c。4个文件只需选择其中的1个,STM32选择heap_2.c。当然这为内存分配方式,可以根据程序需求选择适合的内存划分方式。
FREERTOS 入门_第3张图片
    该文件位于FreeRTOS\Source\portable\MemMang
FREERTOS 入门_第4张图片
     最新版本升级heap_4.c,和增加heap_5.c,用于支持64位硬件。
    3)与移植相关的代码包括port.c,portmacro.h。这些代码不但和编译器有关还和平台(MCU)有关。FreeRTOS先以编译器为大类,然后再以平台(MCU)为小类。在这里选择MDK编译器,平台为ARM_CM4F。
    该文件位于FreeRTOS\Source\portable\RVDS\ARM_CM4F

    很旧版本之前有汇编文件portasm.s,现在官方已增加到port.c文件中,就不需要我们配置修改。
    4)除了上述内容之外,还包括FreeRTOS内核相关的头文件。
    该文件FreeRTOS\Source\include
主要是根据需要进行。h文件宏定义的配置。

portmacro.h

portmacro.h 主要包括两部分内容,第一部分定义了一系列内核代码中用到的数据类型。

然后是一些硬件相关的定义。包括数据对其方式,堆栈增长方向,Tick Rate,还有任务切换的宏。
是个很重要的配置文件。

下一节讲freertos的移植过程和日常版本升级过程的操作流程。

你可能感兴趣的:(STM32)