FreeRTOS
爸爸帮你揉揉
这个作者很懒,什么都没留下…
展开
-
初识FreeRTOS
早期的嵌入式开发没有操作系统的概念,只有裸机程序,比如在最简单的51上面基本就没有操作系统的说法。可以把裸机程序看成两部分:前台系统和后台系统。什么叫前台呢和后台呢?其实可以很形象的理解,一般的裸机程序都是一个大的无限循环(while或for),这样一直在运行的程序就可以称为“后台”,而中断(包括中断服务程序),可以打断后台程序继而自己执行,所以称之为“前台”,是不是很形象呢。也可以这样来理解...原创 2019-03-16 21:05:38 · 1071 阅读 · 0 评论 -
什么是PendSV
一、什么是PendSVPendSV是可悬起异常,如果我们把它配置最低优先级,那么如果同时有多个异常被触发,它会在其他异常执行完毕后再执行,而且任何异常都可以中断它。更详细的内容在《Cortex-M3 权威指南》里有介绍,下面我摘抄了一段。OS 可以利用它“缓期执行”一个异常——直到其它重要的任务完成后才执行动 作。悬起 PendSV 的方法是:手工往 NVIC的 PendSV悬起寄存器中写...转载 2019-03-16 21:15:42 · 2015 阅读 · 0 评论 -
FreeRTOS移植
FreeRTOS的移植主要集中在以下部分,中断管理,包括ISR的配置、中断的关闭和开启等。TASK切换处理,包括触发TASK切换、TASK切换的出栈和压栈操作等。freeRTOS的基本配置和可选配置 Heap管理它们对应的源文件如下portable.h,申明了中断管理和TASK切换管理相关的函数申明,用户可以自行增减 freeRTOS_Config.h,定义了freeRTOS的...转载 2019-03-16 22:32:35 · 1446 阅读 · 1 评论 -
FreeRTOS API学习
xTaskCreate() API函数portBASE_TYPE xTaskCreate( pdTASK_CODE pvTaskCode, const signed portCHAR * const pcName, unsigned portSHORT usStackDepth,...原创 2019-03-17 10:25:48 · 715 阅读 · 0 评论