【FreeRTOS实战汇总】小白博主的RTOS学习实战快速进阶之路(持续更新)
博主是个小白,打算把这段时间系统学习RTOS的文章统一整理到这里,另外本文会给出一些参考性资料和指导性建议;
本文宗旨
FreeRTOS 是由Richard Barry在2003年由设计的,由于其设计的小巧简单,整个核心代码只有3到4个C文件。在设计之初就异军突起,累计开发者数百万,是目前市场占有率最高的RTOS,现在FreeRTOS已经支持三十多种芯片,基本包含市场上所有的微控制器。
FreeRTOS在2018年被亚马逊收购,继续遵循GPLV2许可协议完全免费。 Richard Barry为了让代码容易阅读、移植和维护,大部分的代码都是以C语言编写,只有一些内核调度函数采用汇编编写。
FreeRTOS的官方资料比较多,且完善,不过弊端是中文的,另外代码里也不大,最为学习RTOS还是比较好的。曾有网友翻译过一篇《Mastering the FreeRTOS Real Time Kernel – a Hands On Tutorial Guide》 ,不过时间大体是2009版本的,作为参考依然是有价值,另外国内大佬也有著作,是基于STM32平台的FreeRTOS的实战剖析,可以参考和借鉴。
另外,是否一定需要开发板呢?
- RTOS是平台无关的,官方提供了Windows和Linux平台的仿真版本,因此直接在PC上编译运行,也可以调试RTOS内核了,这样可以极大限度减少硬件排错等问题的干扰;
- 但是个人感觉,不玩板的RTOS还是缺少了一点灵魂,后期可以结合一下具体的硬件环境,深入地学习RTOS的使用和理解RTOS的原理;比如ESP32,STM32都有比较大的可玩性。
参考资料
国内靠谱书籍
官网资料
- Visual Studio Community Edition ;
- Eclipse IDE for C and C++ Developers with the MingW GCC based compiler;
基于 Posix GCC Eclipse FreeRTOS Simulator;构建所需要工具;
Pre-requisites:
- make (tested with GNU Make 3.81)
- gcc (tested with gcc 4.4.3)
Optional:
- Eclipse Galileo
- CDT 6.0
- Eclipse STATEVIEWER Plug-in v1.0.10
③ Mastering the FreeRTOS Real Time Kernel – a Hands On Tutorial Guide
- 感觉这是最好的文档了,该书作者是FreeRTOS的作者,主要是英文版,也可以参考2009年的中文版本;
④ FreeRTOS V10.0.0 Reference Manual
- 参考手册,具体函数的功能,接口说明,在这里都能找到;
- 文档③ ④中的demo和example文件;
相关文章
- 【FreeRTOS学习01】CubeIDE快速整合FreeRTOS创建第一个任务
- 【FreeRTOS学习02】源码结构/数据类型/命名规则总结
- 【FreeRTOS学习03】Task Management 任务管理基本概念介绍
- 【FreeRTOS学习04】Queue Management 消息队列使用详解
- 【FreeRTOS学习05】深度解剖FreeRTOSConfig.h实现对系统的自定义剪裁
- 【FreeRTOS学习06】深度解剖中断与任务之间同步的具体使用场景
【FreeRTOS实战汇总】小白博主的RTOS学习实战快速进阶之路(持续更新)的更多相关文章
- 【matlab系列汇总】小白博主的matlab学习实战快速进阶之路(持续更新)
我把之前在学习和工作中使用matlab的技巧和使用教程等相关整理到这里,方便查阅学习,如果能帮助到您,请帮忙点个赞: MATLAB可以进行矩阵运算.绘制函数和数据.实现算法.创建用户界面.连接其他编程 ...
- 【Linux系列汇总】小白博主的嵌入式Linux实战快速进阶之路(持续更新)
我把之前在学习嵌入式Linux和工作中遇到问题和相关经验等,一起整理到这里,方便自己查阅和学习,温故而知新,如果能帮助到您,请帮忙点个赞: 本文的宗旨 嵌入式Linux 的项目通常需要一个团队来开发, ...
- 【STM32系列汇总】小白博主的STM32实战快速进阶之路(持续更新)
我把之前在学习和工作中使用STM32进行嵌入式开发的经验和教程等相关整理到这里,方便查阅学习,如果能帮助到您,请帮忙点个赞: 本文的宗旨 STM32 只是一个硬件平台,同样地他可以换成MSP430,N ...
- 博主新建Linux学习交流群,欢迎广大大神入驻~
一转眼2018已经过去,博主在博客园辛勤耕耘了1年多,也结识了很多志同道合的道友: 收获了“基”情满满的友谊的同时,也大大拓宽了自己的眼界~ 深深感到在漫漫的学习之路,需要有道友一同共勉和相互激励! ...
- LeetCode题解汇总(包括剑指Offer和程序员面试金典,持续更新)
LeetCode题解汇总(持续更新,并将逐步迁移到本博客列表中) LeetCode题解分类汇总(包括剑指Offer和程序员面试金典) 剑指Offer 序号 题目 难度 03 数组中重复的数字 简单 0 ...
- LeetCode题解分类汇总(包括剑指Offer和程序员面试金典,持续更新)
LeetCode题解汇总(持续更新,并将逐步迁移到本博客列表中) 剑指Offer 数据结构 链表 序号 题目 难度 06 从尾到头打印链表 简单 18 删除链表的节点 简单 22 链表中倒数第k个节点 ...
- 一个博客萌新的C语言之旅(持续更新中....)
先更新上一次留下的的C语言练习答案,如下: #include <stdio.h> double mj(double r) { return 3.14*r*r; } int main() { ...
- 资源| 学习视频库-永久有效,持续更新!附赠java面试汇总
每天进步一丢丢,连接梦与想 我们总是羡慕他人的光芒,却忘记自己也会发光 声明 资源来自于网络,小编只是资源的搬运工,若有侵权,联系小编即删. 期待已久的学习视频库来啦! 经过小编多日整理,整理了1.5 ...
- 【Robot Framework 】项目实战汇总
写在前面 RF自动化的文章记录基本完成,建一个汇总目录,方便查看. [Robot Framework 项目实战]汇总 ∮[RF 项目实战 00]环境搭建 ∮[RF 项目实战 01]使用 Request ...
随机推荐
- B - How Many Equations Can You Find dfs
Now give you an string which only contains 0, 1 ,2 ,3 ,4 ,5 ,6 ,7 ,8 ,9.You are asked to add the sig ...
- 国产操作系统深度deepin V20体验
1. 安装系统 国产操作系统deepin V20 bata版本已经发布.本人第一时间安装和体验.在犹豫很久之后,因为受到最新内核,高版本的bash和Python的诱惑,字体更加和谐等因素,选择升级系统 ...
- JS Math&Date的方法 (上)
数学对象&时间对象 本篇文章主要介绍Math 和 Date 的常用方法! 一 :Math & Date Math 数学对象 - 处理数学计算和数学类 ...
- redis: 事务管理(九)
redis的事务 不保证原子性 三个步骤:开启事务.命令入队.执行事务 开启事务:multi 执行事务:exec 127.0.0.1:6379> multi #开启事务 OK 127.0.0.1 ...
- Linux下jdk的安装和环境变量的配置
Linux下jdk的安装和环境变量的配置 一.jdk的下载 方式一:在官网下载 http://www.oracle.com/technetwork/java/javase/downloads/inde ...
- DZ注册登录流程梳理
用户注册流程第一步:/source/class/class_member.php: on_register注册入口 if(!$activation) {//不为空,说明用户已经注册过 //将用户注册到 ...
- Openstack Swift 创建用户和 container
openstack user create --domain default --password-prompt [用户名];openstack role add --project admin - ...
- .Net平台GC VS JVM垃圾回收
前言 不知道你平时是否关注程序内存使用情况,我是关注的比较少,正好借着优化本地一个程序的空对比了一下.Net平台垃圾回收和jvm垃圾回收,顺便用dotMemory看了程序运行后的内存快照,生成内存快照 ...
- opencv-2-VS2017与QT显示图像
opencv-2-VS2017与QT显示图像 opencvqtVSC++ 目的 使用 VS 构建第一个 opencv 程序 使用 QT 构建 第一个 opencv 程序 VS 导入 QT 程序 开始 ...
- MAC攻击及缺陷
MAC攻击及缺陷 MAC有好几种实现方式 对MAC的攻击 重放攻击 重放攻击的防护 密钥推测攻击 MAC算法的缺陷 第三方证明 防止否认 前面我们在讲HMAC的时候简单讲过了什么是MAC消息认证码. ...


