RT-Thread

2024/4/12 12:32:20

RT-Thread BSP qemu-virt64-aarch64 的编译环境搭建

前言 最近需要使用 RT-Thread smart 开发调试一些软件功能,由于软件功能平台无关,使用实际硬件操作,会耗费较多的时间在程序烧写环节。 打算使用 BSP qemu-virt64-aarch64 搭建一个 RT-Thread smart 的开发调试环境,可以开发验证…

利用RT-thread 在STM32F407在W25Q128上实现虚拟文件系统

1:环境 STM32F407板子上有一个W25Q128的flash芯片。通过SPI连接在一起 W25Q128 (128M-bit),被组织为65536个可编程的页,每页256bytes。擦除方式分为16页一组(即一个扇区4kbytes),128页一组(即8个扇区32kby…

STM32F407利用RT-thread上移植LWIP

目录1:环境2:配置ETH3:配置ENV4:连接测试5. 建立tcp的客户端,与PC测试参考:网络协议栈驱动移植 1:环境 芯片:STM32F407 开发板:正点原子探索版 PHY:LAN8720…

RT-Thread BSP qemu-virt64-aarch64 挂载 ext4文件系统

前言 经常简单的配置,在 RT-Thread BSP qemu-virt64-aarch64 上可以支持 fat 文件系统,但是如何支持 ext4 文件系统呢? 经过验证,也是配置使能 ext4 就可以支持 ext4 软件包 当前 RT-Thread 通过 https://github.com/RT-Thread…

RT-thread下在nand flash移植yaffs文件系统

1.,menuconfig中选中yaffs 2:版本这里就固定了,不然每次让组件包更新的时候,有可能导致这里更新,而产生一些未知的错误现象 然后输入命令pkgs --update ,来进行更新下载软件包在。 3:需要的文件&#xff…

RT-ThreadBearPi 开发笔记 -- 小熊派基于RT-Thread使用ESP8266进行网络连接

小熊派基于RT-Thread使用ESP8266进行网络连接 物联网的概念和应用场景,最关键最必不可少的一个环节,就是联网。可以说,如果没有可靠的网络连接功能,那这个设备还不算是一个合格的物联网设备。 设备没有接入网络,就像…

RT-Thread TCP/UDP 客户端程序(RT-Thread SAL TCP UDP client)

最近发现不止一个人再要基于 RT-Thread 的 TCP 和 UDP 示例代码,包括 SAL 方式的。 这里给出一个我自己写的示例程序吧,希望可以帮到需要的人。 代码一键下载地址,点我。 TCP 客户端 /** Copyright (c) 2006-2019, RT-Thread Development…

RT-Thread 内存管理(学习一)

内存管理 在计算系统中,通常存储空间可以分为两种:内部存储空间和外部存储空间。 内部存储空间通常访问速度比较快,能够按照变量地址随机访问,也就是我们通常所说的RAM(随机存储器),可以把它理…

不同编译器下 errno 与 RT-Thread 的对接

支持的编译器 RT-Thread 支持的编译器有 newlib/minilibc/dlib/armlibc 的支持。 在开启了 RT_USING_LIBC 后,GCC 编译使用 newlib未开启 RT_USING_LIBC 时,GCC 编译使用 minilibcdlib 是 RT-Thread 针对 IAR 编译器的移植适配(使用标准库接…

记录 RT-Thread netdev 结构体与 lwip 结构体不匹配 bug 的调试过程

本文主要记录在使用 RT-Thread Netdev 组件的时候遇到的一个结构体不匹配的 bug。 背景 本次 bug 只要涉及 4 个文件: netdev.h:定义了 struct netdev 数据结构netdev.c:netdev 源码实现,这里主要涉及 netdev_low_level_set_li…

RT-Thread下移植添加nand-flash驱动

1:版本 使用的版本上v3.1.4中移除了mtd的相关代码,如果需要添加就从v3.1.3中获取。 由于我要移植yaffs所以需要这个框架 2:注册函数 //mtd.c /** Register MTD driver** parts partion description* np number of partitions* return number of unregi…

RT-ThreadBearPi 开发笔记 -- 为小熊派开发板制作 RT-Thread BSP 包

为小熊派开发板制作 RT-Thread BSP 包 前段时间,微联智控工作室向南京厚德物联网有限公司申请了一款物联网开发平台---小熊派物联网开发套件(BearPi-IoT)。关于小熊派IoT开发平台的具体介绍,可以查看以下链接: 小熊派…

RT-Thread学习笔记 --(7)RT-Thread中断管理学习总结

RT-Thread中断管理学习总结 前面几篇文章总结了RT-Thread多线程相关内容的学习过程,包括多线程的使用,多线程的同步,多线程的通信,关于多线程相关的学习总结,可以查看以下链接: RT-Thread学习笔记 --&…

RT-Thread 原子操作

原子操作简介 原子操作(Atomic operation)是指一种不可分割的操作,要么完全执行成功,要么完全不执行。 原子操作的执行过程中不允许有任何中断,如果出现了中断,那么操作的结果就无法保证。 原子操作通常…

rt-thread------任务调度

rt-thread------任务调度 1. 线程初始化 在rt-thread中线程主要包括以下一些内容,线程控制块、线程栈、函数入口。 1.1线程创建函数 RTOS基本都包括两种线程方式:动态创建rt_thread_create()和静态创建rt_thread_init()。 因为有些系统设计时对安全…

支持RT-Thread最新版本的瑞萨RA2E1开发板终于要大展身手了

支持RT-Thread最新版本的瑞萨RA2E1开发板终于要大展身手了 熟悉RT-Thread和瑞萨MCU的朋友都知道,当前RT-Thread仓库的主线代码是不支持RA2E1这个BSP的。刚好,最近我在联合瑞萨推广一个叫《致敬未来的攻城狮计划》,使用的就是RA2E1开发板&…

PSoc62™开发板之i2c通信

实验目的 使用模拟i2c接口读取温湿度气压模块BME280数据 实验准备 PSoc62™开发板温湿度气压模块BME280公母头杜邦线 板载资源 本次实验是通过模拟i2c时序的方式来进行通信,理论上可以有非常多的方式配置i2c引脚,不像硬件i2c那样芯片出厂引脚已经固…

RT_Thread内核机制学习(一)

ARM架构及汇编 ARM芯片属于精简指令集计算机(RISC:Reduced Instruction Set Computer),它所使用的指令比较简单,有如下特点: 对内存只有读、写指令。对于数据的运算实在CPU内部实现。使用RISC指令的CPU复杂…

机器人AGV小车避障传感器测距

一、A22超声波传感器 该模块是基于机器人自动控制应用而设计的超声波避障传感器,针对目前市场上对于超声波传感器模组盲区大、测量角度大、响应时间长、安装适配性差等问题而着重设计。 具备了盲区小、测量角度小、响应时间短、过滤同频干扰、体积小、安装适配性高…

RT-Thread 中断管理学习(二)

中断的底半处理 RTT不对中断服务程序所需要的处理时间做任何假设、限制,但如图其它实时操作系统或非实时操作系统一样,用户需要保证所有的中断服务程序在尽可能短的时间内完成(中断服务程序在系统中相当于拥有最高的优先级,会抢占…

RT-Thread FAL组件

目录 1、FAL介绍2、使用FAL2.1 下载FAL软件包2.2 FAL移植2.2.1 定义flash设备2.2.2 定义flash设备表&分区表2.2.3 加入到mdk工程3、MSH测试1、FAL介绍 FAL(Flash Abstraction Layer) Flash抽象层,是对Flash及基于Flash的分区进行管理、操作的抽象层,对上层统一了Flash及分…

RT-Thread: 互斥量问题,互斥量锁死问题调试笔记

关键词:互斥量问题,互斥量锁死 1.rt thread 3.1.5 互斥量问题 rt_mutex_t step_data_mutex RT_NULL; /* 指向互斥量的指针 */ 1.调试环境: RTOS:rt thread 3.1.5 1.线程A优先级低,以20ms的周期循环执行。 2.线程B优…

RT-Thread在STM32硬件I2C的踩坑记录

RT-Thread在STM32硬件I2C的踩坑记录 0.前言一、软硬件I2C区别二、RT Thread中的I2C驱动三、尝试适配硬件I2C四、i2c-bit-ops操作函数替换五、Attention Please!六、总结 参考文章: 1.将硬件I2C巧妙地将“嫁接”到RTT原生的模拟I2C驱动框架 2.基于STM32F4平台的硬件I…

RT-Thread GD32F4xx 看门狗驱动

目录 1、WDT2、WDT驱动2.1 创建WDT设备2.2 实现WDT设备操作方法2.3 注册WDT设备2.4 添加配置3、应用测试1、WDT WDT(Watch Dog Timer , 看门狗定时器),看门狗本质上就是一个带定时器的硬件复位电路。它一般有一个输入和一个输出,其中输入的操作叫喂狗,输出一般连接着MCU的复…

一“码”当先,PR大征集!2023 和RT-Thread一起赋能开源!

活动地址:https://club.rt-thread.org/ask/article/3c7cf7345ca47a18.html 活动介绍 「一“码”当先,PR大征集!」是一项为了鼓励开发者积极参与开源软件开发维护的活动。 你可在Github RT-Thread( https://github.com/RT-Thread …

rt-thread------生成工程模板

系列文章目录 rt-thread 之 fal移植 文章目录系列文章目录前言一、下载ENV 和 RTT源码二、选择BSP生成模板step1 打包模板step2 修改工程模板三、添加软件包和组件step 1选择配置step 2下载软件包和组件step3 生成工程总结常见指令前言 menuconfig 图形化配置界面&#xff0c…

RT-Thread: STM32 SPI使用流程

1.添加驱动 ①点开设置界面 ②勾选看门 SPI 驱动 ③点击保存 ④查看添加的驱动文件 drv_spi.c 2.打开驱动头文件定义 ①打开配置文件 ②打开定义 3.打开需要开启的SPI总线 打开 drivers 目录下的 board.h 用SPI搜索,找到如下文字,打开对应的宏。 /*-…

RT-Thread:ADC 框架应用,通过 STM32CubeMX 配置 STM32 ADC驱动

关键词:ADC,RT-Thread ADC,STM32 ADC应用 说明:本笔记是记录如何开启 RT-Thread 框架的ADC功能,使用系统自带的ADC函数,并通过 STM32CubeMX 配置 STM32 ADC驱动 。 1. 打开board.h 文件,找到ADC 使用配置的流程&…

RT-Thread 瑞萨 智能家居网络开发:RA6M3 HMI Board 以太网+GUI技术实践

不用放大了, 我在包里找到张不小的…… 以太网HMI线下培训-环境准备 这是社群的文档:【腾讯文档】以太网线下培训(HMI-Board) https://docs.qq.com/doc/DY0FIWFVuTEpORlNn 先介绍周六的培训是啥,然后再介绍一下要准…

RT-Thread GD32F4xx 软件包agile_modbus

目录 1. agile_modbus2. RT-Thread中添加agile_modbus软件包2.1 menuconfig中添加agile_modbus2.2 agile_modbus 下载2.3 重新生成mdk5工程3. 应用测试3.1 配置使用的串口3.2 Modbus RTU Master3.2.1 Modbus RTU Master测试程序3.2.2 Modbus Master测试结果3.3 Modbus RTU Slav…

ART-Pi BT_WiFi 模块固件下载

源文件《UM5003-RT-Thread ART-Pi BT_WIFI 模块固件下载手册.md》 ART-Pi BT_WiFi 模块固件下载 ART-Pi 板卡在出厂时已经烧录过 BT_WiFi 固件,存储在外部 Flash。如果固件被不慎擦除,会导致 BT_WiFi 模组的功能无法正常使用,出现异常情况&…

RT-AK 之 STM32 插件 Linux 支持(无界面版)

文章目录1. 运行前的准备2. RT-AK 运行3. 编译3.1 安装 Scons 和 ncurses3.2 安装编译器3.3 设置指定编译器3.4 编译4. 下载固件5. 运行程序Author: lebhoryigamil.com Date: 2021/06/02 前言: RT-AK 地址:github RT-AK 之 STM32 插件快速上手地址&…

RT_Thread 调试笔记:串口打印、MSH控制台 相关

说明:记录日常使用 RT_Thread 开发时做的笔记。 持续更新中,欢迎收藏。 1.打印相关 1.打印宏定义,可以打印打印所在文件,函数,行数。 #define PRINT_TRACE() printf("-------%s:%s:%d------\r\n", __FIL…

NUCLEO-F411RE RT-Thread 体验 (1) - GCC环境 RT-Thread 的移植

NUCLEO-F411RE RT-Thread 体验 (1) - GCC环境 RT-Thread 的移植 1、准备工作 a、用stm32cubemx新建一个工程。 时钟配置 st-link提供8M的mco输出,所以配置hse 8m,sysclk最高100M,设置如下: 配置LED 连接pa5,设…

RT-Thread GD32F4xx I2C之硬件I2C驱动(eeprom)

目录 1、I2C的驱动框架1.1 I2C的驱动框架层介绍1.2 I2C的两种驱动方法1.3 I2C总线设备结构2、硬件I2C驱动开发2.1 实现操作方法rt_i2c_bus_device_ops2.1.1 I2C设备结构定义2.1.2 i2c设备定义2.1.3 GD32F4xx i2c eeprom write函数2.1.4 GD32F4xx i2c eeprom read函数2.1.5 rt_i…

RT-Thread:STM32 PHY 调试,使用软件包 WIZNET 驱动 W5500

说明: 1. 本文记录使用 RT-Thread 软件包 WIZNET驱动 W5500 的调试笔记。 2. 采用 RT-Thread Studio 工程 STM32F407VET6 芯片,W5500 PHY芯片,两者之间使用SPI接口链接 。 注意: 1.在按流程建立工程,和移植完 wizn…

编译运行rt-thread的qemu-riscv-virt64版本

背景 本文记录对国产实时操作系统rt-thread的编译运行,此版本运行于riscv的64位qemu模拟器 编译qemu的riscv环境 首先我们需要编译模拟器,以提供rt-thread运行环境,步骤如下所示: 1、下载解压qemu源码 rootrtlab-computer:/h…

RT-Thread | 对象容器与双链表

1024G 嵌入式资源大放送!包括但不限于C/C、单片机、Linux等。关注微信公众号【嵌入式大杂烩】,回复1024,即可免费获取! 前言 在我们嵌入式中,可能会有些人认为数据结构与算法相关知识没什么用,很少用得上。…

RT-Thread:SPI万能驱动 SFUD 驱动Flash W25Q64,通过 STM32CubeMX 配置 STM32 SPI 驱动

关键词:SFUD,FLASH,W25Q64,W25Q128,STM32F407 说明:RT-Thread 系统 使用 SPI万能驱动 SFUD 驱动 Flash W25Q64,通过 STM32CubeMX 配置 STM32 SPI 驱动。 提示:SFUD添加后的存储位置 1.打开RT-Thread Sett…

RTT(RT-Thread)ADC设备(RTT保姆级介绍)

目录 ADC设备 前言 ADC相关参数说明 访问ADC设备 配置ADC设备 ADC实例 硬件设计 软件设计 ADC设备 前言 ADC(Analog-to-Digital Converter) 指模数转换器。是指将连续变化的模拟信号转换为离散的数字信号的器件。 对于ADC的详细介绍和在STM32中的裸机应用可参考以下…

RT-Thread 快速上手(学习)

Keil模拟器STM32F103上手指南 一般嵌入式操作系统因为它的特殊性,往往和硬件平台密切相关连,具体的嵌入式操作系统往往只能在特定的硬件上运行。 对于刚接触RT-Thread操作系统的读者并不容易马上就获得一个和RT-Thread操作系统相配套的硬件模块&#x…

【线下培训】上海临港: RT-Thread × 瑞萨 工业监视器 RA6M3 HMI Board解决方案

注册RT-Thread官方论坛,即可第一时间获得最新消息!更有大量活动赚取积分,免费兑换开发板! 注册地址:https://www.rt-thread.org/account/user/register.html RT-Thread 与瑞萨将于10月14日在上海临港举行一场线下培训…

RT-Thread 内核移植

内核移植 内核移植就是将RTT内核在不同的芯片架构、不同的板卡上运行起来,能够具备线程管理和调度,内存管理,线程间同步等功能。 移植可分为CPU架构移植和BSP(Board support package,板级支持包)移植两部…

RT-thread 移植easyflash

1:配置menuconfig 2.配置说明 ENV: Environment variables: 是否使能环境变量功能 Auto update ENV to latest default when current ENV version number is changed.:是否启用环境变量自动更新功能。启动这个功能后,环境变量将…

RT_Thread内核机制学习(三)进程间通信

队列 队列里有多个消息块,每个消息块大小一致。 写: 有空间,成功。无空间:返回Err;等待一段时间。 队列里面会有两个链表:发送链表和接收链表 struct rt_messagequeue {struct rt_ipc_object parent; …

RT-Thread GD32F4xx 软件I2C驱动及at24cxx软件包

目录 1、i2c软件驱动1.1 驱动文件1.2 驱动配置修改2、at24cxx的软件包2.1 menuconfig添加软件包2.2 下载at24cxx软件包2.3 at24cxx的主要接口2.3.1 at24cxx_init()2.3.2 at24cxx_read()2.3.3 at24cxx_write()3、应用测试1、i2c软件驱动 从上一篇的《RT-Thread GD32F4xx I2C之硬…

步进电机S曲线驱动模块

一、电路 带有CAN及485接收,三个光耦接口,TMC2660电机驱动芯片,stm32f103的主控芯片 二、协议 一般来说,板子之间的通信协议格式通常为: 内容 帧头 长度 类型1 类型2 Data 校验 帧尾 字节数 1 1 1 1 N 2 1 帧头为0xB…

RT-Thread学习笔记 --(6)RT-Thread线程间通信学习总结

RT-Thread线程间通信学习总结 前两篇文章总结了RT-Thread多线程以及多线程同步的学习过程,关于前两篇学习总结,可以查看以下链接: RT-Thread学习笔记 --(4)RT-Thread多线程学习总结 RT-Thread学习笔记 --&#xff0…

RT-Thread学习笔记 --(4)RT-Thread多线程学习总结

RT-Thread多线程学习总结 多线程是实时操作系统里面最重要的知识点之一,要学习RTOS,多线程是必须(没错,是必须)要熟练掌握的内容,只有熟练掌握多线程的使用,才能在平时的项目工作里面用好实时操…

【分享】主流嵌入式操作系统(RTOS)有哪些?看看这14种

看到 21ic 公众号发布了一篇文章 主流嵌入式操作系统(RTOS)有哪些?看看这14种,收藏过来。 看到里面介绍了我在用的一个 RTOS 系统 RT-Thread。使用国内最有可能成为 Top 1 的 RTOS ,我很荣幸啊 ?。 除了上面文章总结…

RT-Thread: 串口操作、增加串口、串口函数

说明:本文记录RT-Thread添加串口的步骤和串口的使用。 1.新增串口 官方链接:https://www.rt-thread.org/document/site/rtthread-studio/drivers/uart/v4.0.2/rtthread-studio-uart-v4.0.2/ 新增串口只需要在 board.h 文件中定义相关串口的宏定…

BearPi Std 板从入门到放弃 - 先天神魂篇(7)(RT-Thread 定时器-软件定时器)

简介 RT-Thread 软件定时器的简单使用步骤 创建项目 参考 BearPi RT-Thread项目创建 定时器管理接口 定时器时钟节拍 定时器管理相关函数 定时器类型 #define RT_TIMER_FLAG_ONE_SHOT 0x0 //一次性计时器 #define RT_TIMER_FLAG_PERIODIC 0x2 // 周期性定时器 #…

RT-Thread SMP介绍与移植(学习)

RT-Thread SMP介绍与移植 SMP:对称多处理(Symmetrical Multi-Processing)简称SMP,是指在一个计算机上汇集了一组处理器(多CPU),各CPU之间共享内存子系统以及总线结构。 RT-Thread自4.0.0版本开…

RT-Thread Studio开发 新手入门

文章目录 前言一、RT-Thread Studio 与 STM32CubeMX 下载安装二、新建工程三、点亮LED灯四、按键中断五、串口通信六、OLED显示 前言 软件开发环境:RT-Thread Studio、STM32CubeMX 硬件:STM32F407ZGT6 一、RT-Thread Studio 与 STM32CubeMX 下载安装 …

RT-Thread UART

UART 简介 UART(Universal Asynchronous Receiver/Transmitter)通用异步收发传输器,UART 作为异步串口通信协议的一种,工作原理是将传输数据的每个字符一位接一位地传输。是在应用程序开发过程中使用频率最高的数据总线。 UART …

【ARMv8M Cortex-M33 系列 3.1 -- RT-Thread renesas/ra4m2-eco 移植编译篇 nosys.specs 介绍】

请阅读【嵌入式开发学习必备专栏 之Cortex-M33 专栏】 文章目录 问题背景nosys.specs 介绍nosys.specs 的作用使用举例 问题背景 在编译RT-Thread使用自己写的链接脚本时,使用 scons 进行编译时出现了下面问题: scons: Reading SConscript files ... s…

RT-Thread Env使用

Env用户手册 Env是RT-Thread推出的开发辅助工具,针对基于RT-Thread操作系统的项目工程,提供编译构建环境、图形化系统配置及软件包管理功能。 其内置的menuconfig提供了简单易用的配置裁剪工具,可对内核、组件和软件包进行自由裁剪&#xf…

机械臂运动控制,通讯的解包->运动控制->数据封包上报过程

一、协议 数据格式为小端模式,浮点数格式为IEEE754,需与上位机的PC端一致,如window系统,其它系统需要自行测试,用于传输16位、32位、float数据格式,避免只传输字节数据带来转换的繁琐及精度丢失。 二、下位…

rt-thread ------fal移植

系列文章目录 rt-thread 之 生成工程模板 文章目录系列文章目录前言一、fal是什么?二、移植1.片内flash fal移植step1:使能RT-Thread Components--->中的fal选项,如下图所示:step2:前两项是打开调试log输出和生成f…

开源一个基于的rt-thread系统的烟感采集系统

一、硬件 CPU:stm32f401 NBIOT模块:移远BC26 存储:W25Q128JVSIQTR 扩展:HC595输出,165输入 二、软件应用 FAL:分区 littlefs: 应用存储用的文件系统 EashFlash:日记存储、系统变量存储 kawaii_…

RT_Thread 调试笔记:时间相关,时钟管理函数,延时,定时器、 毫秒转换为时分秒 等

说明:记录日常使用 RT_Thread 开发时做的笔记。 持续更新中,欢迎收藏。 1. 延时函数 1. us延时函数 rt_hw_us_delay(rt_uint32_t us);//输如数据是us rt_hw_us_delay(200);//输入数据是us 2. ms延时函数 rt_thread_mdelay(1000);//输入数据是ms 2…

RT-Thread | PIN设备中断实验

1024G 嵌入式资源大放送!包括但不限于C/C、单片机、Linux等。关注微信公众号【嵌入式大杂烩】,回复1024,即可免费获取! 通用I/O的特性 通用I/O口主要特性如下: 1、输入输出模式可控制。 (1)输出…

RT-Thread 线程管理(学习二)

线程相关操作 线程相关的操作包括:创建/初始化、启动、运行、删除/脱离。 动态线程与静态线程的区别:动态线程是系统自动从动态内存堆上分配栈空间与线程句柄(初始化heap之后才能使用create创建动态线程),静态线程是…

RT-Thread | FAL软件包的使用,对FLASH进行分区管理

1024G 嵌入式资源大放送!包括但不限于C/C、单片机、Linux等。关注微信公众号【嵌入式大杂烩】,回复1024,即可免费获取! 什么是分区管理 FLASH分区管理是怎么一回事呢?我们可以以个人电脑来做类比,我们的电脑…

RT-Thread构建与配置系统

简述 RT-Thread的构建与配置系统由以下几个部分组成: KConfig:kernel config配置文件(提供系统的配置裁剪功能)SCons:构建工具env工具:主要提供构建系统所需的各种环境变量以及软件包的管理 Kconfig在R…

RT-Thread下的串口驱动程序分析

编写本文稿的目的,在于通过分析stm32平台上的串口中断源码,学习 RTT中如何编写中断处理程序 如何编写RTT设备驱动接口代码 了解串行设备的常见处理机制 先以RTT官方源码中的STM32 BSP包来分析。rt-thread\bsp\stm32f10x 下,涉及的文件为: …

RT-Thread内核学习

内核框架 内核是操作系统最基础也是最重要的部分,内核处于硬件层之上,内核部分包括内核库、实时内核实现。 内核库是为了保证内核能够独立运行的一套小型的类似C库的函数实现子集。这部分根据编译器不同自带C库的情况也会不同。 当使用GNU GCC编译器时&…

RT_Thread内核机制学习(四)队列

队列 队列中每个消息块都有一个头部&#xff0c;指向下一个消息块。 消息块的内存是连在一起的&#xff0c;但是是用链表组织的。 struct rt_messagequeue {struct rt_ipc_object parent; /**< inherit from ipc_object */void *m…

RT-Thread 中断管理(学习一)

中断管理 什么是中断&#xff1f;简单的解释就是系统正在处理某一个正常事件&#xff0c;忽然被另一个需要马上处理的紧急事件打断&#xff0c;系统转而处理这个紧急事件&#xff0c;待处理完毕&#xff0c;再恢复运行刚才被打断的事件。生活中&#xff0c;我们经常会遇到这样…

RT-Thread ---开启基于RTGUI的LCD显示功能(2)编译测试

软件环境&#xff1a;Win7&#xff0c;Keil MDK 4.72a, IAR EWARM 7.2, GCC 4.2&#xff0c;Python 2.7 ,SCons 2.3.2 硬件环境&#xff1a;Armfly STM32F103ZE-EK v3.0开发板 参考文章&#xff1a;RT-Thread编程指南 RT-Thread_1.2.0lwiprtgui0.8.0 移植心得 RT-Thread RTOS组…

在rt-thread中使用iperf触发断言卡死

问题触发 最近在适配sdio device驱动&#xff0c;CP芯片与AP芯片对接&#xff08;RK3399&#xff09;&#xff0c;准备使用iperf测试下能否AP与CP能否正常通信。CP芯片跑的是rt-thread系统&#xff0c;在使用sdio_eth_dev_init命令初始化后&#xff0c;使用iperf -c 192.168.1…

BearPi Std 板从入门到放弃 - 先天神魂篇(6)(RT-Thread 按键中断响应)

简介 使用BearPi IOT Std开发板及主板自带两颗按键与用户灯, 实现按键触发中断控制灯亮灯灭 主板: 主芯片: STM32L431RCT6 LED : PC13 \ 推挽输出\ 高电平点亮 串口: Usart1 KEY1 : PB2 \ 上拉 \ 按下下降沿触发(一次)/上下沿触发(两次&#xff0c;实现按下开、松开关) KEY2 :…

【物联网设备端开发】物联网设备上云提供开箱即用接入SDK

&#x1f308; 个人主页&#xff1a;帐篷Li &#x1f525; 系列专栏&#xff1a;物联网设备端开发 &#x1f4aa;&#x1f3fb; gitee地址&#xff1a;IOTDeviceSDK物联网设备端开发工具包 &#x1f935;‍♂️ 物联网设备上云提供开箱即用接入SDK 目录 一、项目介绍 二、项目…

rt-thread------串口V1(三)接收

系列文章目录 rt-thread 之 fal移植 rt-thread 之 生成工程模板 STM32------串口理论篇 rt-thread------串口V1版本&#xff08;一&#xff09;配置 rt-thread------串口V1版本&#xff08;二&#xff09;发送篇 文章目录 系列文章目录一、串口的接收中断接收DMA接收 一、串口…

启明智显开源项目分享|基于Model 3c芯片的86中控面板ZX3D95CM20S-V11项目软硬件全开源

前言&#xff1a; 本文为4寸 480*480 RGB接口IPS全面触屏的86中控面板&#xff08;RT-ThreadLVGL&#xff09;软硬件开源干货内容&#xff0c;该项目是综合性非常强的RTOS系列项目&#xff01;项目主控芯片使用 Model 3c&#xff0c;整体实现了简化版本的86中控面板的功能需求…

RTT(RT-Thread)串口设备(RTT保姆级教程)

目录 UART串口设备 串口概述 访问串口设备接口 数据发送方法 数据接收方法 串口设备使用流程 串口中断接受实例 串口配置及串口发送 串口中断接收 DMA接收 UART串口设备 串口概述 本章主要介绍串口设备在RT-Thread操作系统中应用层如何使用。关于串口设备的使用&am…

RT-Thread IO设备模型

IO设备模型 RTT提供了一套简单的I/O设备模型框架&#xff0c;它位于硬件和应用程序之间&#xff0c;共分成三层&#xff0c;从上到下分别是I/O设备管理层、设备驱动框架层、设备驱动层。 应用程序通过I/O设备管理接口获得正确的设备驱动&#xff0c;然后通过这个设备驱动与底层…

RT-Thread GD32F4xx enc28j60 + Lwip使用记录

目录 1、添加spi总线驱动1.1 enc28j60的硬件引脚连接1.2 spi0驱动确认1.3 驱动配置修改2、enc28j60驱动2.1 选择使用enc28j60接口配置2.2 添加drv_spi_enc28j60.c驱动文件3、网络设备及lwip配置3.1 设置网卡设备3.2 配置lwip协议栈4、应用测试4.1 Tcp Client测试4.2 Tcp Server…

RT-Thread 内核实现 的 读书笔记(二)

临界段&#xff1a; 临界段用一句话概括就是一段在执行的时候不能被中断的代码段。在 RT-Thread 里面&#xff0c; 这个临界段最常出现的就是对全局变量的操作&#xff0c;全局变量就好像是一个枪把子&#xff0c;谁都可以 对他开枪&#xff0c;但是我开枪的时候&#xff0c;你…

RT-Thread学习笔记 --(5)RT-Thread线程间同步学习总结

RT-Thread线程间同步学习总结 多线程之间同步是继多线程学习之后&#xff0c;需要重点掌握的又一个重要内容。一个实时操作系统里面&#xff0c;如果只有多线程而没有线程间同步&#xff0c;各个线程都无序运行&#xff0c;那么必然会导致整个系统的运行出现各种问题。 正是由…

RT-Thread学习笔记 --(8)RT-Thread时钟管理学习总结

RT-Thread时钟管理学习总结 时间&#xff0c;不管在任何生活场合&#xff0c;都是一个非常重要概念。试想一下&#xff0c;假如没有了时间&#xff0c;这个世界几乎所有的事物都会乱套&#xff0c;但同时很多科学家也会提出疑问&#xff0c;在客观世界里面&#xff0c;时间是真…

RT-Thread学习笔记 --(9)RT-Thread内存管理学习总结

RT-Thread内存管理学习总结 在单片机芯片上&#xff0c;如果不考虑出厂固化的ROM空间的话&#xff0c;通常开发者能接触到的存储空间主要分两种&#xff1a;掉电可保存数据的片内FLASH和掉电不可保存数据的片内RAM。 片内RAM&#xff08;通常理解为内存&#xff09;的访问速度…

国民技术N32G457移植usart设备

前言 接着上篇《国民技术N32G457移植pin设备》的RT-Thread工程移植usart设备驱动。 一、添加文件到工程中 1、添加dev_usart.c到工程中 二、修改源文件 1、修改rtconfig.c文件 2、修改所需要包含的文件 3、修改预编译代码 4、修改串口结构体 5、将这些标号改成从1开始…

RT-thread 中Kconfig简单配置

一&#xff1a;添加类型 bool&#xff0c;string&#xff0c;int 在Kconfig中添加一个示例 如下&#xff1a;分别是三个类型, bool型&#xff0c; string型&#xff0c;int型 menu "hello module"config RT_USING_HELLObool "Enable hello"default nhelp…

RT-Thread 中断管理学习(一)

中断管理 什么是中断&#xff1f;简单的解释就是系统正在处理某一个正常事件&#xff0c;忽然被另一个需要马上处理的紧急事件打断&#xff0c;系统转而处理这个紧急事件&#xff0c;待处理完毕&#xff0c;再恢复运行刚才被打断的事件。生活中&#xff0c;我们经常会遇到这样…

国民技术N32G457移植pin设备

前言 接着上篇《国民技术N32G457移植RT-Thread》的RT-Thread工程移植pin设备。 一、添加文件到工程中 1、添加drv_gpio.c 二、修改源文件 1、替换当前文件的__GD32为__N32 2、修改头文件 3、添加时钟和外部中断相关枚举 typedef enum {/* AHB peripherals */RCU_DMA1…

STM32F407中的RT-thread系统中移植LCD的程序-FSMC控制

环境 开发板&#xff1a;正点原子探索者芯片&#xff1a;STM32F407ZGT6系统&#xff1a;RT-Thread屏幕型号&#xff1a;TFTLCD 55510 4.3寸开发软件&#xff1a;Keil&#xff0c;CubeMX&#xff0c; Env 目的 现在将裸板上的LCD程序&#xff0c;移植到RT-thread上&#xff0…

RT-Thread qemu-virt64-aarch64开启 rt-smart

前言 前面搭建了基于 RT-Thread BSP qemu-virt64-aarch64 的开发编译环境&#xff0c;接下来开启 rt-smart&#xff0c;确认是否可以正常工作 开启 rt-smart 经过初步的验证&#xff0c;发现 qemu-virt64-aarch64 开启 rt-smart&#xff0c;只需要 scons --menuconfig 图形配…

[嵌入式系统-27]:RT-Thread -14- 操作系统配置:rtconfig.h文件与menuconfig命令

目录 一、rtconfig.h 1.1 概述 1.2 软硬件资源配置 1.3 功能模块选择 1.4 内核配置详解 1.5 调度器配置 1.6 硬件设备驱动配置 1.7 网络配置 1.8 调试配置 二、menuconfig 2.1 概述 2.2 主要功能 三、RT Thread配置 VS Linux配置 一、rtconfig.h 1.1 概述 rtco…

C语言面向对象的编程思想

面向对象编程 面向对象编程Object-Oriented Programming&#xff0c;OOP&#xff09; 作为一种新方法&#xff0c;其本质是以建立模型体现出来的抽象思维过程和面向对象的方法。模型是用来反映现实世界中事物特征的。任何一个模型都不可能反映客观事物的一切具体特征&#xff0…

RT_Thread内核机制学习(六)信号量

要传输较大数据时&#xff0c;使用队列。 传输较小数值时&#xff0c;使用邮箱。 队列、邮箱用来传递数据。 如果只是用来传递资源的个数&#xff0c;可以使用信号量。 A车与B车只需要传递信号量&#xff08;代表资源&#xff09;。 信号量 获取信号量 如果value>0&…

RT-ThreadBearPi 开发笔记 -- 小熊派基于RT-Thread接入腾讯云物联网开发平台

小熊派基于RT-Thread接入腾讯云物联网开发平台 上一篇文章讲述了小熊派通过ESP8266无线WiFi模块接入互联网&#xff0c;关于上一篇文章的具体内容&#xff0c;可以查看以下链接&#xff1a; RT-Thread&BearPi 开发笔记 -- 小熊派基于RT-Thread使用ESP8266进行网络连接 基…

国民技术N32G457移植RT-Thread

文章目录前言一、替换文件二、添加文件到工程三、修改源码四、源码下载总结前言 移植RT-Thread到国民技术N32G457芯片中&#xff0c;此次移植只是一个最简的移植&#xff0c;不包括移植控制台所需的串口设备驱动&#xff0c;pin设备驱动。 一、替换文件 1、在bsp中复制一个gd…

RT-Thread: 自定义 printf 函数

说明&#xff1a; rt_kprintf 函数使用时只是指向设置好的调试串口&#xff0c;如果希望其他串口也有类似 rt_kprintf 的功能&#xff0c;本文介绍如何实现。 1.自定义 printf 代码部分 模仿 rt_kprintf 函数&#xff0c;创建一个指向别的 UART 口的自定义函数。 RT-Thread …

PSoc62™开发板之rtc时间获取

实验目的 1.使用PSoc62™芯片读取内部rtc时间 2.OLED屏幕显示当前时间戳 实验准备 PSoc62™开发板SSD1306 OLED模块公母头杜邦线 芯片资源 PSoC 6系列MCU时钟系统由以下几部分组成&#xff0c;PSoc62™开发板没有接外部时钟源&#xff0c;所以只能从IMO、ILO、PILO里边配…

RT-Thread | 线程的基本知识

1024G 嵌入式资源大放送&#xff01;包括但不限于C/C、单片机、Linux等。关注微信公众号【嵌入式大杂烩】&#xff0c;回复1024&#xff0c;即可免费获取&#xff01; 什么是线程&#xff1f; 人们在生活中处理复杂问题时&#xff0c;惯用的方法就是分而治之&#xff0c;即把一…

RT-Thread学习笔记 --(1)RT-Thread开发环境搭建

RT-Thread开发环境搭建 对于学习嵌入式实时操作系统&#xff0c;首先第一步要进行的是搭建好对应的开发环境&#xff0c;只有对应的环境搭建好了&#xff0c;才能进行下一步的开发工作。 RT-Thread为了方便广大开发者进行入门或者深入使用&#xff0c;其官网提供了十分丰富的…

rt-thread汇总

finish和msh的区别&#xff1f; 这个问题我一直没搞懂&#xff0c;可能得看一下源码才能搞清楚了吧 通过Qemu运行RT-Thread 在windows上通过QEMU快速上手RT-thread smart RT-thread启动流程 rt-thread启动流程 Kconfig语法 Kconfig语法 关于终端的一些问题 终端的管脚配置…

RT-Thread | 临界区问题及IPC机制

1024G 嵌入式资源大放送&#xff01;包括但不限于C/C、单片机、Linux等。关注微信公众号【嵌入式大杂烩】&#xff0c;回复1024&#xff0c;即可免费获取&#xff01; 什么是临界区&#xff1f; 在多线程实时系统中&#xff0c;多个线程操作/访问同一块区域&#xff08;代码&am…

RT-Thread:STM32实时时钟 RTC开启及应用

说明&#xff1a;STM32F103/407系列基于 RT-Thread 系统的 RTC 开启及应用 应用流程介绍。 1. RTC功能开启 1.1 开启系统RTC驱动 1.2 打开系统RTC相关的宏 1.3 打开库函数 RTC 相关的宏 完成以上系统配置&#xff0c;编译无误情况下RTC 就已经开启了。 2. RTC 应用 官方 AP…

RT-Thread 内核基础(学习)

内核基础 本章介绍RT-Thread内核基础&#xff0c;包括&#xff1a;内核简介、系统的启动流程及内核配置的部分内容&#xff0c;为后面的章节奠定基础。 内核是一个操作系统的核心&#xff0c;是操作系统最基础也最重要的部分。 它负责管理系统的线程、线程间通信、系统时钟、中…

rt-thread系列文章目录

rt-thread系列文章目录 本文是rt-thread系列文章目录&#xff0c;后续关于rt-thread的更新都会添加到此文内。 实战篇 rt-thread------生成工程模板 rt-thread------fal移植 内核篇 rt-thread-------内存管理&#xff08;内存堆&#xff09; 设备和驱动篇 C语言面向对象…

DP活动:以太网HMI线下培训RA6M3 HMI Board[MQTT Squareline LVGL]

以太网HMI线下培训-环境准备 这是官方社群的文档&#xff1a;【腾讯文档】以太网线下培训&#xff08;HMI-Board&#xff09;所有教程都在这~ https://docs.qq.com/doc/DY0FIWFVuTEpORlNn R A 6 M 3 H M I − B o a r d \textcolor{#4183c4}{RA6M3 HMI-Board} RA6M3HMI−Board…

RT-Thread 内核对象管理框架

内核对象管理框架 RT-Thread采用内核对象管理系统来访问/管理所有内核对象&#xff0c;内核对象包含了内核中绝大部分设施&#xff0c;这些内核对象可以是静态分配的静态对象&#xff0c;也可以是从系统内存堆中分配的动态对象。 RT-Thread内核对象包括&#xff1a;线程&…

RT-Thread内核配置示例

RTT的一个重要特性是高度可裁剪性&#xff0c;支持对内核进行精细调整&#xff0c;对组件进行灵活拆卸。 配置主要是通过修改工程目录下的rtconfig.h文件来进行&#xff0c;用户可以通过打开/关闭该文件中的宏定义来对代码进行条件编译&#xff0c;最终达到系统配置和裁剪的目…

【RT-Thread基础教程】Delay函数与空闲线程及其钩子函数

文章目录 前言一、Delay函数1.1 rt_thread_delay()函数1.2 rt_thread_mdelay()函数1.3 rt_hw_us_delay()函数1.4 rt_thread_delay_until函数1.5 获取当前tick数 二、空闲线程与钩子函数2.1 空闲线程2.2 钩子函数 总结 前言 在 RT-Thread 操作系统中&#xff0c;Delay 函数和空…

RT-Thread:STM32的PB3,PB4 复用IO配置为GPIO

说明&#xff1a;在使用 STM32F103CBT6 配置了 PB3 为IO&#xff0c;测试时发现读取这个IO的电平时钟是0&#xff0c;即便单管脚上的电平是1&#xff0c;读取的数据任然是0,查规格书后发现PB3,PB4是JTAG复用口&#xff0c;要当普通IO用需要配置。 配置工具&#xff1a;STM32Cu…

RT-Thread 时钟管理

时钟节拍 任何操作系统都需要提供一个时钟节拍&#xff0c;以供系统处理所有和时间有关的事件&#xff0c;如线程的延时、时间片的轮转调度以及定时器超时等。 RTT中&#xff0c;时钟节拍的长度可以根据RT_TICK_PER_SECOND的定义来调整。rtconfig.h配置文件中定义&#xff1a…

RT-Thread BSP qemu-virt64-riscv 的编译环境搭建

前言 最近需要使用 RT-Thread smart 开发调试一些软件功能&#xff0c;由于软件功能平台无关&#xff0c;使用实际硬件操作&#xff0c;会耗费较多的时间在程序烧写环节。 打算使用 BSP qemu-virt64-aarch64 搭建一个 RT-Thread smart 的开发调试环境&#xff0c;可以开发验证…

保姆级AT32F437 配置RT-Thread 以太网(UDP/TCP Server)

好记性不如烂笔头&#xff0c;既然不够聪明&#xff0c;就乖乖的做笔记&#xff0c;温故而知新。 本文档用于本人对知识点的梳理和记录。 一、前言 ENV版本&#xff1a;v1.3.5 rt-thread版本&#xff1a;V5 开发板&#xff1a;雅特力AT32F437 AT-START-F437 二、ENV配置 E…

RT-Thread 自动初始化机制

RT-Thread自动初始化机制 自动初始化机制是指初始化函数不需要被显示调用&#xff0c;只需要在函数定义处通过宏定义的方式进行申明&#xff0c;就会在系统启动过程中被执行。 例如在串口驱动中调用一个宏定义告知系统初始化需要调用的函数&#xff0c;代码如下&#xff1a; …

RT-Thread: eeprom存储芯片 at24cxx软件包使用流程

说明&#xff1a;介绍 i2c 通讯接口的 eeprom at24cxx 读写测、试代码&#xff0c;代码基于 at24cxx 软件包实现。 使用步骤&#xff1a; * 1&#xff1a;在 RT-Thread Settings 中开启 【软件模拟I2C】 * 2&#xff1a;在 RT-Thread Settings 软件包中搜索 at24cxx 添加软件…

RT-Thread 线程管理(二)

系统线程 系统线程是指由系统创建的线程&#xff0c;用户线程是由用户程序调用线程管理接口创建的线程&#xff0c;在 RT-Thread 内核中的系统线程有空闲线程和主线程。 空闲线程 空闲线程&#xff08;idle&#xff09;是系统创建的最低优先级的线程&#xff0c;线程状态永远…

RT-Thread: 基于STM32CubeMX配置驱STM32驱动的USB虚拟串口调试

关键词&#xff1a;USB 虚拟串口 USB虚拟串口&#xff0c;RT-Thread Studio&#xff0c;STM32 说明&#xff1a; 1&#xff1a;文档记录 STM32F103系列基于 RT-Thread 系统的 USB虚拟串口的开启及数据收发应用流程介绍。 2&#xff1a;本文以STM32F103C8T6型号做测试&#x…

RT-Thread 中断管理(学习)

中断是一种异常&#xff0c;异常是导致处理器脱离正常运行转向执行特殊代码的任何事件&#xff0c;如果不及时进行处理&#xff0c;轻则系统出错&#xff0c;重则会导致系统毁灭性地瘫痪。所以正确地处理异常&#xff0c;避免错误的发生是提高软件鲁棒性&#xff08;稳定性&…

RT-Thread ADC_DMA

看到这里&#xff0c;相信大家已经尝试过网上各类ADC_DMA传输的文章&#xff0c;且大多都并不能实现&#xff0c;因为在RT-Thread中并没有找到关于ADC的DMA接口&#xff0c;在官方例程中有关DMA的传输也只有一个串口接收的介绍&#xff0c;找遍全网怕也没能找到真正有用的消息。…

RT-Thread 线程间同步

多个执行单元&#xff08;线程、中断&#xff09;同时执行临界区&#xff0c;操作临界资源&#xff0c;会导致竟态产生。 RTT使用信号量、互斥量、事件集来解决这种问题。 同步&#xff08;按顺序&#xff09;、互斥&#xff08;排它&#xff09;。 信号量 信号量是一种轻型…

RT-Thread 中断管理(学习二)

中断的底半处理 RT-Thread不对中断服务程序所需要的处理时间做任何假设、限制&#xff0c;但如同其它实时操作系统或非实时操作系统一样&#xff0c;用户需要保证所有的中断服务程序在尽可能短的时间内完成。这样在发生中断嵌套&#xff0c;或屏蔽了相应中断源的过程中&#x…

RT-Thread 内存管理(学习二)

内存堆管理应用示例 这是一个内存堆的应用示例&#xff0c;这个程序会创建一个动态的线程&#xff0c;这个线程会动态申请内存并释放&#xff0c;每次申请更大的内存&#xff0c;当申请不到的时候就结束。 #include <rtthread.h>#define THREAD_PRIORITY 25 #defi…

RT-Thread学习笔记(四):RT-Thread Studio工具使用

RT-Thread Studio工具使用 官网详细资料实用操作1. 查看 RT-Thread RTOS API 文档2.打开已创建的工程3.添加头文件路径4. 如何设置生成hex文件5.新建工程 官网详细资料 RT-Thread Studio 用户手册 实用操作 1. 查看 RT-Thread RTOS API 文档 2.打开已创建的工程 如果打开项目…

RT-Thread内部机制 事件组

事件组 队列&#xff1a;用来传递数据&#xff0c;大小不限。邮箱&#xff1a;用来传递数据&#xff0c;数据是一个长整型。信号量&#xff1a;表示资源数量。互斥量&#xff1a;实现互斥操作&#xff0c;跟信号量的主要区别在于实现了优先级继承。 上述每次唤醒只唤醒一个。…

RT-Thread临界段之rt_hw_interrupt_enable和rt_hw_interrupt_disable

一、PRIMASK PRIMSK1 ;关闭中断 PRIMSK10;打开中断 二、void rt_hw_interrupt_enable(rt_base_t level);有参数&#xff0c;无返回值 该功能将设置指定的中断状态&#xff0c;该状态应由rt_hw_intterrupt_disable函数返回值&#xff08;入参level&#xff09;决定。 如果…

RT-Thread内核移植

目录 前言一、实验平台简介1.1 W601简介1.2 RT-Thread简介1.3 开发环境 二、W601的SDK移植三、RT-Thread内核移植四、下载验证4.1 串口下载程序4.2 ST-Link下载 前言 本文以正点原子W601开发板为基础&#xff0c;讲解如何移植RT-Thread&#xff0c;本文所用资料见附件资源 一、…

RT-Thread 线程管理(学习一)

RT-Thread是支持多任务的操作系统&#xff0c;多任务通过多线程的方式实现。线程是任务的载体&#xff0c;也是RTT中最基本的调度单位。 线程执行时的运行环境称为上下文&#xff0c;具体来说就是各个变量和数据&#xff0c;包括所有的寄存器变量、堆栈、内存信息等。 特点 …

RT-Thread GD32F4xx ADC驱动记录

目录 1、添加GD32F4xx ADC驱动1.1 添加menuconfig ADC选项1.2 添加drv_adc.c/.h1.3 应用测试2、针对电路板的多路转换+DMA2.1 添加宏定义及DMA结构体定义2.2 GPIO init2.3 gd32_adc_dma_enabled2.4 gd32_adc_dma_convert2.5 gd32_adc_ops2.6 应用测试1、添加GD32F4xx ADC驱动 …

RT-Thread GD32F4xx SDIO驱动

目录 1、SDIO2、GD32F4xx SDIO驱动2.1 创建SDIO设备2.2 实现SDIO设备操作方法2.3 注册SDIO设备2.4 添加配置2.5 RT-Thread DFS3、应用测试3.1 测试代码3.2 write/read接口调用流程记录1、SDIO SDIO(Secure Digital Input and Output,安全数字输入/输出接口) 是一种在SD卡接口的…

RT-Thread 原子操作(学习)

原子操作简介 原子操作&#xff08;Atomic operation&#xff09;是指一种不可分割的操作&#xff0c;要么完全执行成功&#xff0c;要么完全不执行。 原子操作的执行过程中不允许有任何中断&#xff0c;如果出现了中断&#xff0c;那么操作的结果就无法保证。 原子操作通常…

RT_Thread内核机制学习(五)邮箱

之所以引入线程间通信&#xff0c;是为了实现互斥&#xff0c;休眠-唤醒。 队列可以指定消息的大小、个数&#xff0c;存放消息&#xff0c;取出消息时都是由rt_memcpy()实现。 邮箱 保存数据的核心在于数组&#xff0c;只能存放unsigned long类型数据&#xff0c;数据存取、…

eCos、RTEMS、RT-Thread、FreeRTOS在中文书籍方面的比较

mingdu.zheng <at> gmail <dot> comhttp://blog.csdn.net/zoomdy/article/details/8914656 通过在当当网、博库网、亚马逊、京东搜索操作系统名称查找相应的书籍&#xff0c; 以中文书籍作为比较面对eCos、 RTEMS、 RT-Thread、FreeRTOS这四种开源的实时操作系统进…

RT-Thread 线程间同步【信号量、互斥量、事件集】

线程间同步 一、信号量1. 创建信号量2. 获取信号量3. 释放信号量4. 删除信号量5. 代码示例 二、互斥量1. 创建互斥量2. 获取互斥量3. 释放互斥量4. 删除互斥量5. 代码示例 三、事件集1. 创建事件集2. 发送事件3. 接收事件4. 删除事件集5. 代码示例 简单来说&#xff0c;同步就是…

RT-Thread移植到GD32F150系列MCU

本文使用GD32F150C6T6 MCU&#xff0c;基本资源Flash&#xff1a;32KB&#xff0c;SRAM&#xff1a;6KB。 1、下载RT-Thread Nano的源码&#xff0c;如下&#xff1a; https://www.rt-thread.org/page/download.html 2、在工程目录下添加RT-Thread文件夹&#xff0c;如下&a…

2023RT-Thread开发者大会

参加了一次RT-Thread的开发者大会&#xff0c;相当有意思&#xff0c;虽然一天奔波挺累&#xff0c;但睡了半天之后简单剪了下22号的视频&#xff0c;也就有时间写自己的参会笔记了。 与openEuler社区不同&#xff0c;RT-Thread社区更专注于嵌入式&#xff0c;与硬件厂商结合较…

[嵌入式系统-24]:RT-Thread -11- 内核组件编程接口 - 网络组件 - TCP/UDP Socket编程

目录 一、RT-Thread网络组件 1.1 概述 1.2 RT-Thread支持的网络协议栈 1.3 RT-Thread如何选择不同的网络协议栈 二、Socket编程 2.1 概述 2.2 UDP socket编程 2.3 TCP socket编程 2.4 TCP socket收发数据 一、RT-Thread网络组件 1.1 概述 RT-Thread 是一个开源的嵌入…

抽象 I/O设备模型

I/O设备模型框架 RT-Thread提供了一套简单的I/O设备模型框架。 如图所示&#xff0c;它位于硬件和应用程序之间&#xff0c;共分成三层&#xff0c;从上到下分别是I/O设备管理层、设备驱动框架层、设备驱动层。 应用程序通过I/O设备管理接口获得正确的设备驱动&#xff0c;然…

RT-Thread系列09——ETH网口设备

文章目录 1. ETH测试第一步&#xff1a;cubemx配置。第二步&#xff1a;board.h配置。第三步&#xff1a;rtthread settings配置第四步&#xff1a;以太网复位引脚设置第五步&#xff1a;修改rtthread源码第六步&#xff1a;修改 cubemx 生成的 main 函数第七步&#xff1a;编译…

嵌入式面向对象学习 RT-Thread I/O 设备管理框架 设备驱动层 案例测试

嵌入式面向对象 RT-Thread I/O 设备管理框架 设备驱动层 注&#xff1a;本文介绍性内容转载于《RT-Thread记录&#xff08;十、全面认识 RT-Thread I/O 设备模型&#xff09;》 注&#xff1a; 本次使用的开发板 &#xff1a; ​ 兆易创新GD32F407VET6开发板 ​ 雅特力科技…

rt-thread启动流程(最详细教程)

资料下载 RT-Thread Simulator 例程 操作流程 将上面的仿真例程下载并解压&#xff0c;通过MDK打开&#xff0c;编译&#xff0c;调试&#xff0c;并打开串口点击运行&#xff0c;就可以看到如下输出了&#xff1a; 添加自己的 thread&#xff1a;在main()函数中添加即可&am…

STM32基于HAL库RT-Thread Demo测试

STM32基于HAL库RT-Thread Demo测试 &#x1f388;源码地址&#xff1a;https://github.com/RT-Thread/rt-thread/tree/master&#x1f4cc;基于STM32CUBEMX中间件安装《基于 CubeMX 移植 RT-Thread Nano》&#x1f4cd;环境搭建《使用 Env 创建 RT-Thread 项目工程》&#x1f5…