【STM32RT-Thread零基础入门】 2. 新建RT-Thread项目

硬件:STM32F103ZET6、ST-LINK、usb转串口工具

文章目录

  • 前言
  • 一、新建RT-Thread项目
  • 二、项目结构
  • 三、构建项目
  • 四、下载程序(调试器下载)
  • 五、终端交互
  • 总结


前言

  • RT-Thread的全称是Real Time Thread,顾名思义,它是一个嵌入式实时多线程操作系统。相较于 Linux
    操作系统,RT-Thread 体积小,成本低,功耗低、启动快速,除此之外 RT-Thread
    还具有实时性高、占用资源小等特点,非常适用于各种资源受限(如成本、功耗限制等)的场合 RT-Thread 系统完全开源,目前版本遵循
  • Apache License 2.0 开源许可协议,可以免费在商业产品中使用,并且不需要公开私有代码。
  • RT-Thread 与其他很多RTOS 如 FreeRTOS、uC/OS的主要区别之一是,它不仅仅是一个实时内核,还具备丰富的中间层组件和应用软件生态,其整体架构如图所示
    在这里插入图片描述

RT-Thread 软件包:运行于 RT-Thread 操作系统上,面向不同应用领域的通用软件组件,由描述信息、源代码或库文件组成。RT-Thread 提供了开放的软件包平台,这里存放了官方提供或开发者提供的软件包,该平台为开发者提供了众多可重用软件包的选择。因为这些软件包具有很强的可重用性,模块化程度很高,极大的方便应用开发者在最短时间内,打造出自己想要的系统。

组件与服务层:组件是基于 RT-Thread 内核之上的上层软件,例如虚拟文件系统、FinSH 命令行界面、网络框架、设备框架等。采用模块化设计,做到组件内部高内聚,组件之间低耦合。

内核层:是 RT-Thread 的核心部分,包括了内核系统中对象的实现,例如多线程及其调度、信号量、邮箱、消息队列、内存管理、定时器等;libcpu/BSP(芯片移植相关文件/板级支持包)与硬件密切相关,由外设驱动和 CPU 移植构成。


一、新建RT-Thread项目

在RT-Thread Studio中,找到“文件->新建->RT-Thread项目”,单击“RT-Thread项目”,就可以打开“新建RT-Thread项目”选项卡。
在这里插入图片描述
设置项目名称为“STM32F103ZET6_CAR”、项目保存位置、选择项目所用芯片的厂商和型号等信息,单击“完成”,RT-Thread Studio就会帮我们新建一个名字为“STM32F103ZET6_CAR”的RT-Thread项目
在这里插入图片描述

二、项目结构

在这里插入图片描述

  1. RT-Thread Settings 对其双击可以打开RT-Thread的图形化配置工具
  2. CubeMX Settings 对其双击可以打开STM32CubeMX图形化配置工具,对STM32芯片的硬件外设进行配置
  3. applications 用户应用程序目录,所有应用程序都可以放到这里,其中包括main.c
  4. Debug 项目编译过程文件目录,如编译过程产生的.o文件等,此文件需要先构建一次才可显示
  5. drivers 和硬件平台相关的设备驱动文件目录
  6. libraries 和平台相关的底层底层库。对于STM32平台,目前版本使用的STM32官方的HAL库作为平台底层驱动库
  7. linkscripts 项目的链接脚本
  8. rt-thread rt-thread内核代码
  9. rtconfig.h rt-thread的配置头文件,在RT-Thread Settings中所做的修改,都会改变这个文件,这个文件不能手动修改

三、构建项目

构建是指对项目代码进行编译,构建方法如下所示,选择需要构建的工程(如图中的1),然后点击工具栏上的“构建”按钮(如图中的2)对项目进行构建。
在这里插入图片描述
构建完成后,显示信息如下:
在这里插入图片描述

四、下载程序(调试器下载)

根据实际选择相应的调试器完成下载,此处选择stlink。
在这里插入图片描述

五、终端交互

  1. 将最小系统板的uart1串口与电脑相连

  2. 点击“终端”按钮,启动串行终端配置界面
    在这里插入图片描述

  3. 配置好串口参数
    在这里插入图片描述

  4. 连接串口后可观察到系统输出
    在这里插入图片描述


总结

本文主要测试了新建RT-Thread项目。

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

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

相关文章

HCIP STP(生成树)

目录 一、STP概述 二、生成树协议原理 三、802.1D生成树 四、STP的配置BPDU 1、配置BPDU的报文格式 2、配置BPDU的工作过程 3、TCN BPDU 4、TCN BPDU的工作过程 五、STP角色选举 1、根网桥选举 2、根端口选举 3、指定端口选举 4、非指定端口选举 六、STP的接口状…

【学习FreeRTOS】第2章——FreeRTOS基础知识

1.任务调度 1.1.任务调度简介 调度器就是使用相关的调度算法来决定当前需要执行的哪个任务FreeRTOS 一共支持三种任务调度方式: 抢占式调度:针对优先级不同的任务,每个任务都有一个优先级,优先级高的任务可以抢占优先级低的任务…

vue3 table动态合并,自定义参数合并单元格

<template><div><el-table :data"tableData" :span-method"objectSpanMethod" border:header-cell-style"{ textAlign: center}"><el-table-column prop"area" label"区域" align"center"&g…

Python AI 绘画

Python AI 绘画 本文我们将为大家介绍如何基于一些开源的库来搭建一套自己的 AI 作图工具。 需要使用的开源库为 Stable Diffusion web UI&#xff0c;它是基于 Gradio 库的 Stable Diffusion 浏览器界面 Stable Diffusion web UI GitHub 地址&#xff1a;GitHub - AUTOMATI…

阿里云轻量应用服务器_2核2G3M_108元/年_性能测评

阿里云轻量应用服务器2核2G3M带宽108元一年&#xff0c;系统盘为50GB高效云盘&#xff1b;轻量服务器2核4G4M带宽&#xff0c;60GB高效云盘297.98元12个月。目前轻量应用服务器只有2核2G和2核4G有活动&#xff0c;阿里云百科分享阿里云轻量应用服务器入口&#xff1a; 目录 阿…

深眸科技|发现AI+3D视觉的价值,技术升级加速视觉应用产品国产替代

随着中国工业化进程的不断深入和智能制造浪潮的影响&#xff0c;工业生产对于机器视觉技术的需求不断攀升&#xff0c;其应用范围覆盖了工业领域的众多行业&#xff0c;包括3C电子、汽车、半导体、新能源、物流等。 据GGII发布的最新数据显示&#xff0c;近年来我国机器视觉市…

Maven 生成(打包)带有依赖的可以直接执行的一个 jar 包

在pom中增加如下内容 <build><plugins><plugin><artifactId>maven-assembly-plugin</artifactId><configuration><archive><manifest><mainClass>com.example.xxx.YourClass</mainClass></manifest></…

Android AOSP源码编译——AOSP下载(一)

一、电脑配置 Ubuntu16.04 16G&#xff0c;硬盘的大小最好大于300G (我这边是找了个win电脑装了双系统 没有使用虚拟机的方式) 二、基础环境配置 1、安装git sudo apt install git配置git email和name git config --global user.email "youexample.com" git conf…

虹科案例 | 建筑物邻近挖掘工地的结构健康监测

一、 前言 工程与建筑 行业<<<< 工程与建筑——建筑结构健康监测 摘要<<<< 在现代城市环境中&#xff0c;重型建筑施工常常必须在毗邻的邻近建筑和结构附近进行&#xff0c;而这些建筑和结构在挖掘和施工期间必须保持开放以供商业或居住使用。 传…

异步编排CompletableFuture

文章目录 一.简介二.并行加载1.为何需要并行加载2.并行加载的实现方式 三.CompletableFuture使用与原理1.背景和定义2.常用方法3.CompletableFuture的使用3.CompletableFuture原理4.实践总结 一.简介 CompletableFuture由Java 8提供&#xff0c;是实现异步化的工具类&#xff…

【效率提升-Perl脚本】根据Verilog文件自动生成tb文件

文章目录 Verilog端口文件&#xff08;仅做示范用&#xff09;对应的tb文件相应代码 在数字IC设计过程中&#xff0c;根据顶层生成testbench时存在很多重复性工作&#xff0c;因此为了提高工作效率&#xff0c;特地开发此脚本。 相应的python脚本见链接&#xff1a; 【效率提升…

Postgresql15安装插件madlib2.0

madlib2.0简介 Apache MADlib madlib使用指南 MADlib: Main Page madlib安装 Installation Guide - Apache MADlib - Apache Software Foundation 准备 cmake 3.5.2及以上版本python3.9postgresql15&#xff0c;源码编译时必须指定 –with-pythonpostgresql插件plpython3u 源…