摘要:
最前言 如有任何表述不对的地方,欢迎及时指正。技术小白,主要写个博客帮助自己总结和梳理知识,基本上都是拷贝的别人家的文字,根据自己的理解和逻辑重新梳理顺序的。 一 预备知识 在区分一个程序的堆栈、bss、text段、RO、RW、ZI等概念时,首先区分一下程序进程和程序文件,然后了解一下哈弗结构和冯诺 阅读全文
摘要:
在任何RTOS中,都具有一个重要的通信机制 消息队列。 队列是任务间通信的主要形式。它们可用于在任务之间、中断和任务之间发送消息。在大多数情况下,它们被用作线程安全的FIFO(先进先出)缓冲区,新数据被发送到队列的后面,不过数据也可以发送到前面。 消息队列的概念及其作用(以下基础内容转载自安富莱电子 阅读全文
摘要:
由于工作的需要,接触到XDK110,它是由德国博世开发的传感器BOX,采用的FreeRTOS嵌入式系统。 支持HTTP,TCP,UDP,MQTT,Lwm2m,BLE等无线通信协议。大多数的应用Demo, 基于eclipse的IED XDK Workbench已提供,在线下载导入项目。 可以将采集的传 阅读全文
摘要:
原文链接:https://blog.csdn.net/callmesumo/article/details/89403787 when FreeRtos is used.It is strongly recommended to use a HAL timebase source other tha 阅读全文
摘要:
计数信号量有两种典型的用法: 1.事件计数: 每次事件发生时,中断ISR会释放(Give)信号量,信号量的计数值加1 。事件处理任务每次处理一个事件会获取(Take)一次信号量,计数值减1. 信号量的值就是已发生事件数目与已处理事件数目之间的差值。用于事件的计数的计数信号量,在被创建时其计数值被初始 阅读全文
摘要:
一般二元信号量用于任务同步,利用二元信号量对任务与中断同步,中断服务例程中只是释放信号量,相当于把中断应该处理的事情放到了任务里进行处理,如果某个中断处理任务特别紧急,则相应的任务优先级可以设置为最高,以保证此任务随时抢占系统中的其他任务。 使用一个定时器TIM6,每隔3秒释放一次信号量,TASK2 阅读全文
摘要:
了解了二元信号量相关的一些概念,可以设计相关程序进行验证,基于STM32Cube生成的代码。 TASK1比TASK2优先级高,验证的初衷是TASK1S首先运行,而TASK2由于无法获取信号量而阻塞,5S之后TASK1释放信号量,TASK2获得信号量解除阻塞可以执行 由于FreeRTOS的新旧版本的A 阅读全文
摘要:
二元信号量具有互斥和同步多任务的作用,它与互斥量非常相似,当有一个区别是互斥量具有优先权继承属性,而二元信号量则没有,所以一般常用于任务与任务或中断与任务的同步。 在使用二元信号量前需要弄清楚几个概念: 1.优先级继承 2.优先级翻转 3.死锁 以下内容来自RT-Thread官网: https:// 阅读全文
摘要:
直接使用printf输出不做临界保护输出的打印信息如下,有时出现输出打印信息不完整。 使用Debug_Printf打印信息如下: 阅读全文