0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

RTOS学习(1)—引言

人间小苦瓜2021 来源:人间小苦瓜2021 作者:人间小苦瓜2021 2023-01-15 21:36 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

为什么学习RTOS

单片机这条路上很难避免RTOS,除非你止步不前,或者另谋生计。学习RTOS是进阶之路,对于编程能力是一个很大提升。

很多人刚开始接触嵌入式的时候,首先去了解到的可能是单片机编程,肯恩是51入门,也可能是直接学习STM32,但是这里指的编程都是裸机编程,是没有加入RTOS(Real Time Operation System)也就是实时操作系统的编程。常见的RTOS有UCOSFreeRTOSRT-Thread,其中RT-Thread是国产操作系统。这其中FreeRTOS的市场占有率最高,因为他是免费的。UCOS的资料相对来说比较全,但是很多公司没有选择使用UCOS,因为商业使用,需要支付版权费。其中RT-Thread最近几年的热度也比较高。

值得一提的是,UCOS最近好像要免去商业版权费,不知是真是假。

传统的单片机编程,属于逻辑编程,几乎所有的程序都在while(1)循环里面,剩余的程序在中断里面。对于功能简单、外设较少的产品使用逻辑编程没有问题,但是随着社会的发展,人们对电子产品的要求越来越高,这就要求电子产品有更多的功能,更多的外设。

上述的原因势是比较官方的原因,相信大家了解、学习RTOS,并不是为了将来做产品,而是比赛或者项目需要。同时学习RTOS对于自己的编程能力也会有一定的提升,这也是一部分同学学习RTOS的动力。

怎么学习RTOS

关于怎么去学习,如果你有RTOS的基础的话,去掌握另一个操作系统,只需要去看相关的手册即可,不需要去看视频从头开始。但是如果你没有基础,那我还是建议从头看视频,不要急功近利,世界上没有速成的知识,速成都是假象。当然不包括学习能力特别强的人。

因为我学习的是UCOS,所以只能从这一类操作系统的角度来说。看视频的话,市面上比较主流的有野火和正点原子,野火的视频讲的比较基础,前面几节课几乎学不到实用的东西,但是去打下了理论基础,比较适合入门,从头学习(是真的从头学习),前几节课的学习反馈真是少的可怜,以至于你真的很想放弃。正点原子却不是这样,直接学习移植,然后就进入正题,但学起来有时候会比较废力,也是某种意义上的速成。

这两个视频比较适合结合起来看,学完之后,再去看技术文档,注重源码,会有很多收获,但也会很痛苦,对链表的要求真的很高。

RTOS选择

学习RTOS首先面临的选择就是选择哪一种RTOS,市面上的有很多。实际上,所有的RTOS都是在链表和定时器的基础上来实现相应的功能,只不过是代码风格不同,或者是安全性上不同(对于咱们来说,好像这个原因和没有一样)。所以说,只要掌握了一款RTOS,以后换到其他型号的 RTOS,使用起来自然也得心应手。

我学习的是UCOS,主要原因是看到文档里说他比较安全,发展历史比较早,相关资料比较全,组件也很丰富,更重要的是里面还说UCOS上过太空,我当时下定决心就学它^_^。FreeRTOS也很合适,相关资料也这几年也完善了起来(谁不喜欢白嫖呢)。

审核编辑黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    5186

    文章

    20165

    浏览量

    329080
  • 操作系统
    +关注

    关注

    37

    文章

    7331

    浏览量

    128669
  • RTOS
    +关注

    关注

    25

    文章

    863

    浏览量

    122620
  • uCOS
    +关注

    关注

    7

    文章

    175

    浏览量

    80559
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    RTOS Crash 问题全维度分析与解决指南

    ) RT-Thread:动态内存耗尽触发rt_system_heap_init失败;FreeRTOS:队列满时xQueueSend超时无响应 中断处理异常 1. 中断优先级高于RTOS内核(抢占调度器)2. 中断服务函数
    发表于 12-08 03:56

    学习RTOS的意义?

    对于嵌入式软件工程师,学习RTOS非常有必要。 1. 项目需要 随着产品要实现的功能越来越多,单纯的裸机系统已经不能完美地解决问题,反而会使编程变得更加复杂,如果想降低编程的难度,就必须引入
    发表于 11-27 08:16

    嵌入式rtos中哪一个更加值得去学习

    嵌入式圈里聊 RTOS,总有人揪着任务调度的那点差异争得面红耳赤,可实际上这东西做透了大家都大差不差 —— 优先级调度、时间片轮转,核心逻辑翻来覆去就那些,真到项目里谁也没比谁快出多少,哪怕是所谓
    的头像 发表于 11-05 10:48 559次阅读
    嵌入式<b class='flag-5'>rtos</b>中哪一个更加值得去<b class='flag-5'>学习</b>?

    RTOS怎么实现共享内存?

    K230的RTOS支持POSIX标准的共享内存吗 我尝试使用却失败 还是说需要源码部分配置的开启才可以使用 求教大佬
    发表于 08-04 08:06

    使用RTOS的SDK,调整rtsmart-menuconfig出现编译错误怎么解决?

    /k230_rtos_01studio_defconfig/rtsmart/app_canmv/main.o] Error 1scons: building terminated because of errors./bin/sh
    发表于 07-22 07:59

    请问编译纯rtos到底是选择Linux+rtos的sdk编译only rtos还是直接使用rtos sdk?

    编译纯rtos到底是选择Linux+rtos的sdk编译only rtos还是直接使用rtos sdk?
    发表于 07-11 07:22

    下一代PX5 RTOS具有哪些优势

    许多古老的RTOS设计至今仍在使用,包括Zephyr(1980年代)、Nucleus(1990年代)和FreeRTOS(2003年)。所有这些旧设计都有专有的API,通常更大、更慢,并且缺乏下一代RTOS的必要安全认证和功能。
    的头像 发表于 06-19 15:06 884次阅读

    【STM32单片机学习进阶路线】FreeRTOS嵌入式开发指南:从入门到智能循迹避障小车项目实战(含文档代码)

    STM32的学习路径一般是先掌握裸机开发,再进阶学习RTOS。简单的功能可通过裸机实现,而复杂产品则需借助RTOS来完成。随着RTOS应用场
    的头像 发表于 05-29 11:46 909次阅读
    【STM32单片机<b class='flag-5'>学习</b>进阶路线】FreeRTOS嵌入式开发指南:从入门到智能循迹避障小车项目实战(含文档代码)

    rtosrtos&amp;linux能否调整连接windows后的设备名称?

    rtosrtos&amp;linux 能否调整连接windows后的设备名称
    发表于 05-14 06:19

    如何在Eclipse ThreadX RTOS中集成SystemView

    SEGGER实时软件分析工具SystemView已经在ThreadX v6.4.2上进行了测试。SystemView从v3.60c版本支持Eclipse ThreadX(Azure RTOS),用户
    的头像 发表于 05-06 17:11 1189次阅读

    k230 rtos串口1无输出怎么解决?

    studio k230 linux+rtos,在大核里打开了uart1设备,使用例程通过uart1发送和接收数据,但是电脑上没有接收到任何数据,01 studio的串口1是io3和io
    发表于 04-28 08:02

    详解RTOS中的Hook函数

    Hook函数是RTOS中的一个关键特性,通过该函数,用户可以增强对任务管理的控制,定义系统行为。
    的头像 发表于 03-24 16:14 844次阅读

    RTOS中的本地存储指针使用

    本地存储指针是RTOS中的一个重要特性,增强了任务管理和数据处理能力。在RTOS上下文中,本地存储是指存储在本地的特定任务或对象的数据。通常与任务本地存储(Task Local Storage,TLS)有关,其中数据存储在任务控制块(TCB)中,允许每个任务具有私有的、特
    的头像 发表于 02-28 16:33 1176次阅读
    <b class='flag-5'>RTOS</b>中的本地存储指针使用

    Flexible Safety RTOS的技术特征

    Embedded Office的Flexible Safety RTOS是专为具有严格功能安全要求的嵌入式系统量身定制的、先进的实时操作系统。该RTOS专为工业自动化、汽车、铁路和医疗设备等行业而设
    的头像 发表于 01-07 11:29 1006次阅读

    RTOS中的错误检查机制

    在嵌入式应用中,有可能发生各种各样的错误,系统必须能够检测到这些错误并作出适当的响应。RTOS通常内置了一些错误检查功能,用于检测错误并向应用提供响应错误的方法。
    的头像 发表于 01-03 14:44 1025次阅读