rtos

W.W.H.2 天前
互斥锁·rtos·互斥量·实时系统·优先级反转·优先级继承
优先级反转问题(含解决案例)优先级反转(Priority Inversion)是实时系统中一个经典问题:当高优先级任务因等待低优先级任务占用的资源而被阻塞时,一个中优先级任务抢占CPU,导致高优先级任务迟迟无法运行。互斥量配合优先级继承协议可以解决这一问题:当低优先级任务持有锁且高优先级任务开始等待时,低优先级任务临时继承高优先级任务的优先级,从而防止中优先级任务抢占,使低优先级任务尽快释放锁。
.普通人5 天前
操作系统·rtos
freertos源码解析(里面的源码来源于另一个博主,我这里只是讲一下我自己的理解)我借鉴的博主文章链接为这个安迪西嵌入式其实这里并不复杂,就是几个if-else语句,先分配栈,如果栈没有分配成功,那么就是让任务控制块为NULL,就表示失败,然后返回 如果成功的话,就分配任务控制块,然后看是否成功,如果没有成功就需要释放刚刚分配的栈的空间,因为如果不释放,那么栈就没有任务可以操作了,就会变成野内存,导致内存泄漏,如果成功的话,就把我们任务控制块中的任务堆栈起始地址指向我们刚刚从内存申请的空间 如果成功了进行下一步新建任务初始化,因为在这里我们只是分配了栈空间,分配了任务控制块TCB,但是
dqsh068 天前
stm32·单片机·嵌入式硬件·rtos·threadx
振兴中华之threadX RTOS移植到stm32用stm32cubeMX 保姆级教程我曾经写了一个PX5 RTOS移植到stm32用stm32cubeMX的保姆级教程,链接如下https://blog.csdn.net/dqsh06/article/details/150612971?spm=1001.2014.3001.5501
Truffle7电子11 天前
stm32·单片机·嵌入式硬件·rtos
STM32理论 —— FreeRTOS:中断管理、列表关于FreeRTOS 的API函数,在FreeRTOS官网文档中都有详细介绍;关于CMSIS OS 所有的API 函数,则在Arm 的CMSIS-RTOS2文档中有详细介绍;下面不一一详细展开;
Truffle7电子11 天前
stm32·嵌入式·rtos
STM32理论 —— FreeRTOS:任务关于FreeRTOS 的API函数,在FreeRTOS官网文档中都有详细介绍,下面不一一详细展开;任务具有以下几个特性:
大熊背16 天前
linux·算法·rtos·isp pipeline·3dnr
ISP离线模式应用(二)-如何利用 ISP 离线模式 加速 3DNR 收敛目录一、先搞懂:实时模式 3DNR 为什么收敛慢?二、离线模式 加速 3DNR 收敛 的核心原理三、利用离线模式加速 3DNR 收敛的 4 种实战方法
aspirestro三水哥17 天前
rtos·xenomai
9.3工欲善其事必先利其器在 Visual Studio Code (VSCode) 中,可以通过设置来实现代码在 80 列时自动换行。 以下是具体步骤:
逆小舟20 天前
嵌入式·c·rtos
【SWM320】FreeRTOS搭建工程——1、框架学习作用:直接操作硬件寄存器,提供底层硬件访问接口FreeRTOS - 实时操作系统内核 lwIP - 轻量级TCP/IP协议栈 FatFS - 文件系统 mbedtls - 加密库 ...
aspirestro三水哥20 天前
rtos·xenomai
9.4贡献自己的第一个patch从哪里入手找到提交代码的机会呢?如果你没有遇到一个切实的bug,那么可用考虑以下几个方面找到一个问题之后,必须在当前最新的开发分支上验证此问题是否存在,否则你可能做的是无用功。例如针对https://source.denx.de/Xenomai/xenomai,应该使用next分支来验证此问题。
大志出奇迹20 天前
c语言·rtos
FreeRTOS中创建任务的顺序是否会影响任务运行的顺序?【面试重点】任务的运行顺序 和 创建顺序 没有任何关系!FreeRTOS 是抢占式调度器,任务执行顺序只由 2 个规则决定:
aspirestro三水哥20 天前
rtos·xenomai
9.2向社区寻求帮助本章节参考:https://v3.xenomai.org/tips/getting-help/获取帮助
aspirestro三水哥22 天前
rtos·xenomai
8.5CPU隔离与亲和性从硬件的角度出发,Cobalt 实时内核可以接管设备中断甚至通过 RTDM 接管整个设备,但是这并不意味着 Cobalt 实时内核可以独占整个硬件系统。
帅得不敢出门23 天前
ide·vscode·macos·freertos·rtos
MacOS安装VSCode在QEMU上模拟跑FreeRtos通过HomeBrew可以很方便的安装各种应用, 在MacOS上安装Homebrew是一个简单的过程,它允许你轻松地安装、更新和管理各种命令行工具和应用程序。以下是安装Homebrew的步骤:
liu_endong24 天前
mcu·rtos·杰发科技·autochips·车规芯片
RTOS基于7840——任务创建、启动、切换、删除7840的例程里面,main函数做了一个开始函数的创建开始函数里面创建了2个任务任务里面做了点灯直接给他屏蔽掉,简化代码
香水5只用六神1 个月前
c语言·stm32·单片机·嵌入式硬件·freertos·rtos·嵌入式软件
【RTOS快速入门】05_动态_静态创建任务(2)可以观察到一直在执行任务一,由此可以得到结论: 对于FreeRTOS来说,高优先级的任务优先执行,如果它没有主动放弃执行任务的话,其他低优先任务无法执行;同等优先级的任务交替执行。
香水5只用六神1 个月前
c语言·stm32·单片机·嵌入式硬件·freertos·rtos·嵌入式软件
【RTOS快速入门】06_任务状态理论讲解(1)本文将讲解任务切换相关的基础和重点讲解任务状态图使用逻辑分析仪观察每次高电平维持的时间经过计算大约为1ms,为什么每个任务都能维持几乎固定的时间进行执行任务呢,这就是因为tick定时器
香水5只用六神1 个月前
单片机·嵌入式硬件·学习·操作系统·freertos·rtos·嵌入式软件
【RTOS快速入门】07_同步互斥与通信概述同一时间只能有一个人使用的资源,被称为临界资源。比如任务A、B都要使用串口来打印,串口就是临 界资源。如果A、B同时使用串口,那么打印出来的信息就是A、B混杂,无法分辨。所以使用串口时, 应该是这样:A用完,B再用;B用完,A再用。
香水5只用六神1 个月前
c语言·开发语言·单片机·嵌入式硬件·freertos·rtos·嵌入式软件
【RTOS快速入门】05_动态_静态创建任务(1)本文书接上文,学习如何静态创建任务。打印50个学生的信息如果要添加学生新的信息还要再定义,如果学生人数发生变化更要大的修改,因此引入结构体面向对象的编程思想进行定义
混分巨兽龙某某2 个月前
stm32·嵌入式硬件·rt-thread·rtos
基于STM32的嵌入式操作系统RT-Thread移植教学(HAL库版本)前言:本文为手把手教学的基于 STM32 的嵌入式系统 RT-Thread 移植教程,使用 STM32F103ZET6 作为核心 MCU 进行操作。本篇博客的教程为纯手动移植 RT-Thread 操作系统,且基于 STM32 的 HAL 库版本进行开发。RT-Thread 作为如今很火的嵌入式实时操作系统被广泛应由于物联网与工业设计等领域,它的设计架构也与 Linux 有异曲同工之妙,从而备受广大工程师好评。希望这篇博文能给读者朋友的工程项目给予些许帮助,Respect(代码开源)!
aspirestro三水哥3 个月前
rtos·xenomai
7.2实时进程如何打印输出在代码中添加打印输出作为调试和监控手段,在软件开发中是最常见的作法。打印输出只需一行 printf() 或 其它语句,就能输出变量值、执行路径等信息,简单而直接,适合快速验证逻辑。