码迷,mamicode.com
首页 > 其他好文 > 详细

FreeRTOS的学习路线

时间:2018-06-23 15:41:53      阅读:337      评论:0      收藏:0      [点我收藏+]

标签:hand   dem   通知   大量   嵌入式   说明   .com   rto   内存   

背景

  由于之前接触过一些嵌入式RTOS,如Keil-RTX,uCOS-II,也曾经关注过FreeRTOS,但一直没有机会采用FreeRTOS开发。目前FreeRTOS做为主流RTOS,风声正盛。作为嵌入式开发从业人员,貌似没有使用过FreeRTOS,竞争力指数会直线降低。最近,刚巧项目中使用了STM32f103芯片。由于RTOS的可以更合理、更有效地利用CPU的资源,简化应用软件的设计,缩短系统开发时间,更好地保证系统的实时性和可靠性。由于对FreeRTOS好奇的倾向性,所以,本次决定采用FreeRTOS开发。

FreeRTOS 简介

  关于FreeRTOS简介,在此不再多说,https://www.freertos.org/网站上有丰富的说明

FreeRTOS 手册熟悉

  161204_Mastering_the_FreeRTOS_Real_Time_Kernel-A_Hands-On_Tutorial_Guide.pdf

  通过该手册可以了解

      1)工程创建方法,

      2)任务管理:主要描述任务优先级调度,抢占式或非抢占式调度等调度模型

      3)堆内存管理:主要分析5种堆内存管理模型,建议选择heap_4

      4)队列管理

   5)软时间管理

      6)中断管理,主要是推迟中断处理方法

      7)资源管理,主要是临界区,资源互斥访问

      8)事件组

      9) 任务通知,直接任务通信,无需中间对象,比消息队列,事件组和信号量更快,缺点是任务创建时需要分配8字节内存

 

FreeRTOS 移植

  方法1 :\FreeRTOSv10.0.1\FreeRTOS\Demo\ 中包含了大量的Demo,可供选择。

  方法2 :如果感兴趣,可以先构建符合芯片的工程,然后再导入FreeRTOS,这样更容易理解,方法大致如下

  第一步:添加下图所示文件

  技术分享图片

  第二步:添加 FreeRTOSConfig.h【建议参考方法1中对象工程的FreeRTOSConfig.h】文件,并添加

        #define vPortSVCHandler SVC_Handler
        #define xPortPendSVHandler PendSV_Handler

        #define xPortSysTickHandler SysTick_Handler

小结

  通过一周的了解熟悉,基本掌握FreeRTOS的各种API使用。至于方法方面主要还是看手册, 161204_Mastering_the_FreeRTOS_Real_Time_Kernel-A_Hands-On_Tutorial_Guide.pdf通俗易懂的描述了各种机制的使用。从功能的角度看,与其他RTOS大致相同。RTOS内部实现细节应该各有不同。以后抽时间分析一下,再继续更新。

 

FreeRTOS的学习路线

标签:hand   dem   通知   大量   嵌入式   说明   .com   rto   内存   

原文地址:https://www.cnblogs.com/zystechnology/p/9217183.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!