嵌入式实时操作系统
偏执灬
原创博客虽有所摘录,但都是从零开始的自学笔记,有事请联系邮箱,824229769@qq.com
展开
-
嵌入式FreeRTOS操作系统原理
1、FreeRTOS操作系统功能作为一个轻量级的操作系统,FreeRTOS提供的功能包括:任务管理、时间管理、信号量、消息队列、内存管理、记录功能等,可基本满足较小系统的需要。FreeRTOS内核支持优先级调度算法,每个任务可根据重要程度的不同被赋予一定的优先级,CPU总是让处于就绪态的、优先级最高的任务先运行。FreeRT0S内核同时支持轮换调度算法,系统允许不同的任务使用相同的优先级,转载 2016-09-23 10:48:21 · 7406 阅读 · 0 评论 -
嵌入式FreeRTOS操作系统FreeRTOSConfig.h配置文件解读
FreeRTOS内核是高度可定制的,使用配置文件FreeRTOSConfig.h进行定制。每个FreeRTOS应用都必须包含这个头文件,用户根据实际应用来裁剪定制FreeRTOS内核。这个配置文件是针对用户程序的,而非内核,因此配置文件一般放在应用程序目录下,不要放在RTOS内核源码目录下。 在下载的FreeRTOS文件包中,每个演示例程都有一个FreeRTOSConfig.h转载 2016-09-23 15:25:44 · 10935 阅读 · 0 评论 -
嵌入式FreeRTOS操作系统中断优先级配置(重要)
本章节为大家讲解FreeRTOS中断优先级配置,此章节非常重要,初学者经常在这里犯迷糊。对于初学者来说,本章节务必要整明白。12.1 NVIC基础知识12.2 使用FreeRTOS时如何配置外设NVIC12.3 FreeRTOS配置选项中NVIC相关配置12.4 不受FreeRTOS管理中的的深入讨论12.5总结 12.1 NVIC基础知识转载 2016-09-23 16:49:48 · 20459 阅读 · 8 评论 -
嵌入式操作系统之信号量,互斥信号量,事件标志组
ucos看了也有一周多了,索性源码都能开得懂,并且能去理解。昨天一开始看事件标志组的时候确实不知道怎么回事,后来百度一下,明白了事件标志组的作用 以后,再去看书上的讲解和原码就清晰多了,很容易就明白了他的基本运行机理。这也给了我一点启示,学一个东西,看一个东西之前,你最少要知道他干嘛用的, 如果连干嘛用的都知道书看的再熟也是枉然。 ucos中提供了好几个用于同步事件以及共享资源访问的转载 2016-12-02 15:24:20 · 3331 阅读 · 0 评论 -
嵌入式操作系统之信号量,消息队列,邮箱的区别
一:UCOS是一种抢占式的多任务操作系统,如果最高优先级的任务不主动放弃CPU的使用的话,其他任务是无法运行的,通常情况下,高优先级的任务在使用完CPU或其他资源后都要主动放弃,可以通过延时函数或者时等待一些信号量之类的让自己挂起。但是如果最高优先级任务一直使用CPU,那就跟单任务没有什么区别了。二:可以通过等待信号量,消息等是当前任务挂起,或者通过通过延时函数将任务挂起,从而让其他优先级转载 2016-12-02 15:51:44 · 12716 阅读 · 1 评论 -
嵌入式操作系统之任务调度
一般来说, 我们会在程序开始先创建若干个任务, 而此时任务调度器还没又开始运行,因此每一次任务创建后都会依据其优先级插入到就绪链表,同时保证全局变量 pxCurrentTCB 指向当前创建的所有任务中优先级最高的一个,但是任务还没开始运行。 当初始化完毕后,调用函数 vTaskStartScheduler启动任务调度器开始开始调度,此时,pxCurrentTCB所指的任务才开始运行。 所以转载 2016-12-07 22:45:17 · 9740 阅读 · 0 评论 -
嵌入式操作系统之时钟节拍下的任务切换
FreeRTOS 中任务切换的过程, 提到触发任务切换的两种情况 : 高优先级任务就绪抢占和同优先级任务时间共享(包括提前挂起)。 系统中,时间延时和任务阻塞,时间片都以 Systick 为单位。通过设置文件 FreeRTOSConfig.h 中 configTICK_RATE_HZ 设置任务节拍中断频率, 在启动任务调度器时,系统会根据另一个变量, CPU 的频率configCPU_CLOC转载 2016-12-07 22:44:13 · 3255 阅读 · 0 评论