开放原子训练营(第三季)RT-Thread Nano学习营线下学习心得

news2024/11/15 15:55:38

前言

目前市面上有很多种RTOS(Real-time operating system,实时操作系统),还在犹豫选择学习哪种RTOS的小伙伴,推荐你们学习RT-Thread操作系统,这也是本人最喜欢的一个RTOS,喜欢的原因很简单,国产、开源、资料丰富以及有丰富的生态和论坛,最重要的一点就是资料都是中文的,这点很适合英语菜鸡的我。

1、RT-Thread简介

RT-Thread 诞生于2006年,是国内以开源中立、 社区化发展起来的一款高可靠实时操作系统 ,由睿赛德科技负责开发维护和运营 。因其十五年的沉淀积累, 专业化的运营推广,其高可靠性、安全、高可伸缩性和中间组件丰富易用等特性极大地满足了市场需求。目前已经成为市面上装机量最大(超20亿台)、开发者数量最多(超15万)软硬件生态最好的操作系统之一,被广泛应用于航空、国防军工、电力、轨道交通、车载、工业自动化、消费电子等众多行业领域。

目前的生态伙伴有我们熟知的ARM公司、阿里的平头哥、恩智浦(NXP)公司,具体的看下图:

在这里插入图片描述

2、RT-Thread 的作用

在大学期间,我想很多人都是按部就班的跟着课程走,先学STC51,再学STM32有的或者是TI公司的DSP芯片,首先点个灯、驱动一下数码管、按键,然后使用IIC驱动一下EEPROM、使用SPI协议驱动W25Q64模块,有的也学习并做过实验例如CAN外设、SDIO外设、ADC等等,但这些都属于裸机开发,何为裸机开发呢,就是我们熟知的将所有外设都放到main函数的while(1)中,它的执行方式就是按照顺序执行:
在这里插入图片描述
只有当ADC检测结束后才可执行OLED显示,OLED显示执行结束后执行串口接收,这样循环往复的顺序执行,当我们使用一些对时间有精准要求的器件时,再按照这种顺序执行就会读取的数据有误,此时也可以借助中断来解决这个难题,但当使用的外设越来越多时,裸机开发就显得力不从心了,此时应该选择使用RTOS了。

随着 MCU 硬件性能的提升、外设的增加以及软件功能需求的增加,越来越多项目采用 RTOS 的开发方式。一方面裸机开发方式的软件框架不清晰,对后续扩展功能极其不利;另一方面,由于软件复杂性的增加,裸机开发对工程师的要求越来越严苛,过多使用中断等因素,都会增加系统的不可靠性。

本质上任何一款RTOS 的首要目标就是解决这些问题。RT-Thread 内核的主要功能是向下管理所有硬件资源,向上为应用程序提供 API 接口和软件服务,所有任务在内核的管理、同步和调度下有序运行。

简单来说,使用 RT-Thread 能够带来如下好处:

  • 支持任务并发处理
  • 容易扩展新的功能
  • 破解应用的复杂性
  • 增强代码可移植性
  • 节省软件开发时间

了解过RTOS的人就会说了,其他的RTOS也都具备这些功能啊,别急,RT-Thread的主要特点在于:

它支持非常多的硬件平台,还拥有及其丰富的组件和软件包(包括文件系统、网络、IoT、AI、传感器等等),提供了便捷的开发环境和 IDE 工具,以及众多的文档资料,以及丰富的生态与论坛,最最最最重要的一点,它的资料全是中文,就这一点你怎能不爱呢?

3 RT-Thread 的特点

相比其他操作系统,RT-Thread 的主打特性是 “小而美的物联网操作系统”。

“小” 体现在 RT-Thread 的体积小,最小资源占用 1.2KB RAM 和 2.5KB flash。RT-Thread 可伸缩、易裁剪的特性,帮助用户在需要一个适用的操作系统的时候,轻松地进行裁减,适应到需要的场景,不占用过多的资源。

“美” 不单止代码质量和代码风格,还有 RT-Thread 的使用和开发体验,以及增加了小程序、SMP 多核调度、PSA 安全支持等多项实用的新功能,使得 RT-Thread 系统能实现灵活极简的应用开发,能扩展至众多高性能、高安全的应用领域。

“物联网” 则体现在 RT-Thread 针对物联网场景提供的众多组件和软件包,比如 AT组件、WiFi、蓝牙、LoRa、Sensor、AI 等等。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/452710.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[chapter27][PyTorch][Overfitting under fitting]

前言: 机器学习模型性能度量标准之一: 泛化能力 泛化能力强的模型才是好的模型,在评价泛化能力 时候,我们经常遇到过拟合和欠拟合问题 目录: 1: Overfitting 2: underfitting 一 Overfitting refers …

Revit中如何制作一个台阶?

简易台阶制作,比绘制轴线复杂些,运用到的快捷键也比较多,因此需要多多操作,接下来我们就开始吧。 1、开始我们的第一步,此处我们首先新建一个族而不是项目。然后点击公制常规模型。 2、进入族后,我们可以看…

大孔树脂型号,A-722,ADS500,ADS600,ADS750,ADS800

一、产品介绍 基于吸附功能的聚苯乙烯特种树脂 Tulsimer ADS-600 是一款没有离子官能基的,由交联聚苯乙烯合成的功能强大的吸附型树脂。 Tulsimer ADS-600 主要应用于水溶液中吸附酚及其化合物,氯代烃等含氯物质,表面活性剂&#xff0…

苦中作乐 ---竞赛刷题41-50(15-20)

(一)目录 L1-043 阅览室 L1-044 稳赢 L1-046 整除光棍 L1-048 矩阵A乘以B L1-049 天梯赛座位分配 L1-050 倒数第N个字符串 (二)题目 L1-043 阅览室 天梯图书阅览室请你编写一个简单的图书借阅统计程序。当读者借书时&…

MES管理系统助力数字化转型,实现智能化制造

MES管理系统不仅可以优化制造流程,还可以整合企业资源,从而提高企业效益。MES管理系统具有数据实时采集、数据分析与决策支持等功能,有利于企业管理层及时掌握生产运营情况,进行战略决策。 对于工厂,MES管理系统…

2023 IT市场权威榜单|美创数据库防火墙斩获“新一代信息技术创新产品”

4月20日,由赛迪顾问主办的“2023 IT市场权威榜单”评选结果正式发布,美创数据库防火墙斩获新一代信息技术创新产品! 美创数据库防火墙是一款抵御并消除由于应用程序业务逻辑漏洞或者缺陷所导致的数据库安全问题的专业级数据库安全产品&#x…

【SVN】windows SVN安装使用教程(服务器4.3.4版本/客户端1.11.0版本)

介绍 这里是小编成长之路的历程,也是小编的学习之路。希望和各位大佬们一起成长! 以下为小编最喜欢的两句话: 要有最朴素的生活和最遥远的梦想,即使明天天寒地冻,山高水远,路远马亡。 一个人为什么要努力&a…

什么是矩阵式项目管理?

矩阵式项目管理组织,是结构形式呈矩阵状的组织,项目管理人员由企业有关职能部门派出并进行业务指导,受项目经理的直接领导。对于任何从事多个技能要求相似或重叠的项目的企业来说,这是一个理想的策略。 矩阵组织如何运作&#xf…

Windows下版本控制器(SVN) - 1、开发中的实际问题+2、版本控制简介

文章目录 基础知识-Windows下版本控制器(SVN)1、开发中的实际问题2、版本控制简介2.1 版本控制[Revision control]2.2 Subversion2.3 Subversion 的优良特性2.4 SVN 的工作原理:2.5 SVN 基本操作 基础知识-Windows下版本控制器(SVN) 1、开发中的实际问题 小明负责…

虚拟机配置工作环境

一、安装cmake apt-get install cmake 二、配置JAVA环境 1、将这两个文件放入虚拟机文件系统中,拖进去即可 2、执行安装命令./ 3、拉代码svn rootmlw-virtual-machine:~/svnCode# svn --username wangmiaolin co https://10.200.20.20/svn/TIASDev/Devsrc/Branch…

docker容器:Docker-Compose

目录 一、Docker-Compose 1、Docker-Compose使用场景 2、Docker-Compose简介 3、Docker-Compose安装部署 4、YML文件编写注意事项 5、Compose配置常用字段 6、 Docker Compose 常用命令 7、Docker Compose 文件结构 8、docker Compose撰写nginx 镜像 9、docker Compos…

了解 WhatsApp 和 WhatsApp Business 之间的区别

实时讯息 app 是所有支援管道中客户满意度最高的一种,且其使用率已大幅攀升。事实上,根据我们的 2021 年客户体验趋势报告,在 2020 年,光是 WhatsApp 的工单量就增加了 101%。 客户想要使用他们惯常与亲友连络用的管道和企业互动…

stm32在SDIO模式下SD写入错误的问题

1、问题描述 使用FAT32 f_write 多次执行写操作时,会报FR_DISK_ERR错误,而且是刚开始写不报错,写几次后会一直报错。 设断点跟踪到HAL_SD_WriteBlocks中,在调用SDMMC_CmdWriteMultiBlock时,会报SDMMC_ERROR_TX_UNDERR…

016:Mapbox GL加载geojson数据,显示line,自定义颜色、宽度等

第016个 点击查看专栏目录 本示例的目的是介绍演示如何在vue+mapbox中加载geojson数据,显示线条。paint中可以设置的参数:line-blur,line-cap,line-color,line-dasharray,line-gap-width,line-gradient,line-join,line-miter-limit,line-offset,line-opacity,line-…

缓存空间优化实践

导读 缓存 Redis,是我们最常用的服务,其适用场景广泛,被大量应用到各业务场景中。也正因如此,缓存成为了重要的硬件成本来源,我们有必要从空间上做一些优化,降低成本的同时也会提高性能。 下面以我们的案…

【MySQL】数据库完整性和安全性

目录 一、完整性 1.概念 2.sql语言支持的两种约束 2.1静态约束 撤销追加约束 断言 2.3动态约束 触发器 二、安全性 用DBMS对数据库实现的两个特性 一、完整性 1.概念 指dbms保证的db的一种特性,在任何情况下的正确性、有效性、一致性 原理图 广义完整性&…

深度学习第J7周:ResNeXt-50算法思考

目录 一、问题 二、思考分析 🍨 本文为[🔗365天深度学习训练营]内部限免文章(版权归 *K同学啊* 所有) 🍖 作者:[K同学啊] 查看j6周代码,思考解决问题。 一、问题 📌你需要解决的…

自然语言处理实战项目5-文本数据处理输入模型操作,以命名实体识别为例,打通NLP模型训练从0到1

大家好,我是微学AI,今天给大家带来自然语言处理实战项目5-文本数据处理输入模型操作,以命名实体识别为例。今天我给出的案例是命名实体识别,假设我们有一个命名实体识别任务,需要从文本中识别人名、地点和组织等实体。…

快速找出满足所需比值的一对电阻值 - Python 函数实现

常用的5% 和1% 精度电阻的阻值满足E24 数系,基数只能在这个数系里取,再乘上10 的n 次幂。E24 数系如下图: 之前我都是人肉一个一个试的,凭运气挑,终于忍不住想整个一劳永逸的小工具。 代码 对于给定的比值&#xff0…

【计算机是怎么跑起来的】基础:计算机三大原则

【计算机是怎么跑起来的】基础:计算机三大原则 计算机的三个根本性基础1.计算机是执行输入,运算,输出的机器输入,运算,输出 2. 软件是指令和数据的集合指令数据 3. 计算机的处理方式有时与人们的思维习惯不同对计算机来…