RT-Thread Studio实现静态线程

1创建项目 (STM32F03ZET6)

RT-Thread项目与RT-Thread Nano 项目区别

  1. RT-Thread:

    • 完整版:这是RT-Thread的完整形态,适用于资源较丰富的物联网设备。
    • 功能:它提供了全面的中间件组件,如文件系统、网络协议栈、GUI等,支持复杂的物联网应用开发。
    • 资源占用:相对较大,因为它包含了更多的功能组件。
  2. RT-Thread Nano:(个别函数也去掉了)

    • 精简版:这是一个精简的硬实时内核,设计用于资源受限的微控制器,如ARM Cortex-M0。
    • 功能:它去掉了完整版中的许多高级特性,保留了最核心的多线程管理和调度功能。
    • 资源占用:非常小,适用于内存和存储空间有限的小型设备。

2选择板子(根据自己的板子选择)

3找到主函数

4编写代码

4-1创建必要的变量

// 定义线程控制块
static struct rt_thread thread1;
// 定义线程栈
static rt_uint8_t thread1_stack[1024];

4-2创建入口函数

// 线程入口函数
static void thread1_entry(void *parameter)
{while (1){// 线程执行的代码rt_kprintf("Thread 2 is running\n");rt_thread_delay(1000); // 线程延时,单位为毫秒}
}

4-3在主函数中启动线程

// 初始化线程rt_thread_init(&thread1,              // 线程控制块"thread1",             // 线程名字thread1_entry,         // 线程入口函数RT_NULL,               // 线程入口参数&thread1_stack[0],     // 线程栈起始地址sizeof(thread1_stack), // 线程栈大小10,                    // 线程优先级20);                   // 线程时间片// 启动线程rt_thread_startup(&thread1);

4-4全部代码

/** Copyright (c) 2006-2024, RT-Thread Development Team** SPDX-License-Identifier: Apache-2.0** Change Logs:* Date           Author       Notes* 2024-06-26     RT-Thread    first version*/#include <rtthread.h>#define DBG_TAG "main"
#define DBG_LVL DBG_LOG
#include <rtdbg.h>// 定义线程控制块
static struct rt_thread thread1;
// 定义线程栈
static rt_uint8_t thread1_stack[1024];// 线程入口函数
static void thread1_entry(void *parameter)
{while (1){// 线程执行的代码rt_kprintf("Thread 2 is running\n");rt_thread_delay(1000); // 线程延时,单位为毫秒}
}int main(void)
{int count = 1;// 初始化线程rt_thread_init(&thread1,              // 线程控制块"thread1",             // 线程名字thread1_entry,         // 线程入口函数RT_NULL,               // 线程入口参数&thread1_stack[0],     // 线程栈起始地址sizeof(thread1_stack), // 线程栈大小10,                    // 线程优先级20);                   // 线程时间片// 启动线程rt_thread_startup(&thread1);while (count++){LOG_D("Hello RT-Thread!");rt_thread_mdelay(1000);}return RT_EOK;
}

其中rt_kprintf()与LOG_D()作用一样都是串口输出文本

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

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

相关文章

行业案例 | 智能终端设备的数据基础从哪儿来?

智能终端的快速发展让我们在许多科幻电影中看到的“未来场景”正在一步步变为现实&#xff1a;智能家居正在解放我们的双手&#xff0c;工业机器人让生产效率倍增&#xff0c;智能穿戴设备让我们便利地感知自身与外部的连结……然而&#xff0c;要想让万物“智联”&#xff0c;…

从环型到树型:多种网络拓扑结构的优缺点及应用

网络拓扑作为网络设计的基础&#xff0c;对于网络的性能、可靠性和扩展性起着重要作用。作为网络通信工程师&#xff0c;我们不仅需要了解网络拓扑的基本概念&#xff0c;还需深入掌握其在实际网络设计中的应用。本文将详细介绍网络拓扑&#xff0c;包括物理拓扑、逻辑拓扑&…

足底筋膜炎最快治疗方法有哪些

足底筋膜炎的治疗方式多样&#xff0c;因病而异&#xff0c;因人而异。为了快速有效地治疗足底筋膜炎&#xff0c;以下是一些建议的治疗方案&#xff1a; 1、物理治疗&#xff1a; 针灸、按摩、理疗、热敷等方式可以缓解局部炎症。这些物理治疗方法有助于促进血液循环&#xff…

windows下以服务方式安装prometheus和grafana

grafana 找到confi下的defaults.ini&#xff0c;找到http_port修改端口号 # The HTTP port to use http_port 3000启动 grafana-server.exe访问localhost:8601即可 下载winsw https://github.com/winsw/winsw 新建grafanaservice.xml <service><id>grafana&…

Strava VS Keep竞品分析

Strava VS Keep竞品分析 一、背景&#xff1a; 随着国民对身体健康的重视程度逐步增加&#xff0c;跑步、游泳、骑行在国内逐渐流行&#xff0c;人们都加入运动行列。随之不可缺少的则是对运动数据的记录&#xff0c;市面上针对此需求的app层出不穷&#xff0c;日活最多的5款…

用友BIP电子凭证3.0,助力企业实现结算自动化

电子凭证作为现代企业运营的核心数字凭据&#xff0c;其重要性不言而喻。它不仅是企业在社会经济活动中运动轨迹的记录&#xff0c;更是企业业务、财务、税务等关键数据信息的载体。特别是在企业与上下游企业之间的业务往来中&#xff0c;电子凭证所承载的订单数据、物流数据、…

智慧金融新视野:银行数据中心可视化大屏的崛起

在数字化浪潮的推动下&#xff0c;银行业正迎来一场前所未有的变革。在这场变革中&#xff0c;银行数据中心可视化大屏以其独特的魅力&#xff0c;为银行的数据分析和决策提供强有力的支持。 随着金融科技的不断发展&#xff0c;银行对于数据处理和分析的需求日益增长。银行数据…

写一个坏越的个人天地(四)

静态界面已经基本都写差不多了&#xff0c;今天试下部署看下问题然后就可以准备后端部分了~ 这边浏览了下先准备换下路径&#xff0c;确保本地素材的导入没有问题&#xff0c;vue打包这边有一个问题就是在打包的时候你的素材没有在标签里直接用src导入&#xff0c;而是在挂载的…

红酒舞动,运动风采,品味力与美

当夜幕降临&#xff0c;城市的灯火渐次亮起&#xff0c;忙碌了一天的人们开始寻找那份属于自己的宁静与愉悦。在这个时刻&#xff0c;红酒与运动&#xff0c;这两个看似截然不同的元素&#xff0c;却能以它们不同的魅力&#xff0c;为我们带来一场视觉与感官的盛宴。 红酒&…

如何学习训练大模型——100条建议(附详细说明)

摘要&#xff1a; 通过深入了解本文中的这些细节&#xff0c;并在实际项目中应用相关知识&#xff0c;将能够更好地理解和利用大模型的潜力&#xff0c;不仅在学术研究中&#xff0c;也在工程实践中。通过不断探索新方法、参与项目和保持热情&#xff0c;并将其应用于各种领域&…

探究电子电路中的电压与电平转换

1. 引言 昨天跟好朋友讨论一个项目的时候,我朋友就给我画了一个简化版的电路图&#xff0c;如下图所示&#xff1a; 总觉得这个电路怪怪的&#xff0c;clk信号怎么直接接稳压电路呢。就产生了一个疑问&#xff0c;电平转换和电压转换的区别是啥&#xff1f;稳压电路还有升降压…

【小白学Python】AI生成图片(四)

【小白学Python】自定义图片的生成&#xff08;一&#xff09; 【小白学Python】自定义图片的生成&#xff08;二&#xff09; 【小白学Python】爬取数据&#xff08;三&#xff09; 目录 ai文生图接口的获取python中调用ai接口图片拼接先将图片缩放拼接图片 文字背景图代码效…

【数据结构】(C语言):栈

栈&#xff1a; 线性的集合。后进先出&#xff08;LIFO&#xff0c;last in first out&#xff09;。两个指针&#xff1a;指向栈顶和栈底。栈顶指向最后进入且第一个出去的元素。栈底指向第一个进入且最后一个出去的元素。两个操作&#xff1a;入栈&#xff08;往栈尾添加元素…

Redis服务

目录 1、介绍 1、redis的特点: 2、缓存 2、安装Redis 1、安装单机版redis 2、redis-cli命令参数 3、redis的增删查改命令 4、redis的相关工具 1、介绍 redis是一个开源的、使用C语言编写的、支持网络交互的、可基于内存也可持久化的Key-Value数据库 redis的官网&…

摄影师危!AI绘画即将降维打击摄影行业

你还以为AI绘画影响的只是插画师行业吗&#xff1f;错了&#xff0c;摄影行业也即将面临技术洗牌 话不多说&#xff0c;先看一下这几张图 你能一眼看出这是AI画的迪丽热巴吗&#xff1f; 你是不是还以为AI绘画只能画点动漫艺术风格&#xff1f;那你就低估了AI的发展速度&…

react开发嵌入react-monaco-editor代码编辑器的方法

Next.js中使用react开发嵌入react-monaco-editor代码编辑器的方法&#xff08;支持语法高亮&#xff09; 安装 (base) PS D:\ai-ui> npm install react-monaco-editoradded 1 package, changed 1 package, and audited 1030 packages in 6s273 packages are looking for f…

《数字图像处理》实验报告五

一、实验任务与要求 实现一个自适应局部降噪滤波器&#xff1b;在一幅测试版图像中加入运动模糊和高斯噪声&#xff0c;产生一幅退化图像&#xff0c;采用 deconvwnr 函数实现逆滤波及维纳滤波。 二、实验报告 &#xff08;一&#xff09;实现一个自适应局部降噪滤波器 1、自…

ajax请求接口不设置请求头可以请求成功,但是设置请求头之后就跨域,已解决

遇到这个问题我们不要着急找后端&#xff0c;先通过控制台看看有没有报错&#xff0c;控制台的列表是不会有这个红色报错的&#xff0c;所以我们要看下图&#xff1a; 点击这个红色&#xff0c;然后在下面会出现一些信息 很明显是这个请求头timestamp的请求头被屏蔽了&#xff…

单机、集群和分布式

目录 1.概述 2.单机服务器 单机版的服务器的性能&#xff0c;设计上的瓶颈&#xff1f; 3.集群 解决瓶颈1&#xff1a; 没有解决瓶颈2&#xff1a; 没有解决瓶颈3&#xff1a; 集群的优点&#xff1f; 集群的缺点&#xff1f; 4.分布式 分布式的优点&#xff1f; 分…

a-table单元格指定合并以及表格双击编辑以及未填写指定验证功能

文章目录 a-table单元格指定合并以及表格双击编辑以及未填写指定验证功能一、 a-table单元格指定合并1. a-table2. columns3. 图例 二、a-table 表格双击编辑以及未填写验证1. a-table2. js3. 图例 a-table单元格指定合并以及表格双击编辑以及未填写指定验证功能 一、 a-table…