rtos专题

FreeRTOS学习笔记—④RTOS通信管理篇/同步互斥与通信(正在更新中)

二、RTOS的核心功能   RTOS的核心功能块主要分为任务管理、内核管理、时间管理以及通信管理4部分,框架图如下所示:   (1)任务管理:负责管理和调度任务的执行,确保系统中的任务能够按照预期运行。   (2)内核管理:负责系统核心功能的管理,包括内存、中断、异常处理和系统启动等。   (3)时间管理:负责所有与时间相关的操作,包括系统时钟、定时器、任务延迟和周期性任务的执行。   (4)通

基于STM32的RTOS--freertos的使用(HAL实现多任务)

一:STM32cubemx配置         1:工程建立                         (1)打开stm32cubemx  点击进入芯片选择页面                                         (2)选择对应的芯片型号双击         2:调试接口配置                  3:时钟设置

集成电路学习:什么是RTOS实时操作系统

RTOS:实时操作系统         RTOS,全称Real Time Operating System,即实时操作系统,是一种专为满足实时控制需求而设计的操作系统。它能够在外部事件或数据产生时,以足够快的速度进行处理,并在规定的时间内控制生产过程或对处理系统做出快速响应。RTOS的主要特点包括及时响应、高可靠性、多任务处理、确定性、资源管理、优先级调度、中断处理和时间管理等。 一、RT

ESP8266使用ESP8266_RTOS_SDK-3.4开发

参见 windows+mingw32+ESP8266 RTOS SDK开发环境搭建和HelloWorld显示 把从github上拉取的完整的工程,切换分支即可

从屎山代码到RTOS,老工程师的架构进化史

很多老铁和我反馈,说很喜欢看我写的内容,不管是朋友圈还是文章,能在字里行间,受益匪浅。 想想也很久没时间没写长文了,既然大家喜欢看,我尽量抽时间多写。 长文预警,全文5800多字,写了16个小时,如果你想真正深入了解哪些项目需要上RTOS?RTOS有哪些优势?具体能解决产品哪些痛点?请花十分钟,耐心看完,这篇文章比你看一套教程更一针见血,如果你赶时间,建议先点赞+收藏防止找不到。。 前段时间

EtherCAT主站IgH解析(二)-- 如何将Igh移植到Linux/Windows/RTOS等多操作系统

版权声明:本文为本文为博主原创文章,转载请注明出处 https://www.cnblogs.com/wsg1100 如有错误,欢迎指正。 本文简单介绍如何将 igh 移植到 zephyr、freertos、rtems、rtthread等RTOS ,甚至 windows 上。 ##前言 目前,EtherCAT商用主站有:Acontis、TwinCAT3、KPA、Codesys等,开源EtherCA

深入探究RTOS的IPC机制----邮箱

阅读引言: 因为将来工作需要, 最近在深入学习OS的内部机制,我把我觉得重要的、核心的东西分享出来, 希望对有需要的人有所帮助, 阅读此文需要读友有RTOS基础, 以及一些操作系统的基础知识, 学习过Linux的最佳, 特别是想RT-Thread适合Linux非常像的, 代码风格、IPC机制等等。 目录 一、RT-Thread中邮箱的特性 二、 邮箱的源码实现 1,邮箱

实现rtos操作系统 【一】基本任务切换实现

一、实现 PendSV 中断 PendSV是什么 我们先引用《Cortex-M3权威指南》对PendSV的介绍: PendSV(可悬起的系统调用),它是一种CPU系统级别的异常,它可以像普通外设中断一样被悬起,而不会像SVC服务那样,因为没有及时响应处理,而触发Fault。 也就是说 PendSV 是一个中断异常,那 PendSV 和其他的中断异常有什么区别呢?  摘自 Co

ucos抢占式实时多任务操作系统 (RTOS)。

介绍 uCOS (也称为 μC/OS 或 Micro-Controller Operating System) 是一个开源的、可移植的、可裁剪的、抢占式实时多任务操作系统 (RTOS)。它最初由 Jean J. Labrosse 编写,并广泛用于嵌入式系统设计中。uCOS 是一个小型的 RTOS,非常适合那些需要实时性和多任务处理能力的嵌入式系统。 以下是 uCOS 的一些主要特点: 开源

RTOS实时操作系统

常见的RTOS有: VxWorks:广泛应用于工业、医疗、通信和航空航天领域。FreeRTOS:一个开源的RTOS,广泛用于嵌入式设备。uc/OS:一个适用于教育和小型商业项目的RTOS。QNX:主要应用于汽车和工业自动化领域。Windows CE(现在称为Windows Embedded Compact):微软提供的嵌入式操作系统。\ 主要特点包括: 确定性(Determinism):系统

KEA128 移植/嵌入Free_RTOS

话不多说,直接上步骤: 1.准备一个KEA128的空工程,如LED闪烁工程 2.去除工程中的PendSV_Handler和SVC_Handler,以免报错重定义 3.将Free_RTOS相关文件复制入系统,这里我是从原子的工程里面复制来的 4.将RTOS系统文件加入工程,KEA128是CM0+内核的,所以port.c应该选择 portable\RVDS\ARM_CM0中的 5.修改Fre

有哪些情况下是RTOS满足不了需求,必须得上嵌入式linux系统的?

在开始前刚好我有一些资料,是我根据网友给的问题精心整理了一份「嵌入式的资料从专业入门到高级教程」, 点个关注在评论区回复“888”之后私信回复“888”,全部无偿共享给大家!!!用我领导昨天开会时候说的一句话,技术归技术,商业归商业。 很多时候,一个产品的选型,不完全是技术原因。 嵌入式领域,也分“轻量级”的系统和比较“复杂”的系统,我也见过把某些数学库、计算库、复杂的协议栈移植到RTO

rtos定时器不起作用原因之逻辑问题

在使用RTOS过程中突然发现定时器不起作用。 先分析原因,因为定时器也是一个任务,所以也有自己的任务优先级。如果当有高级任务由于自己代码逻辑BUG卡在某个循环里,那么按任务调度规则来看,那么定时器就永远得不到CPU所以导致定时器看起来,不起作用。 /* Software timer definitions. */#define configUSE_TIMERS 1#define co

RTOS笔记--信号量+互斥量+事件组

信号量的本质         信号量是一个特殊的队列,但并不涉及数据传输,因此不需要读写位置和发送者列表,但是多了一个最大计数值。         个人理解:信号量类似一个加入了保护机制的全局变量,不会因为中断切换的原因而导致数据出错。         信号量的操作分为:take和give,当信号量为0时,take操作可以延迟,但是give操作不可以延迟,当信号量有数字后将会唤醒take操作

RTOS笔记——队列

队列         队列的本质就是环形缓冲区,在环形缓冲区的基础上增加了一些保护措施和阻塞唤醒机制,而因为增加了保护机制因此环形缓冲区中有读写位置和数据个数         从读的一方理解队列运行逻辑:有任务AB,任务B需要等待任务A计算获取数据后再运行,任务B读队列为空时进入休眠,设置等待时间,在等待时间内任务A计算完成将数据放置于缓冲区就会将B唤醒,如果等待时间超时则由tick中断自动唤

主流 RTOS 实时操作系统介绍

主流 RTOS 实时操作系统介绍 1 介绍1.1 概述1.2 RTOS 应用领域1.3 知名实时系统VRTXpSOSOS-9embOSAzure RTOS 【ThreadX 】OpenWrt 【路由】Mbed OS 【ARM 公司开发】VxWorks 【KUKA、ABB、etc】LynxOSQNXNucleusTHREADXuC/OS –II/III 【Silicon Labs 收购,更新频

RTOS(ENV)串口DMA接收GPS数据并解析

RTOS(ENV)配置STM32串口DMA接收模式 环境: RTOS 4.0.3Keil5ENVSTm32l475 ENV配置 使能串口: 2. 使能DMA,并设置接收缓冲区大小: 创建工程 scons --target=mdk 工程配置 1. 创建串口设备句柄 #define SAMPLE_UART_NAME "uart2" /* 串口设备名称 */rt_dev

esp8266的rtos和nonos区别

https://bbs.espressif.com/viewtopic.php?t=75242#p100294 https://blog.csdn.net/ydogg/article/details/72598752

RTOS 在 stm32f407 探索者上的移植(五) ucos3 移植

ucos3 STM32_F4_explorer\探索者F4 资料盘(A盘)\6,软件资料\2,UCOS学习资料\UCOSIII资料STM32_F4_explorer\探索者F4 资料盘(A盘)\4,程序源码\3,扩展例程\4,UCOS扩展例程\例4-1 UCOSIII移植 ucos3资料

RTOS 在 stm32f407 探索者上的移植(四) ucos2 移植

ucos2 // 正点原子官网 smt32 探索者配套资料中有资料STM32_F4_explorer\探索者F4 资料盘(A盘)\6,软件资料\2,UCOS学习资料\UCOSII资料STM32_F4_explorer\探索者F4 资料盘(A盘)\4,程序源码\3,扩展例程\4,UCOS扩展例程\例1-1 UCOSII移植 ucos2资料

1-1 CubeMX配置第一个RTOS工程

CubeMX配置第一个RTOS工程 1: 打开cubeMX软件选择单片机型号 软件刚刚安装仍然需要加载 配置RCC时钟:开启RCC时钟 打开芯片使能仿真功能 这里使用为GD32芯片,芯片的引脚由原理图给出 PA8 与PE13是引脚:将引脚配置为输出模式 配置GPIO通用输入输出引脚:配置为开漏输出模式 配置串口:查看打印输出结果

rtos:zephyr同步alerts(通知)

alert可以同linux平台下的signal。 alert的初始化: 方法1: extern int my_alert_handler(struct k_alert *alert);struct k_alert my_alert;k_alert_init(&my_alert, my_alert_handler, 10); 方法2: extern int my_alert_handler

rtos:zephyr工作队列的初始化

工作队列的初始化: #define MY_STACK_SIZE 512#define MY_PRIORITY 5K_THREAD_STACK_DEFINE(my_stack_area, MY_STACK_SIZE);struct k_work_q my_work_q;k_work_q_start(&my_work_q, my_stack_area,K_THREAD_STACK_SIZEOF(m

rtos:zephyr的网络子系统的api接口介绍

初始化:在如果应用需要一个ipv4 的地址,如果一个DHCPv4被使能,应用程序开始之前,需要确定设备能够得到一个ipv4的地址。 设置:在网络子系统中有多种选择,在应用开始之前工程里面需要一个配置文件,配置如:IP地址,IEEE802.15.4等。 创建:创建一个TCP,udp的服务器和客户端。 初始化: CONFIG_NET_APP_AUTO_INIT CONFIG_NET_APP_INIT

嵌入式RTOS面试题目

用过哪些嵌入式操作系统?使⽤RTOS和裸机代码开发有什么区别(优缺点)?  之前的⼀个项⽬是采⽤裸机代码开发的,写起来还⾏,通过状态机来管理业务逻辑和各种外设。 但是随着外设的增加,任务之间的同步和并⾏处理的逻辑增加,写起来就会越来越麻烦,这时就引⼊了操作系统。写代码就变得容易很多。 操作系统的作⽤,⽅便管理任务,管理延时,管理内存,管理任务间通讯。   有移

浅析Free RTOS任务

目录 概述 1 FreeRTOS任务定义 2 任务函数实现 2.1 任务函数原型 2.2 顶层任务状态 2.3 任务优先级 3 任务状态的扩展 3.1 阻塞状态 3.2 挂起状态 3.3 就绪状态 4 空闲任务与空闲任务钩子函数 4.1 空闲任务 4.2 空闲任务钩子函数 4.2.1 钩子函数介绍 4.2.2 空闲任务钩子函数的实现限制 4.2.3 空闲任务钩子函数