关于学习RTThread的随笔

2023-05-16

认识操作系统

关于单片机的学习是从51到ARM,慢慢的接触到了操作系统,开始也不明白是什么,就跟着原子哥的例程学,也不知道哪个好?开始学UCOS,后来又用学了FreeRTOS,感觉这两个操作系统也差不多,只能跟着教程学,学了感觉自己是懂了,但是也不知道要怎么使用。而且感觉还是裸机更好用,完全体会不到操作系统的好。所以那时候就问自己,然后呢?

然后呢?

例程跑一跑,其实完全没有掌握,一个机缘巧合,接触到了RTThread,正好也有个物联网的项目想用这个操作系统,于是就开始学。
开始以为会和UCOS一样,跑一跑例程之类的,但是接触了以后,发现这个完全不一样,与其说是RTOS还不如说是简化版的linux,好处是有各种框架,软件包,资源很丰富而且开源,坏处是感觉很复杂。开始有点想放弃,但是因为项目要做,所以就硬着头皮学。

学习过程

RTthread的优点在于,他有个中文的文档中心
https://www.rt-thread.org/document/site/#/
讨论的社区
https://club.rt-thread.org/index.html
而且B站上就有教学视频。
一开始就是看内核,看和野火合作的那个nano版本的教程,然后就是看文档中心的那个Demo示例。
不要以为使用这个就很难,如果你使用STM32系列的,官方早就移植好了,用keil甚至只要点一下,就可以把内核代码直接加到工程内,然后按照野火的教程,把内核所有的例子都跑一遍。先掌握内核。
RTThread 的版本区别
NANO
这个版本我简单认为就是,在你裸机的基础上增加了一个操作系统的内核,你可以执行多线程的任务,但是缺点就是很多驱动还是要你自己写。
标准版
这个版本会比较复杂,也比较大,首先就是你下载这个标准版后,在文件中会有个BSP的文件夹,也就是各个硬件板子对应的移植好的文件。
ENV开发工具
这个就是一个图形的配置菜单,它的功能就是帮助你完成工程的构建,简单来说就是比如你在菜单中选择了一个SIM7600的芯片,那么他会把SIM7600相关的驱动文件下载下来,在keil中给你自动添加进来,然后定义好一些宏定义,比如你用的是那个串口驱动之类的,总之就是用菜单的方式自动帮你完成工程文件的配置。(具体过程可以自行了解)。但是这个ENV工具也不是全能的,有些你自己加的驱动,没有现成组件的话,需要自己添加,

未完待续

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

关于学习RTThread的随笔 的相关文章

  • kube-ovn代码系列(四)pod 安全组功能

    kube ovn代码系列 xff08 四 xff09 pod 安全组功能 链接 https www gogo dev com index php 2022 02 19 kube ovn securitygroup 内容 kube ovn在1
  • Ubuntu20.04下运行VINS系列:VINS-Mono、VINS-Fusion和GVINS

    文章目录 一 安装VINS Mono1 1 适配Ceres2 1 01 2 适配OpenCV41 3 编译运行 二 安装VINS Fusion2 1 适配Ceres2 1 0和OpenCV42 2 编译运行2 2 1 EuRoC数据集2 2
  • 最小花费

    题目描述 在n个人中 xff0c 某些人的银行账号之间可以互相转账 这些人之间转账的手续费各不相同 给定这些人之间转账时需要从转账金额里扣除百分之几的手续费 xff0c 请问A最少需要多少钱使得转账后B收到100元 输入格式 第一行输入两个
  • 传感器融合sensor fusion

    自动控制系统中的传感器融合 传感器融合的4个作用 xff1a 1 增加数据质量 比如减少噪声 xff1b 2 增加可靠性 多传感器互为备份 xff1b 3 估计预测状态 xff1b 4 可增加被测范围 相对于单个传感器来说 xff0c 多传
  • 摄像机成像原理(模型)与标定

    一般摄像机简化为小孔成像的理想模型 xff08 线性模型 xff09 xff0c 因为摄像机镜头 xff08 视场角 xff09 很小 xff0c 相当于被拍摄物体通过小孔投影到感光元件CCD CMOS上 对于加了各种镜头的摄像机 xff0
  • 实习周记2

    在组长准备给我布置小任务的时候 xff0c 公司开了一个新的项目并且缺前端 xff0c 我就被分配到新项目中去 xff0c 这个项目使用 angular 43 bootstrap前端框架 这不是一个初次开发的项目 xff0c 而是一个需要修
  • OBJ可视化——UV还原(修正)

    前言 前面写过一篇obj格式解析的博客 xff0c 但是这篇文章中可视化的工作是参考PRNet的源码进行的 xff0c 后来细细思考了一下 xff0c 有点问题 xff0c 具体看下面 问题来源 在PRNet源码的render py中有个函
  • Unity中BVH骨骼动画驱动的可视化理论与实现

    前言 找了很久使用BVH到unity中驱动骨骼动画的代码 xff0c 但是都不是特别好用 xff0c 自己以前写过 xff0c 原理很简单 xff0c 这里记录一下 理论 初始姿态 在BVH或者其它骨骼动画中 xff0c 一般涉及到三种姿势
  • 卡通驱动项目ThreeDPoseTracker——模型驱动解析

    前言 之前解析过ThreeDPoseTracker这个项目中的深度学习模型 xff0c 公众号有兄弟私信一些问题 xff0c 我刚好对这个项目实现有兴趣 xff0c 就分析一波源码 xff0c 顺便把问题解答一下 这个源码其实包括很多内容
  • 卡通驱动项目ThreeDPoseTracker——关键点平滑方案解析

    前言 之前对ThreeDPoseTracker的深度学习模型和unity中的驱动方法进行过解析 xff0c 还有一个比较重要的就是从深度学习模型出来的3D关键点数据会有抖动 xff0c 在ThreeDPoseTracker源码中有做两次平滑
  • 卡通角色表情驱动系列一

    前言 分析完ThreeDPoseTracker来做卡通角色的身体驱动 xff0c 接下来在卡通驱动领域还有一个是表情驱动 对这个真的是一窍不通啊 xff0c 只能慢慢看论文了 国际惯例 xff0c 参考博客 论文 xff1a Landmar
  • opencv相机标定和人头姿态估计案例

    前言 头部驱动除了之前关注的表情驱动外 xff0c 还有眼球驱动和头部方向驱动 本博客基于opencv官方文档和部分开源代码来研究如何基于人脸关键点获取头部的朝向 国际惯例 xff0c 参考博客 xff1a opencv Camera Ca
  • 卡通角色表情驱动系列二

    前言 之前介绍了使用传统算法求解BS系数的表情驱动方法 xff0c 其中提到过的三种方法之一是基于网格形变迁移做的 xff0c 那么这篇文章就是对 Deformation Transfer for Triangle Meshes 做表情驱动
  • HDU 1085 Holding Bin-Laden Captive!(母函数)

    HDU 1085 Holding Bin Laden Captive xff08 母函数 xff09 题目地址 题意 xff1a 给你cnt1个一元硬币 xff0c cnt2个两元硬币 xff0c cnt3个五元硬币 xff0c 问不能凑出
  • UE自带重定向原理

    UE自带重定向方法验证 核心源码在VS的解决方案中的位置 xff1a UE4 Source Developer AssetTools Private AssetTypeActions AnimSequence cpp中第3237行Remap
  • matlab之bsxfun函数

    lt span style 61 34 font size 18px color ff0000 34 gt 简单的调用方法 xff1a lt span gt bsxfun 64 plus xff0c A xff0c B xff0c 其中 6
  • 关于协方差矩阵需要注意的一个事项

    协方差矩阵是衡量样本的属性 即维度 之间的关系 xff0c 而不是样本与样本之间的关系 比如有100个样本 xff0c 每个样本10个属性 xff0c 那么计算得到的协方差矩阵一定是10 10的 xff0c 而不是100 100的 xff0
  • 【caffe-Windows】caffe+VS2013+Windows+GPU配置+cifar使用

    前言 国际惯例 xff0c 先来波地址 xff1a CUDA WIN7 xff1a 链接 xff1a http pan baidu com s 1nvyA3Qp 密码 xff1a h0f3 官方网址 xff1a https develope
  • 【caffe-Windows】以mnist为例lmdb格式数据

    前言 前面介绍的案例都是leveldb的格式 xff0c 但是比较流行和实用的格式是lmdb xff0c 原因从此网站摘取 它们都是键 值对 xff08 Key Value Pair xff09 嵌入式数据库管理系统编程库 虽然lmdb的内
  • 【theano-windows】学习笔记十——多层感知机手写数字分类

    前言 上一篇学习了softmax 然后更进一步就是学习一下基本的多层感知机 MLP 了 其实多层感知机同时就是w x 43 b用某个激活函数激活一下 得到的结果作为下一层神经元的输入x 类似于 o u t p u t 61 f 3 f 2

随机推荐

  • 【theano-windows】学习笔记二十——LSTM理论及实现

    前言 上一篇学习了RNN xff0c 也知道了在沿着时间线对上下文权重求梯度的时候 xff0c 可能会导致梯度消失或者梯度爆炸 xff0c 然后我们就得学习一波比较常见的优化方法之LSTM 国际惯例 xff0c 参考网址 xff1a LST
  • 【TensorFlow-windows】keras接口——ImageDataGenerator裁剪

    前言 Keras中有一个图像数据处理器ImageDataGenerator xff0c 能够很方便地进行数据增强 xff0c 并且从文件中批量加载图片 xff0c 避免数据集过大时 xff0c 一下子加载进内存会崩掉 但是从官方文档发现 x
  • 梯度下降法与Logistic Regression 及 Matlab 代码

    梯度下降法与Logistic Regression 及 Matlab 代码 前言Logistic回归梯度下降法例子1 xff0c 固定学习率改进1 xff1a 正则化改进2 xff1a 动态学习率查看分类效果不足完整代码 前言 本质是一个求
  • ONOS 控制器安装和app新建和编译

    1 1 ONOS 控制器编译与安装 ONOS 1 8 版本起强制使用 BUCK 构建工具 xff0c 不再使用 maven xff0c 编译和打包方式与旧版本有所区别 步骤 xff1a 配置环境 gt 下代码 gt 编译 gt 运行 配置环
  • SQLyog(navica)连接docker容器中的mysql8.0.12 报错1251或2003解决办法

    使用SQLyog xff08 navicat xff09 远程连接docker容器中的mysql8 0 12 报以下错误 解决办法 xff1a 一 在docker中启动mysql 定义端口号3306 root 64 localhost do
  • TTY 到底是个什么玩意?

    先来回答一道面试题 xff1a 我们知道在终端中有一些常用的快捷键 xff0c Ctrl 43 E 可以移动到行尾 xff0c Ctrl 43 W 可以删除一个单词 xff0c Ctrl 43 B 可以向前移动一个字母 xff0c 按上键可
  • 如何画好一份架构图

    先说答案 画架构图分四步走 xff1a 第一 xff0c 搞清楚要画的架构图的类型 xff1b 第二 xff0c 确认架构图中的关键要素 xff08 比如产品 技术 服务 xff09 xff1b 第三 xff0c 梳理关键要素之间的关联 x
  • NVIDIA Jetson Xavier NX 深度学习相关组件安装

    一 tensorflow的安装 写在前面的牢骚话 xff08 可选择直接跳过 xff09 在写安装tensorflow的教程之前 xff0c 我一定要放出当时我安装tensorflow时所遇到的那些莫名其妙的错误 xff0c 具体错误如下图
  • Python - Decorator(装饰器) - 带参数的

    我们通过以示例来看看带参数的装饰器到底怎么回事 from time import perf counter from functools import wraps def repeated times def outer fn 64 wra
  • 2020塔式起重机司机考试及塔式起重机司机考试软件

    题库来源 xff1a 安全生产模拟考试一点通公众号小程序 2020塔式起重机司机考试及塔式起重机司机考试软件 xff0c 包含塔式起重机司机考试答案解析及塔式起重机司机考试软件练习 由安全生产模拟考试一点通公众号结合国家塔式起重机司机考试最
  • 2020煤炭生产经营单位(安全生产管理人员)操作证考试及煤炭生产经营单位(安全生产管理人员)模拟考试软件

    题库来源 xff1a 安全生产模拟考试一点通公众号小程序 2020煤炭生产经营单位 xff08 安全生产管理人员 xff09 操作证考试及煤炭生产经营单位 xff08 安全生产管理人员 xff09 模拟考试软件 xff0c 包含煤炭生产经营
  • 嵌入式系统 Boot Loader 技术内幕

    内容 xff1a 1 引言 2 Boot Loader 的概念 3 Boot Loader 的主要任务与典型结构框架 4 关于串口终端 5 结束语 关于作者 对于本文的评价 在 Linux 专区还有 xff1a 教程 工具与产品 代码与组件
  • PADS VX2.8 PCB版本的降低方法

    在PCB设计过程中 xff0c 可能会遇到不同版本的PCB文件 xff0c 高版本软件可以兼容低版本 xff0c 反之则不能 为了提高兼容性 xff0c 可以将拿到的高版本PCB文件降低为低版本 xff0c 以配合使用低版本软件打开 打开P
  • Ubuntu16.04 速腾rslidar-32线激光雷达使用详细记录

    0 rslidar 32线激光雷达参数 线束 xff1a 32线波长 xff1a 905nm激光等级 xff1a class1精度 xff1a 5cm xff08 典型值 xff09 测量距离 xff1a 0 2m 200m xff08 目
  • useradd 与 adduser

    useradd 选项 用户名 参数如下 xff1a c comment 指定一段注释性描述 d 目录 指定用户主目录 xff0c 如果此目录不存在 xff0c 则同时使用 m选项 xff0c 可以创建主目录 g 用户组 指定用户所属的用户组
  • Python——sqlalchemy.exc.ArgumentError

    报错信息 xff1a sqlalchemy exc ArgumentError Mapper mapped class XmjbqZby gt xmjbq zby could not assemble any primary key col
  • VirtualBox虚拟机ping不通主机,但是主机可以ping通虚拟机

    解决VirtualBox虚拟机不能ping通宿主机的问题 问题描述 在VirtualBox虚拟中 xff0c 无法ping通宿主机 xff0c 宿主机可以ping通虚拟机 虚拟机的网络已经设置为 桥接网卡 xff0c 也可以正常上网 解决方
  • RTThread-W25Q128的驱动基于SPI和SFUD

    文章目录 前言一 kconfig的配置1 配置对应的SPI和SFUD 二 SFUD的使用W25Q128的读写操作 三 关于写入的问题 前言 本文是一个初学者的学习记录 xff0c 可能有误 SFUD是针对flash的一种通用的组件 xff0
  • RT-Thread 基于QSPI驱动LY68L6400-SRAM

    前言 使用的是RTThread 标准版 xff0c 主控是STM32H743 xff0c SRAM是LY68L6400 xff0c 使用QSPI QSPI和SPI的区别 个人理解最大的区别就是SPI是串行 xff0c 数据输出 xff0c
  • 关于学习RTThread的随笔

    认识操作系统 关于单片机的学习是从51到ARM xff0c 慢慢的接触到了操作系统 xff0c 开始也不明白是什么 xff0c 就跟着原子哥的例程学 xff0c 也不知道哪个好 xff1f 开始学UCOS xff0c 后来又用学了FreeR