![](https://img-blog.csdnimg.cn/20190918140145169.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
RTOS
文章平均质量分 94
FreeRTOS
涵锐Vellichor
这个作者很懒,什么都没留下…
展开
-
【RTOS】ARM Cortex-M异常处理过程
Cortex-M3与Cortex-M41. 处理器输入、输出和外设访问一般来说,外设在使用前需要初始化,一般包括以下几步:如果需要,设置时钟控制回路使能连接到外设和对应引脚的时钟。许多现代微控制器允许对时钟信号分布的精细调节,如使能/禁止到每个外设的时钟连接以节省功耗。外设时钟一般是默认关闭的,需要在编程外设前使能时钟。有些情况下,可能还需要使能外设总线系统的时钟。有些情况下,可能还需要配置I/O引脚的操作模式。大多数微控制器都有复用的I/O引脚,可用于多种目的。为了使用外设,配置I/O引脚以匹配原创 2022-05-11 14:20:32 · 1571 阅读 · 0 评论 -
【FreeRTOS】从0写简易RTOS实现任务切换
1. RTOS引入单片机性能越来越强,很多Linux程序在单片机上也可以运行了:这需要RTOS。我们要开发的单片机产品,功能也越来越丰富:这也需要RTOS。就个人技术发展来说,单片机开发的技术提升方向之一就是RTOS。RTOS已经无处不在:ESP8266 WIFI模块,出厂自带FreeRTOS,可以在上面做二次开发;4G模块CAT1,出厂自带FreeRTOS,可以在上面做二次开发;想实现功能比较丰富的设备时,比如加上MQTT功能,就需要RTOS比如已经被RT-Thread采用的kawaii原创 2022-05-08 11:44:55 · 1471 阅读 · 0 评论 -
【FreeRTOS】FreeRTOS内存管理的五种方式
内存管理1. FreeRTOS为什么要实现自己的内存管理内存的动态管理是C语言程序的知识范围,并不属于FreeRTOS的知识范畴,但是它跟FreeRTOS关系是如此紧密。在C语言的库函数中,有mallc、free等函数,但是在FreeRTOS中,它们不适用:不适合用在资源紧缺的嵌入式系统中这些函数的实现过于复杂、占据的代码空间太大并非线程安全的(thread-safe)运行有不确定性:每次调用这些函数时花费的时间可能都不相同内存碎片化使用不同的编译器时,需要进行复杂的配置有时候难以调试原创 2022-05-07 16:30:30 · 3387 阅读 · 6 评论 -
FreeRTOS的调度器源码分析及系统滴答SysTick
1. PendSV系统调用查遍了C站上所有关于FreeRTOS调度器的分析,发现大家分析完vTaskStartScheduler()之后就戛然而止了,我就会比较迷糊,这个仅开启了调度器的调度,而FreeRTOS是一个实时操作系统,并不能体现出他的实时性在哪里,虽然已经在FreeRTOSConfig.h中设置了configUSE_PREEMPTION等于1,那他是怎么其的作用呢?project\demo\FreeRTOSConfig.h刚开始对PendSV系统调用还比较陌生,读过很多的资料之.原创 2021-11-24 11:33:57 · 2313 阅读 · 0 评论