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

    文章

    7432

    浏览量

    129599
  • RTOS
    +关注

    关注

    25

    文章

    868

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Freescale半导体QFN封装迁移及MC9S08QG8/4微控制器解析

    的QFN封装迁移以及MC9S08QG8/4微控制器的相关特性。 文件下载: MC9S08QG44CDNE.pdf 一、QFN封装迁移 1.1 迁移原因 Freescale半导体的部分封装
    的头像 发表于 04-09 16:15 184次阅读

    DR1 系列评估板 PS 端裸机FreeRTOS 开发案例手册

    本文为创龙科技DR1 系列评估板 PS 端裸机FreeRTOS 开发指南,涵盖三大核心案例与双开发模式实现。核心内容包括 LED 定时闪烁、按键控制 LED 亮灭、串口数据回显功能,详细说明工程
    的头像 发表于 01-19 17:12 293次阅读
    DR1 系列评估板 PS 端<b class='flag-5'>裸机</b>与 <b class='flag-5'>FreeRTOS</b> 开发案例手册

    电子材料抗离子迁移方案!东亚合成 IXE/IXEPLAS,智美行科技免费试样

    离子迁移是电子材料失效的主要原因之一,封装材料中的 Na⁺、Cl⁻、Cu²⁺、Ag⁺等杂质离子,在电场、温湿度等环境因素作用下,会材料内部迁移到布线表面或间隙中,形成导电通路,引发布线腐蚀、电路
    的头像 发表于 12-16 16:07 807次阅读
    电子材料抗离子<b class='flag-5'>迁移</b>方案!东亚合成 IXE/IXEPLAS,智美行科技免费试样

    无质量损失的数据迁移: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 4166次阅读

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

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

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

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

    FreeRTOS增加新的设备驱动程序

    如果你正在使用FreeRTOS构建嵌入式系统,并且考虑添加新的设备驱动程序,那么这篇文章很适合你。高效的设备集成不仅仅是让设备功能正常运行——更关乎模块化、可靠性和安全性。
    的头像 发表于 08-06 15:44 1105次阅读
    为<b class='flag-5'>FreeRTOS</b>增加新的设备驱动程序

    ART-PI H750-USB-MSC设备描述符异常的原因?怎么解决?

    PC端 PC侧能够传输文件至主控侧的SD卡中。 诉求:当前是使用CubeMX进行配置,最后应该迁移到ART-Pi的RTT的SDK中(使用cherry-USB),最后应该会做一个CDC+MSC的混合设备
    发表于 06-19 06:52

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

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

    详解FreeRTOS与SAFERTOS的区别

    开源免费的FreeRTOS由Richard Barry在WHIS工作时创建,WHIS基于FreeRTOS的功能模型,通过完整的HAZOP分析,确定了功能模型和API中的所有的弱点,减轻所有薄弱环节,并采用IEC 61508 SIL 3的开发生命周期,重新设计实现了SAFE
    的头像 发表于 06-04 16:58 1129次阅读
    详解<b class='flag-5'>FreeRTOS</b>与SAFERTOS的区别

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

    初学者学STM32时,有一个好的学习路线是非常重要的,推荐"裸机开发--裸机项目--RTOS开发--RTOS项目"这个体系化路线,基础技能到项目实战一步步进阶,能让学习更有
    的头像 发表于 05-27 17:09 1763次阅读
    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 1468次阅读
    <b class='flag-5'>从</b>Keil MDK到IAR EWARM:通过工程<b class='flag-5'>迁移</b>实现项目资产的更好管理