news 2026/8/4 17:33:54

【RTOS快速入门】01_单片机架构

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【RTOS快速入门】01_单片机架构

文章目录

  • 前言
  • 一、RTOS的概念
    • 1.1 用人来类比单片机程序和RTOS
      • 1.1.1 我无法一心多用
      • 1.2.2 我可以一心多用
    • 1.2 程序简单示例
  • 二、 架构的概念
    • 2.1 用人来类比电子产品
    • 2.2 要深入理解RTOS就必须深入理解CPU架构

前言

本系列文章基于百问网文档进行编写,帮助我快速学习FreeRTOS。希望我可以坚持下来,不断深入钻研,不断有效学习进步!

一、RTOS的概念

1.1 用人来类比单片机程序和RTOS

妈妈要一边给小孩喂饭,一边加班跟同事微信交流,怎么办?

1.1.1 我无法一心多用

对于单线条的人,不能分心、不能同时做事,她只能这样做:

  • 给小孩喂一口饭
  • 瞄一眼电脑,有信息就去回复
  • 再回来给小孩喂一口饭
  • 如果小孩吃这口饭太慢,她回复同事的信息也就慢了,被同事催:你半天都不回我?
  • 如果回复同事的信息要写一大堆,小孩就着急得大哭起来。

这种做法,在软件开发上就是一般的单片机开发,没有用操作系统。

1.2.2 我可以一心多用

对于眼明手快的人,她可以一心多用,她这样做:

  • 左手拿勺子,给小孩喂饭
  • 右手敲键盘,回复同事
  • 两不耽误,小孩“以为”妈妈在专心喂饭,同事“以为”她在专心聊天
  • 但是脑子只有一个啊,虽然说“一心多用”,但是谁能同时思考两件事?
  • 只是她反应快,上一秒钟在考虑夹哪个菜给小孩,下一秒钟考虑给同事回复什么信息

这种做法,在软件开发上就是使用操作系统,在单片机里叫做使用RTOS。

RTOS的意思是:Real-time operating system,实时操作系统。

我们使用的Windows也是操作系统,被称为通用操作系统。使用Windows时,我们经常碰到程序卡死、停顿的现象,日常生活中这可以忍受。

但是在电梯系统中,你按住开门键时如果没有即刻反应,即使只是慢个1秒,也会夹住人。

在专用的电子设备中,“实时性”很重要。

1.2 程序简单示例

// 经典单片机程序voidmain(){while(1){喂一口饭();回一个信息();}}------------------------------------------------------// RTOS程序喂饭(){while(1){喂一口饭();}}回信息(){while(1){回一个信息();}}voidmain(){create_task(喂饭);create_task(回信息);start_scheduler();while(1){sleep();}}

二、 架构的概念

2.1 用人来类比电子产品

在电子系统中,CPU就是大脑,CPU有很多种类别,被称为架构。

常见的有:

  • ARM:
    目前主流的架构,用得最广,芯片公司需要付费购买,再搭配各种模块才能设计出芯片。
    目前华为被美国制裁,无法获得最新的ARM架构;
    对于其他公司,购买ARM新架构的价格也不低。
  • RISC-V:
    后起之秀,开源、免费。
    目前华为海思的HI3861、乐鑫的ESP32-C3等芯片,都是使用RISC-V的单片机芯片;
    平头哥和全志的D1芯片,是使用RISC-V的、能运行Linux的芯片;
    RISC-V作为全新的架构,没有历史包袱,设计优美,在技术上大有可为,另外它开源无需授权,能摆脱技术的卡脖子问题。

2.2 要深入理解RTOS就必须深入理解CPU架构

如果只是使用别人移植好的RTOS来写程序,当然不需要了解CPU架构。

甚至编写驱动程序时,也不需要了解CPU架构:因为我们操作的是CPU之外的设备,不是操作CPU。

但是,如果你想达到如下目标,就需要先了解CPU架构:

  • 深入理解RTOS的内部实现
  • 移植RTOS
  • 解决疑难问题
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/2 23:07:58

火焰动画 - 91行代码内的终端创意项目

项目简介这是一个完全运行在终端中的动态火焰模拟程序。它使用字符和ANSI颜色,在终端中渲染出逼真的火焰燃烧效果。代码简洁精炼,总行数严格控制在91行以内(含空行和注释),充分展示了用少量代码实现有趣视觉效果的编程…

作者头像 李华
网站建设 2026/8/2 23:08:00

大学生挑战杯创新创业项目计划书、比赛案例资料等

2025大学生创业创新挑战杯项目计划书 商业计划书PPT,word版创业计划书(80种行业)商业计划书,syb,互联网,创青春,挑战杯,全都有 包含各行各业,竞赛案例,过去国…

作者头像 李华
网站建设 2026/8/2 23:08:03

基于深度学习的改进yolo的猫狗皮肤疾病图像识别数据集 皮肤识别数据集 物医疗智能诊断系统研发识别 宠物健康管理平台开发第10540期 改进yolo+deepseek qwen大模型

宠物皮肤病检测数据集数据集核心信息维度详情类别数量4类类别名称皮炎、跳蚤过敏、癣、疥疮数据总量1600条标注样本数据格式YOLO格式(包含图片文件、txt标注文件,标注内容涵盖类别ID、目标中心点坐标、宽高归一化数值)核心应用价值1. 支撑宠物…

作者头像 李华
网站建设 2026/8/2 23:08:06

Python开发环境配置及实例练习

一.实验目的:安装 Python 解释器,并配置好 Python 环境。除了自带 IDLE 开发环境外,尝试配置使用 VScode、Pycharm 等其它开发工具。使用交互式和文件式两种方式运行 5 个实例程序二.实验环境(或实验设备)硬…

作者头像 李华
网站建设 2026/8/2 23:08:07

Flutter 组件 cloudinary_url_gen 适配鸿蒙 HarmonyOS 实战:高性能多媒体资产治理,构建动态 URL 处理与全场景 CDN 交付一致性治理架构

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.csdn.net Flutter 组件 cloudinary_url_gen 适配鸿蒙 HarmonyOS 实战:高性能多媒体资产治理,构建动态 URL 处理与全场景 CDN 交付一致性治理架构 前言 在鸿蒙(Op…

作者头像 李华