FreeRTOS学习--1、初识FreeRTOS

1、什么是FreeRTOS?

FreeRTOS 是 RTOS 系统的一种,FreeRTOS 十分的小巧,可以在资源有限的微控制器中运行,当然,FreeRTOS 不仅局限于在微控制器中使用。但从文件数量上来看 FreeRTOS 要比uC/OSII 和 uC/OSIII 小的多。

2、FreeRTOS特点

(1)FreeRTOS内核支持抢占式、合作式和时间片调度;

(2)能够提供一个低功耗的Tickless模式;

(3)已将在超过30种架构的芯片上进行移植;

(4)FreeRTOS-MPU支持Cortex-M系列中的MPU单元;

(5)支持实时任务和协程;

(6)任务与任务、任务与中断之间可以使用任务通知、消息队列、二值信号量、数值型信号量、递归互斥信号量和互斥信号量进行通信和同步;

(7)具有优先级继承特性和互斥信号量;

(8)具有堆栈溢出检测功能、任务数量不限、任务优先级不限。

3、辅助开发资料查找

(1)FreeRTOS官网

          www.freertos.org

(2)参考资料

         正点原子《FreeRTOS开发手册》

(3)FreeRTOS源码下载

          在官网首页进行下载:

        

4、FreeRTOS源码结构分析

        打开源码文件夹,可以看到有两个文件夹,4 个 HTML 格式的网页和一个 txt 文档,HTML 网页和 txt 文档就不用介绍了,看名字就知道是什么东西了,重点在于上面那两个文件夹:FreeRTOS 和 FreeRTOS-Plus,这两个文件夹里面的东西就是 FreeRTOS 的源码。

        打开 FreeRTOS 文件夹,可以看到里面有三个文件夹:

        Demo文件夹里面就是 FreeRTOS 针对不同的 MCU 提供的相关例程,其中就有 ST 的 F1、F4 和F7 的相关例程,这对于我们学习来说是非常友好的,我们在移植的时候就会参考这些例程。License  文件夹里面就是 相关的许可信息,要用 FreeRTOS 做产品的得仔细看看,尤其是要出口的产品。

Source  文件夹 里面就是 FreeRTOS 的源码文件,也是我们以后打交道的,可以看出,相比于 uC/OS来说 FreeRTOS 的文件非常少!include 文件夹是一些头文件,移植的时候是需要的,下面的这些.C 文件就是 FreeRTOS 的源码文件了,移植的时候肯定也是需要的。

MemMang 这个文件夹是跟内存管理相关的,我们移植的时候是必须的。

重点来看一下 portable这个文件夹,FreeRTOS 是个系统,归根结底就是个纯软件的东西,它是怎么和硬件联系在一起的呢?软件到硬件中间必须有一个桥梁,portable 文件夹里面的东西就是 FreeRTOS系统和具体的硬件之间的连接桥梁!不同的编译环境,不同的 MCU,其桥梁应该是不同的,打开 portable 文件夹,如下图所示:

  • 10
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值