当前位置: 首页 > news >正文

网站建设师要求三大主流app开发平台

网站建设师要求,三大主流app开发平台,如何推广自己的公司官网,重庆活动轨迹公布1. RT-Thread 简介 1.1 RT-Thread 是什么 据不完全统计,世界有成千上万个 RTOS(Real-time operating system,实时操作系统),RT-Thread 就是其中一个优秀的作品。 RT-Thread 内核的第一个版本是熊谱翔先生在 2006 年…

 1. RT-Thread 简介

1.1 RT-Thread 是什么

据不完全统计,世界有成千上万个 RTOS(Real-time operating system,实时操作系统),RT-Thread 就是其中一个优秀的作品。

RT-Thread 内核的第一个版本是熊谱翔先生在 2006 年年初发布的 0.1 版本。因为 RTOS 中的任务更类似于通用操作系统中的线程,并且这个系统支持基于优先级的抢占式任务调度算法,调度器的时间复杂度是 O(1),所以把它命名为 RT-Thread,即实时线程。

1.2 RT-Thread 的作用

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

1.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 等等。以及针对安全和低功耗的优化,还有以 JS 为开发方式的柿饼 UI,都使其非常适用于 IoT 领域。

2. RT-Thread 版本

RT-Thread 针对不同应用场景,目前提供了三个主版本,分别是 RT-Thread 标准版、RT-Thread Nano 和 RT-Thread Smart。

2.1 RT-Thread 标准版

最常用应该是 RT-Thread 标准版(也称为 RT-Thread 全功能版本),它由内核层、组件和服务层、IoT 框架层、文件系统、图形库、设备框架等组成。包含完整的中间件组件,具备低功耗、安全、通信协议支持和云端连接能力,是一个完整的 IoT OS。

2.2 RT-Thread Nano

RT-Thread Nano 是一个极简的硬实时内核,其内存资源占用极小,功能包括任务管理、软件定时器、信号量、邮箱和实时调度等相对完整的实时操作系统特性。对于系统资源紧张或是项目功能较为简单的,则可以选择基于 RT-Thread Nano 进行开发。比如家电、消费、医疗、工控领域的 32 位入门级 MCU。

2.3 RT-Thread Smart

RT-Thread Smart 是一款高性能混合微内核操作系统。其定位在于填补传统 RTOS 和大型操作系统 Linux 之间的空白,在实时性、成本、安全性、启动速度等方面取得最佳的平衡。适用于带 MMU 的中高端应用的芯片,例如 ARM Cortex-A 系列芯片、MIPS 芯片、带 MMU 的 RISC-V 芯片等。广泛应用于安防、车载、军工、消费电子等领域。

因此我们使用的是RT-Thread Nano版本

开发环境

Supported IDE and Compiler

The main IDE/compilers supported by RT-Thread are:

  • RT-Thread Studio IDE
  • MDK KEIL
  • IAR
  • GCC

我们使用MDK KEIL进行开发,其他环境的开发比较复杂

RT-Thread特点 

 

 RT-Thread Nano简介

RT-Thread Nano 是一个极简版的硬实时内核,它是由 C 语言开发,采用面向对象的编程思维,具有良好的代码风格,是一款可裁剪的、抢占式实时多任务的 RTOS。其内存资源占用极小,功能包括任务处理、软件定时器、信号量、邮箱和实时调度等相对完整的实时操作系统特性。适用于家电、消费电子、医疗设备、工控等领域大量使用的 32 位 ARM 入门级 MCU 的场合。

下图是 RT-Thread Nano 的软件框图,包含支持的 CPU 架构与内核源码,还有可拆卸的 FinSH 组件:

支持架构:ARM:Cortex M0/ M3/ M4/ M7 等、RISC-V 及其他。

功能:线程管理、线程间同步与通信、时钟管理、中断管理、内存管理。

Nano 的特点

简单

1、下载简单

RT-Thread Nano 以软件包的方式集成在 Keil MDK 与 CubeMX 中,可以直接在软件中下载 Nano 软件包获取源码,获取方式详见 基于 Keil MDK 移植 RT-Thread Nano 与 基于 CubeMX 移植 RT-Thread Nano 。

同时也提供 下载 Nano 源码压缩包 的途径,方便在其他开发环境移植 RT-Thread Nano,如 基于 IAR 移植 RT-Thread Nano。

2、代码简单

与 RT-Thread 完整版不同的是,Nano 不含 Scons 构建系统,不需要 Kconfig 以及 Env 配置工具,也去除了完整版特有的 device 框架和组件,仅是一个纯净的内核。

3、移植简单

由于 Nano 的极简特性,使 Nano 的移植过程变得极为简单。添加 Nano 源码到工程,就已完成 90% 的移植工作。

在 Keil MDK 与 Cube MX 中还提供了 Nano 的软件包,可以一键下载加入到工程。另外,在 RT-Thread Studio 中可以基于 Nano 创建工程直接使用。以下是使用不同开发环境时,可以选择移植或使用 Nano 的方法:

  • 在 RT-Thread Studio 上使用 RT-Thread Nano
  • 基于 KEIL MDK 移植 RT-Thread Nano
  • 基于 CubeMX 移植 RT-Thread Nano
  • 基于 IAR 移植 RT-Thread Nano
  • 移植 RT-Thread Nano 到 RISC-V

4、使用简单

RT-Thread Nano 在使用上也非常简单,带给开发者友好的开发体验。

  • 易裁剪:Nano 的配置文件为 rtconfig.h,该文件中列出了内核中的所有宏定义,有些默认没有打开,如需使用,打开即可。具体的配置可见 Nano 版块的 RT-Thread Nano 配置 教程。
  • 易添加 FinSH 组件:FinSH 组件 可以很方便的在 Nano 上进行移植,而不再依赖 device 框架,只需要对接两个必要的函数即可完成 FinSH 移植。
  • 自选驱动库:可以使用厂商提供的固件驱动库,如 ST 的 STD 库、HAL 库、LL 库等,可以自行选择。
  • 完善的文档:包含 内核基础、线程管理 (例程)、时钟管理 (例程)、线程间同步 (例程)、线程间通信 (例程)、内存管理 (例程)、中断管理,以及 Nano 版块的移植教程。

小巧

资源占用小:对 RAM 与 ROM 的开销非常小,在支持 semaphore 和 mailbox 特性,并运行两个线程 (main 线程 + idle 线程) 情况下,ROM 和 RAM 依然保持着极小的尺寸,RAM 占用约 1K 左右,ROM 占用 4K 左右。

Nano 资源占用情况举例:在运行两个线程 (main 线程 + idle 线程) 情况下,ROM 和 RAM 依然保持着极小的尺寸。以下是基于 Cortex M3 的 MDK 工程编译结果(优化等级 3)。

    Total RO  Size (Code + RO Data)                 4000 (   3.91kB)Total RW  Size (RW Data + ZI Data)              1168 (   1.14kB)Total ROM Size (Code + RO Data + RW Data)       4092 (   4.00kB)

获取源码并且移植

正点原子nanoSTM32F103 (rt-thread.org)

使用 CubeMX 移植 (rt-thread.org)

使用 MDK 移植 (rt-thread.org)

rt-thread 源码的目录文件说明

rt-thread 目录

下图是打开 rt-thread 源码的目录,下表是该目录的简单说明。

目录名描述
bspBoard support package,RT-Thread 板级支持包
(IAR/MDK 工程在 BSP 目录下的具体的 BSP 中)
componentsRT-Thread 的各个组件目录
documentation一些说明文件,如代码风格说明
includeRT-Thread 内核的头文件
libcpu各类芯片的移植代码,此处包含了 STM32 的移植文件
srcRT-Thread 内核的源文件
toolsRT-Thread 命令构建工具的脚本文件

 

BSP 目录

打开 BSP 目录,里面包含 RT-Thread 已经支持的所有 bsp

打开一个 bsp

如打开bsp stm32f407-atk-explorer,下表是该目录的简单说明。

目录名描述
applicationsRT-Thread 应用程序
board与开发板相关的配置文件
project.eww
project.uvproj
project.uvprojx
iar 的工程文件
keil4 工程文件
keil5 工程文件

 出现问题

单独把该文件拿出来编译,会出现很多文件找不到的情况,因此我们需要提取一些文件出来,从keil软件里的路径得知重要文件

 

 

http://www.yayakq.cn/news/440821/

相关文章:

  • 做网站软件下载手机版公司英文网站多少钱
  • 深圳优定软件网站建设文化传媒网站php源码
  • 湖南建设长沙网站建设价格网站改版建设征求意见书
  • 艾辰做网站廊坊网站快照优化公司
  • 杭州建设工程交易中心网站一个空间两个网站
  • icp备案后要建网站吗中国建设银行网站保定五四路
  • 做问卷调查的网站有哪些内容三杰网站建设
  • 上海网站关键排名深圳航空官网机票预订
  • 业务网站制作制作人
  • 帝国cms能建设视频网站吗房地产项目营销策划方案
  • 青岛网站搜索排名免费网站建设推广
  • 公司做网站文案怎么写淘宝网站建设好评
  • 跟建设通一样的网站网页设计师资格证培训班
  • 中山微信网站wordpress文件缺失
  • 品牌网站解决方案齐河网站建设电话
  • 外贸seo网站搭建ico项目网站建设
  • 做直播网站要多少钱360应用市场
  • 郴州网站建设较好的公司建立个人网站用虚拟主机
  • 做网站赚钱还是做app赚钱本地wordpress搭建
  • 网站建设的描述买链接官网
  • 杭州建设网站公司哪家好metro风格网站模板
  • 车机油哪个网站做的好织梦收费
  • 如何做网站流量统计哪里创建免费个人网站
  • 撰写网站策划书博罗东莞网站建设
  • 做网站 广告费 步骤鸿蒙开发语言
  • 淘宝导购网站建设域名怎么做网站
  • 英文学习网站网页个人介绍制作
  • 哪个网站可以做电视背景墙林芝seo
  • 济南网站建设山东聚搜网好评泉州做网站优化哪家好
  • 丽水哪里有做网站的公司4000-262-工业设计展会2023