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

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

3天内不再提示

为什么应该考虑从裸机迁移到FreeRTOS

星星科技指导员 来源:嵌入式计算设计 作者:Andrew Longhurst 2022-11-30 15:45 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

为什么要考虑实时操作系统?对于大多数人来说,这归结为知道“你最擅长什么”:如果你总是用裸机编程,那么总是以这种方式编程就成了例行公事。如果您从未使用过RTOS,您可能不知道RTOS可以为嵌入式项目带来的好处。虽然它们更强大、更复杂,但使用 RTOS 并不一定是更耗时的开发路线。

当使用功能有限的小型系统时,在裸机上使用超级循环架构调度任务可能是一个完全合适的解决方案,但是当对调度有更高的要求,并且执行时序变得更加复杂时,可能是时候考虑RTOS了。

更大的灵活性

超级循环架构的一个关键问题是时序和响应时间,因为它们是由代码结构固定的,并且如果进行修改或添加,它们会发生变化。相比之下,RTOS 通常可实现更大的调度灵活性。基于优先级的抢占式RTOS允许根据其实时要求确定任务的优先级。具有严格计时约束的任务能够优先于具有更大计划灵活性的任务,从而提高应用程序对时间关键型事件的响应能力。尽管可以在裸机上实现一种形式的抢占式调度,但它的范围有限。

简化集成

即使您不需要实时响应,使用RTOS也可以简化集成。如果您的应用程序将来需要或可能需要与文件系统、TCP/IP 和 GIU 等组件进行交互,则可以简单地将这些组件作为单个任务添加到系统中。当裸机应用程序直接与处理器寄存器交互时,RTOS 和/或硬件抽象层 (HAL) 位于裸机和应用程序之间。程序员不是与裸机交互,而是与RTOS和HAL交互。因此,RTOS的模块化设计使得使用所提供的RTOS资源与任务和驱动程序进行通信变得容易,从而缩短了开发时间。

更少的编码,更多的代码重用

RTOS 提供的资源还支持任务与处理器资源之间的轻松任务创建、销毁、同步和通信。所需要的只是了解RTOS API。这是一个一致的接口,一旦掌握,就可以在应用程序和处理器之间实现代码重用和可移植性。RTOS还允许将应用程序分解为较小的自主任务,每个任务在自己的上下文中执行,这可以降低复杂性并有助于调试和验证。

三天学习

RTOS 比裸机调度更复杂,但掌握一个并不一定意味着数小时的自学学习。短期课程可以是一种快速而专注的学习方式,并在完成后提供在嵌入式系统中实施RTOS所需的实践经验。WITTENSTEIN 高完整性系统 (WHIS) 为个人或组织提供为期三天的 FreeRTOS 培训课程,这些个人或组织将从向没有任何时间浪费的专家学习中受益。

为什么要学习 FreeRTOS?

RTOS应该易于使用、编译并得到多种架构的支持。FreeRTOS 内核是世界上最受欢迎的嵌入式 RTOS,拥有庞大的用户群。WHIS始终通过许可、支持和升级到安全关键型应用程序的SAFE RTOS途径来支持FreeRTOS。FreeRTOS 与处理器和编译器无关,因此提供跨平台支持,目前支持超过 35 种不同的架构。顾名思义,FreeRTOS 内核可以从 FreeRTOS 网站免费下载和使用,该网站在 M.I.T. 许可证下分发。

审核编辑:郭婷

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

    关注

    37

    文章

    7334

    浏览量

    128730
  • RTOS
    +关注

    关注

    25

    文章

    863

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    无质量损失的数据迁移:Nikon SLM Solutions信赖3Dfindit企业版

    使用转换器将CAD数据从一个系统传输到另一个系统,但这往往会导致数据的质量下降。因此,该公司决定使用3Dfindit企业版将CAD数据迁移到新系统,便不会造成任何质量损失。这样,在保持最高数据质量
    发表于 11-25 10:06

    FreeRTOS任务调度及优先级问题

    大家好,最近本人在学习FreeRTOS ,之前有过一些裸机开发的经验,目前知道了FreeRTOS的任务是基于时间片轮转来调度,也就是知道了任务会基于各个时间片来运行。 于是联想了如果有一些外设芯片
    发表于 11-06 02:18

    往flash里面烧写的是.elf文件还是.hex文件?裸机应该没办法识别.elf文件?

    往flash里面烧写的是.elf文件还是.hex文件?裸机应该没办法识别.elf文件吧?
    发表于 11-05 07:02

    恩智浦MCX C系列MCU助力实现高效迁移

    考虑8位微控制器升级到32位微控制器?本文以五大理由阐释为何需要升级,并带你了解恩智浦MCX C系列如何凭借优异性能、丰富的外设与强大的工具,让迁移过程变得轻松高效。经济实惠且可扩展的解决方案,让您的设计经得起未来考验。
    的头像 发表于 09-22 16:40 2912次阅读

    如何使用 CyCloneTCP 和 FreeRTOS SNTP 服务器获取时间?

    使用 CyCloneTCP 和 FreeRTOS SNTP 服务器获取时间
    发表于 09-04 08:17

    如何在Keil中将NuMicro BSPArm编译器5迁移到编译器6?

    在Keil中将NuMicro BSPArm编译器5迁移到编译器6!
    发表于 08-20 06:29

    Altium到KiCad的迁移实践:多源库管理方案与Jobset应用技巧

    “  如果 NCX 可以用 KiCad 设计 PCB,你的公司一定也可以!-- Jason Goldstein。 本演讲记录了一位资深电路板设计工程师从 Altium Designer 迁移到
    的头像 发表于 06-11 11:21 1867次阅读
    <b class='flag-5'>从</b>Altium到KiCad的<b class='flag-5'>迁移</b>实践:多源库管理方案与Jobset应用技巧

    STM32裸机FreeRTOS项目分享:U575智能手表+F103智能循迹避障小车(附全套教程/代码)

    初学者学STM32时,有一个好的学习路线是非常重要的,推荐"裸机开发--裸机项目--RTOS开发--RTOS项目"这个体系化路线,基础技能到项目实战一步步进阶,能让学习更有
    的头像 发表于 05-27 17:09 1224次阅读
    STM32<b class='flag-5'>裸机</b>及<b class='flag-5'>FreeRTOS</b>项目分享:U575智能手表+F103智能循迹避障小车(附全套教程/代码)

    Keil MDK到IAR EWARM:通过工程迁移实现项目资产的更好管理

    对于需要统一开发环境或涉及多核架构(如Cortex-A/R)的项目,越来越多的用户选择Keil MDK迁移到IAR EWARM。这就会面临着需要将之前的Keil MDK工程迁移到IAR EWARM的问题。本文将介绍如何高效完成
    的头像 发表于 05-08 09:03 1030次阅读
    <b class='flag-5'>从</b>Keil MDK到IAR EWARM:通过工程<b class='flag-5'>迁移</b>实现项目资产的更好管理

    请问将项目RT1024迁移到RT1064的最快方法是什么?

    我正在将我的项目基于 RT1024 迁移到基于 RT1064 的下一代产品,是否有快速的方法,或者我只能手动完成? 谢谢!
    发表于 03-31 06:15

    CubeMX生成的freertos工程没有代码提示是怎么回事?

    使用Cube生成的freertos工程没有代码提示功能,使用该函数一次后才会有该函数的代码提示功能,生成裸机工程就有。
    发表于 03-13 08:18

    如何将项目IAR迁移到Embedded Studio

    本文描述如何将IAR EWARM项目迁移到SEGGER Embedded Studio(简称SES)中。
    的头像 发表于 02-25 17:11 1085次阅读
    如何将项目<b class='flag-5'>从</b>IAR<b class='flag-5'>迁移到</b>Embedded Studio

    美国裸机云服务器是什么详细介绍

    美国裸机云服务器是一种高性能的计算资源,在云计算领域逐渐受到企业和开发者的青睐。主机推荐小编为您整理发布美国裸机云服务器的详细介绍,希望对您了解美国裸机云服务器是什么有帮助。
    的头像 发表于 02-07 15:56 642次阅读

    HarmonyOS Next 应用元服务开发-应用接续动态配置迁移保持迁移连续性

    保证迁移连续性,由于迁移加载时,目标端拉起的应用可能执行过自己的迁移状态设置命令(如:冷启动时目标端在onCreate中设置了INACTIVE;热启动时对端已打开了不可迁移的页面,
    发表于 12-30 10:30

    龙智直播预告:揭示现代化数据管理与版本控制优势、SVN迁移到Helix Core的实践指导、迁移步骤等

    2025年1月9日(周四)14:00-14:45,Perforce中国授权合作伙伴-龙智将在线直播,分享为何您的传统数据管理与版本控制系统需要升级、Perforce Helix Core的显著优势,以及如何迁移到Helix Core等实用见解,以为您的数据管理与版本控制系统现代化转型提供有力支持。
    的头像 发表于 12-16 15:35 631次阅读
    龙智直播预告:揭示现代化数据管理与版本控制优势、<b class='flag-5'>从</b>SVN<b class='flag-5'>迁移到</b>Helix Core的实践指导、<b class='flag-5'>迁移</b>步骤等