首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

RT-Thread笔记】RT-Thread启动过程

最近在学习RT-Thread,原子的某例程的的主函数如下(这是在keil5下的截图): ? 这是主函数中的全部代码,主要是创建一个led线程并启动。...这就涉及到RT-Thread的启动过程。 我们可以借助jlink仿真器进行硬件单步调试就可以知道程序的执行流程了。 首先,进入调试界面,并点击复位按钮光标就可以跳到程序开始运行的地方。如: ?...在《RT-Thread内核实现与应用开发实战指南》这本书中有解释到: RTThread 使用编译器(这里仅讲解 KEIL, IAR 或者 GCC 稍微有点区别,但是原理是一样的)自带的$Sub$$和$...简单来说,$Sub$$和$Super$$具有补丁功能,可以给一些函数打上补丁,如RT-Thread的内核文件component.c中就给我们的用户主函数main打上了”补丁“。...以上就是关于RT-Thread启动过程的一点总结,如有错误欢迎指出!谢谢

1.2K20

rt-thread系统裁剪指南

下面我们来从原理层面和实现层面上讲一下rt-thread裁剪相关的知识。...02 rt-thread具有高度的可裁剪性 RT-Thread 主要采用 C 语言编写,浅显易懂,方便移植。...得益于 RT-Thread 的高度可裁剪性,通过对完整版的裁剪,可以十分便捷的小资源 平台上使用上 RT-Thread。可以通过 env 工具十分方便地进行裁剪,env 工具使用方法如下图所示: ?...对于RT-Thread中,比较关心的是ROM资源以及RAM资源,所以在设计之初,首先评估资源是否合理去跑一个rtos。...06 业务逻辑裁剪 在使用rt-thread操作系统时,往往都是利用rt-thread实现自己的业务逻辑,所以我们在编写自己的代码的时候,也需要充分的理解rt-thread的设计思想。

1.3K20
您找到你想要的搜索结果了吗?
是的
没有找到

RT-Thread笔记】内核基础

这里我选择国产实时操作系统RT-Thread进行学习,因为现在很火呀。...之前已经有简单地过了一遍RT-Thread,奈何学过地知识一旦不用,就会很容易地忘掉,所以应当多做一些学习笔记~ RT-Thread简介 RT-Thread,全称是 Real Time-Thread,顾名思义...RT-Thread提供了一些网络组件及软件包,我们可以运用这些软件包很方便地与云端进行通讯。因此,RT-Thread是一个物联网操作系统(IoT OS)。...RT-Thread 内核基础 RT-Thread内核架构如下: ? 其中,内核库kservice.c是为了保证内核能够独立运行的一套小型的类似 C 库的函数实现子集。...时钟管理 RT-Thread 的时钟管理以时钟节拍为基础,时钟节拍是 RT-Thread 操作系统中最小的时钟单位。

86531

【玩转 RT-ThreadRT-Thread Studio —— 按键控制电机正反转、蜂鸣器

文章目录 一、初识RT-Thread 1.简介 2.前景 3.软件生态 二、实验准备 三、实验需求 四、操作流程 1.新建RT-Thread工程 2.RT-Thread Studio界面介绍 3.代码编写...4.烧录 5.串口监视 五、代码演示 六、原理讲解 一、初识RT-Thread 做世界级的 OS,让万物互联,信息畅通无阻。...1.简介 RT-Thread 是一个集实时操作系统(RTOS)内核、中间件组件和开发者社区于一体的技术平台,由熊谱翔先生带领并集合开源社区力量开发而成,RT-Thread 也是一个组件完整丰富、高度可伸缩...2.前景 RT-Thread 具备一个 IoT OS 平台所需的所有关键组件,例如GUI、网络协议栈、安全传输、低功耗组件等等。...二、实验准备 编程工具:RT-Thread studio 开发板:潘多拉STM32L475 三、实验需求 1.使用按键控制蜂鸣器和电机,当按下KEY0 后电机左转,当按下KEY1 后电机 右转,当按下

96520

RT-Thread进阶之网络框架

统一管理网卡调试命令(ping、ifconfig、netstat、dns 等命令); 网卡概念: 网卡概念介绍之前先了解协议栈相关概念,协议栈是指网络中各层协议的总和,每种协议栈反映了不同的网络数据交互方式,RT-Thread...SAL 组件提供对不同协议栈或网络实现接口的抽象和统一,组件在 socket 创建时通过判断传入的协议簇(domain)类型来判断使用的协议栈或网络功能,完成 RT-Thread 系统中多协议的接入与使用...3.1 AT 组件简介 AT 组件是基于 RT-Thread 系统的 AT Server 和 AT Client 的实现,组件完成 AT 命令的发送、命令格式及参数判断、命令的响应、响应数据的接收、响应数据的解析...4.2.1 添加lwip协议栈软件包 在 RT-Thread Setting 文件中借助图形化配置工具打开软件 lwip 的组件,保存更新。 ?...4.2.3 网络设备层和LAN8720驱动解析 4.2.3.1 网络设备层解析 RT-Thread 的 lwIP 移植在原版的基础上,添加了网络设备层以替换原来的驱动层。

1.6K40

RT-Thread PIN设备学习笔记

前面我们学习了RTT的UART设备的使用,不得不说真的超级给力呀,不到100行秒杀任何MCU最原始的串口编程模式,不得不感叹RTT发展如此强大,文章链接: RT-Thread UART设备驱动框架初体验...RT-Thread PIN设备!学习一个新东西,我个人主张带着需求去学习,而不是漫无目的的去学,有了需求驱动,并且是一个努力付出就可以拥有的成果,那么这还不容易嘛!...我们将基于RT-Thread Studio来构建。 2、开始实践 2.1、RT-Thread Studio工程创建与基础配置 (1)创建RT-Thread项目 ? (2)配置项目 ?...RT-Thread选择v4.0.2,这个版本包含基本的组件,而选择nano的话则不包含。 厂商目前只支持ST,相信后面会支持更多。...-2.0 * * Change Logs: * Date Author Notes * 2019-09-09 RT-Thread first version

1.7K30

rt-thread的内存管理分析

rt-thread的内存管理分析 1.概述 2.静态内存与动态内存 3.小内存管理 4.slab内存管理 4.1 rt-thread上slab基本介绍 4.2 rt-thread上slab内存的管理 5...本文主要从RT-Thread的内存管理策略的角度出发,梳理一下目前RT-Thread系统中的内存管理,同时从实际应用的角度出发,选择合适的方案进行内存管理。...对于RT-Thread的内存管理方式,主要从小内存管理、slab、memheap以及内存池这四种内存管理策略上去分析对比,从而选择最佳的内存管理策略。...3.小内存管理 rt-thread的小内存管理算法是一种比较简单的内存分配管理算法。应用的场景在内存在1MB以下使用比较合适。...4.slab内存管理 4.1 rt-thread上slab基本介绍 RT-Thread 的 slab 分配器是在 DragonFly BSD 创始人 Matthew Dillon 实现的 slab 分配器基础上

1.4K40

(二)RT-Thread入门——线程管理

线程管理特点         RT-Thread 线程管理的主要功能是对线程进行管理和调度,系统中总共存在两类线程,分别是系统线程和用户线程,系统线程是由 RT-Thread 内核创建的线程,用户线程是由应用程序创建的线程...---- 线程属性 线程栈         RT-Thread 线程具有独立的栈,当进行线程切换时,会将当前线程的上下文存在栈中,当线程要恢复运行时,再从栈中读取上下文信息,进行恢复。...此状态在 RT-Thread 中的宏定义为 RT_THREAD_READY 这个状态线程是参与调度的,只不过没有占用CPU。 运行状态 线程当前正在运行。...此状态在 RT-Thread 中的宏定义为 RT_THREAD_SUSPEND 关闭状态 当线程运行结束时将处于关闭状态。关闭状态的线程不参与线程的调度。...此状态在 RT-Thread 中的宏定义为 RT_THREAD_CLOSE 线程优先级         RT-Thread 最大支持 256 个线程优先级 (0~255),数值越小的优先级越高,0

52320

RT-Thread Nano如何适配pin设备API,并在RT-Thread Nano使用软件包

本文介绍了如何在 RT-Thread Studio 上使用 RT-Thread Nano,并基于BearPI-IOT STM32L431RCT6的基础工程进行讲解如何使用PIN设备接口及相关软件包使用。...RT-Thread Nano:仅仅只是一个 RTOS 内核。没有任何组件。 Nano 是无法直接使用 RT-Thread 丰富软件包功能。...准备工作 使用 RT-Thread Studio 建立一个 STM32L431RCT6 的 RT-Thread Nano 基础工程。...基础工程创建可参考:在 RT-Thread Studio 上使用 RT-Thread Nano PIN 设备接口 在 RT-Thread 标准版中,PIN设备设备提供了一套设备管理接口来访问 GPIO,...通过这样的方式,学习完 RT-THREAD Nano 在转移到 RT-THREAD 标准版的学习,更加简单方便。

56010

熊谱翔:2019,RT-Thread加油

回顾2018 2018年,对于RT-Thread来说,可以认为是重树形象的一年。 ? 以前RT-Thread给大家停留的一个印象是:文档少,书籍少,上手比较难。...的认可,给予了非常得力和及时的支持,撰写出版了《RT-Thread内核实现与应用开发实战指南——基于STM32》;RT-Thread官方团队也在加班加点撰写更为系统的《实时嵌入式系统:RT-Thread...相信未来大家在STM32上使用RT-Thread将变得更容易、轻松。 ? 技术上,当然RT-Thread也不落下,v4.x加入了多核SMP调度,以及64位处理器支持。...真正的IoT OS 2018年做了一系列活动,包括RT-Thread入门,线上学习营,RT-Thread开发者大会,RT-Thread入门workshop。...一起见证RT-Thread,2019 加油!

85320

RT-Thread进阶之文件系统

2 DFS 简介 DFS( Device File System)是一种抽象的文件机制,RT-Thread中对文件系统的相关操作实际上都是通过操作DFS实现,也就是说DFS是对各种文件系统的抽象。...DFS使的其他部分无须关心不同文件系统之间的差异,使得RT-Thread可以支持多种类型的文件系统。...3 DFS 框架 RT-Thread DFS 组件的主要功能特点有: 为应用程序提供统一的 POSIX 文件和目录操作接口:read、write、poll/select 等。...在 RT-Thread 中,挂载是指将一个存储设备挂接到一个已存在的路径上。我们要访问存储设备中的文件,必须将文件所在的分区挂载到一个已存在的路径上,然后通过这个路径来访问存储设备。...RT-Thread的RamFS设计之初未考虑支持文件夹,所以不能使用mkdir。

2.1K10

RT-Thread 中的多线程

RT-Thread 中的多线程 博主介绍 RT-Thread 线程管理和调度 系统线程 空闲线程 主线程 线程管理 RT-Thread 自动初始化机制 在新线程控制LED RT-Thread 线程管理和调度...RT-Thread 线程管理的主要功能是对线程进行管理和调度,系统中总共存在两类线程,分别是系统线程和用户线程,系统线程是由 RT-Thread 内核创建的线程,用户线程是由应用程序创建的线程,这两类线程都会从内核对象容器中分配线程对象...RT-Thread的线程调度器是抢占式的,主要的工作就是从就绪线程列表中查找最高优先级线程,保证最高优先级的线程能够被运行,最高优先级的任务一旦就绪,总能得到CPU的使用权。...系统线程 系统线程是指由系统创建的线程,用户线程是由用户程序调用线程管理接口创建的线程,在 RT-Thread 内核中的系统线程有空闲线程和主线程。...另外,空闲线程在 RT-Thread 也有着它的特殊用途: 若某线程运行完毕,系统将自动删除线程:自动执行 rt_thread_exit() 函数,先将该线程从系统就绪队列中删除,再将该线程的状态更改为关闭状态

54620

RT-Thread RTC设备学习笔记

前面我们学习了RTT的I2C总线设备的使用,文章链接: RT-Thread I2C总线设备学习笔记 这节学习RTT里非常简单的设备--RTC设备 1、RTC设备简介 RTC是什么呢?...相信学习嵌入式的伙伴都熟悉,以下介绍引用自RT-Thread文档中心-RTC设备 RTC(Real-Time Clock)实时时钟可以提供精确的实时时间,它可以用于产生年、月、日、时、分、秒等信息。...RT-Thread 的 RTC设备为操作系统的时间系统提供了基础服务。面对越来越多的 IoT 场景,RTC 已经成为产品的标配,甚至在诸如 SSL 的安全传输过程中,RTC 已经成为不可或缺的部分。...2、RTC设备操作接口 RT-Thread为RTC设备提供了三个用户层次的应用操作接口,分别是设置日期、设置时间和获取当前时间。...在RT-Thread的设备中,有且仅有一个RTC设备,设备名称为"rtc"。

3K10
领券