嵌入式RTOS
文章平均质量分 95
树 哥
一名练习时长两年半的嵌入式工程师...热爱技术,秃破自我~
展开
-
ThreadX应用笔记:内核初始化和任务调度
作者:zzssdd2E-mail:zzssdd2@foxmail.com一、前言了解ThreadX的初始化流程有助于移植使用,掌握任务的的调度有助于更加得心应手地运用该实时操作系统。二、初始化流程官方手册给出的ThreadX初始化流程如下图所示:以STM32F429 + MDK-ARM-AC6平台举例,初始化流程的前3步在startup_stm32f429xx.s文件中完成 ,该启动文件内容是STM32复位后首先执行的,主要完成以下操作:设置堆栈( __initial_sp、__hea.原创 2021-01-12 21:52:10 · 1970 阅读 · 0 评论 -
ThreadX——IPC应用之消息队列
作者:zzssdd2E-mail:zzssdd2@foxmail.com一、应用简介消息队列是RTOS中常用的一种数据通信方式,常用于任务与任务之间或是中断与任务之间的数据传递。在裸机系统中我们通常会使用全局变量的方式进行数据传递,比如在事件发生后在中断中改变数据和设置标志,然后在主循环中轮询不同的标志是否生效来对全局数据执行不同的操作,执行完毕后清除相关标志。但是这种方式需要不断地轮询标志状态,使得CPU的利用率并不高。而使用RTOS的消息队列则具有任务阻塞机制,当没有需要处理的消息...原创 2020-12-23 00:02:44 · 554 阅读 · 0 评论 -
ThreadX——IPC应用之信号量
一、应用简介在RTOS的应用开发中,信号量也是经常使用到的一种用于多任务之间信息同步、资源互斥访问的一种手段,常用于协调多个任务访问同一资源的场景。信号量又分为计数信号量和互斥信号量。计数信号量可以表示整体资源数量,当获取一个资源后计数信号量减一,释放一个资源后计数信号量加一,当信号量为0时即表明资源被全部分配导致无法再获取资源,任务可以挂起等待直到有资源可用。互斥信号量是可以理解为只能维护资源数量为1的二值计数信号量(值为0或1),但是互斥信号量又不同于计数信号量,因为它还具有优先级继承的机制(优先级继原创 2020-12-13 21:01:01 · 294 阅读 · 0 评论 -
ThreadX——IPC应用之事件标志
一、应用简介在RTOS的应用开发中,事件标志主要是用来进行任务之间的事件通知。例如有A和B两个任务,A任务负责接收消息,B任务负责对消息响应。当A任务接收到消息后设置响应标志,B任务监测到响应标志被设置就执行消息响应。事件标志没被设置的时候任务是不会占用CPU的,不用像裸机程序那样不断轮询事件的发生。事件标志通知的方式使得CPU的利用率更高,这也是使用RTOS的优势之一。二、API说明下面列出使用事件标志组时常用的几个函数1、创建事件标志组描述:该函数会创建一个包含32个事件标志的事件原创 2020-12-05 23:48:02 · 423 阅读 · 0 评论 -
ThreadX移植——STM32H7+MDK-AC6平台
一、前言在uCOS全家桶宣布开源之后被微软收购的ThreadX也开源了,真是喜大普奔,对于我们这些嵌入式行业从业者来说,能够学习这些高含金量的代码对于眼界的开拓和能力的提升都是很有帮助的。ThreadX还包含了NETX、GUIX、FILEX、USBX等丰富的组件,几乎包含了嵌入式开发中的所有场景,这些组件和ThreadX-RTOS能够完美的配合完成一条龙的开发。ThreadX的github地址:[Azure RTOS (github.com)]:二、准备ThreadX在更新了几个版本之后已经提供了多个原创 2020-12-05 03:34:12 · 1393 阅读 · 0 评论