FreeROTS学习(一)

(1)为什么要学 FreeRTOS

更有钱途!!
只会祼机开发的单片机工程师,薪资注定不会高于会 FreeRTOS 的工程师;
有了 FreeRTOS 基础,对于将来学习 Linux 操作系统会更加有帮助;

(2)什么是FreeRTOS

Free 即免费的, RTOS 的全称是 Real time operating system ,中文就是实时操作系统。
注意: RTOS 不是指某一个确定的系统,而是指一类操作系统。比如: uc/OS FreeRTOS RTX , RT-Thread等这些都是 RTOS 类操作系统。
FreeRTOS 是一个迷你的实时操作系统内核。作为一个轻量级的操作系统,功能包括:任务管 理、时间管理、信号量、消息队列、内存管理、记录功能、软件定时器、协程等,可基本满 足较小系统的需要。 由于RTOS 需占用一定的系统资源 ( 尤其是 RAM 资源 ) ,只有
μC/OS-II 、 embOS、 salvo FreeRTOS 等少数实时操作系统能在小 RAM 单片机上运行。相对 μC/OS-II 、 embOS等商业操作系统, FreeRTOS 操作系统是完全免费的操作系统,具有源码公开、可移 植、可裁减、调度策略灵活的特点,可以方便地移植到各种单片机上运行,其最新版本为 10.4.4版。
(以上来自百度百科)

(3)祼机开发与 FreeRTOS

祼机开发:
玩游戏,结果女朋友生气,分手!
陪女朋友,无法玩游戏,抑郁症!
FreeRTOS
1 秒游戏 -- 1 秒女朋友 -- 1 秒游戏 -- 1 秒女朋友 -- 1 秒游戏 -- 1 秒女朋友 ....
(累死 ……
CPU 是个无情的战斗机器,可以快速在两个乃至多个任务间快速切换,并且不觉得劳累,实现
二者兼顾。
FreeRTOS 实现多任务的原理
严格来说 FreeRTOS 并不是实时操作系统,因为它是 分时复用 的。
系统将时间分割成很多时间片,然后轮流执行各个任务。
每个任务都是独立运行的,互不影响,由于切换的频率很快,就感觉像是同时运行的一样

(4)使用CubeMX快速移植

快速移植流程
1. SYS 选项里,将 Debug 设为 Serial Wire ,并且将 Timebase Source 设为 TIM2 (其它定
时器也行)。为何要如此配置?下文解说。
2. RCC 里的 HSE 设置为 Crystal/Ceramic Resonator
3. 时钟按下图配置
4. 选择 FREERTOS 选项,并将 Interface 改为 CMSIS_V1 V1 V2 有啥区别?下文解释。
5. 配置项目信息,并导出代码。

(5)一些常见问题

1. Timebase Source 为什么不能设置为 SysTick ?
裸机的时钟源默认是 SysTick ,但是开启 FreeRTOS 后, FreeRTOS 会占用 SysTick (用来生成 1ms 定时,用于任务调度),所以需要需要为其他总线提供另外的时钟源。
2. FreeRTOS 版本问题
V2 的内核版本更高,功能更多,在大多数情况下 V1 版本的内核完全够用。
  • 6
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值