当前位置: 首页 > article >正文

嵌入式学习笔记 - freeRTOS任务设计要点

一 中断函数中不允许操作任务

因为中断函数使用的上下文环境是MSP环境,而非PSP环境,不允许挂起任务,不允许阻塞任务的任何操作。

可以使用FromISR函数进行操作。

二 中断的频率与处理时间

中断的处理时间要远低于任务的运行时间,不然将会一直执行中断

高优先级任务尽量频率低一些,否则低优先级得不到运行

三 空闲任务

空闲任务的优先级最低,不允许出现阻塞,包括空闲任务的钩子函数,否则cpu指令将停止,造成硬件错误

四 任务执行时间

优先级越高的任务执行时间尽量短一些间隔时间长一些,这样给低优先级的任务多一些运行的机会。或者说处理时间短的任务可以设置的优先级高一些。

http://www.lryc.cn/news/2400788.html

相关文章:

  • Linux运维笔记:1010实验室电脑资源规范使用指南
  • 12:点云处理—调平,角度,平面度,高度,体积
  • Marketo 集成 8x8 Connect 短信 API 指南
  • 【Docker 从入门到实战全攻略(二):核心概念 + 命令详解 + 部署案例】
  • Elasticsearch索引(Index)介绍,它与数据库中的表有什么区别?
  • Elasticsearch中什么是分析器(Analyzer)?它由哪些组件组成?
  • 使用 SseEmitter 实现 Spring Boot 后端的流式传输和前端的数据接收
  • .net Avalonia 在centos部署
  • MyBatis深度解析:XML/注解配置与动态SQL编写实战
  • 面试经验 对常用 LLM 工具链(如 LlamaFactory)的熟悉程度和实践经验
  • 【conda配置深度学习环境】
  • 力扣4.寻找两个正序数组的中位数
  • 【相机基础知识与物体检测】更新中
  • 【前端】性能优化和分类
  • PPO和GRPO算法
  • ceph 对象存储用户限额满导致无法上传文件
  • rk3588 上运行smolvlm-realtime-webcam,将视频转为文字描述
  • 某航参数逆向及设备指纹分析
  • SQL思路解析:窗口滑动的应用
  • Rust 学习笔记:Box<T>
  • C# 从 ConcurrentDictionary 中取出并移除第一个元素
  • 操作系统学习(十三)——Linux
  • NLP学习路线图(二十二): 循环神经网络(RNN)
  • 每日一C(1)C语言的内存分布
  • Photoshop使用钢笔绘制图形
  • 应用层协议:HTTP
  • 复习——C++
  • SPI通信协议(软件SPI读取W25Q64)
  • PostgreSQL-基于PgSQL17和11版本导出所有的超表建表语句
  • JavaWeb:前后端分离开发-部门管理