独望枫

人在尘世间,有缘自相见,变化千千万,未开窍,已迷恋
posts - 45, comments - 0, trackbacks - 0, articles - 1
  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

2021年7月14日

posted @ 2021-07-14 02:41 小菜枫 阅读(1289) | 评论 (0)编辑 收藏

     摘要: 主要是FreeRTOS的定时器使用示例,及过程中的一些错误解决。
定时器实现方式包含动态、静态。  阅读全文

posted @ 2021-07-14 02:29 小菜枫 阅读(500) | 评论 (0)编辑 收藏

     摘要: 任务通知
> 每个RTOS任务都有一个32位的通知值,任务创建时,这个值被初始化为0。RTOS任务通知相当于直接向任务发送一个事件,接收到通知的任务可以解除阻塞状态,前提是这个阻塞事件是因等待通知而引起的。发送通知的同时,也可以可选的改变接收任务的通知值。
可以通过下列方法向接收任务更新通知:
○ 不覆盖接收任务的通知值
○ 覆盖接收任务的通知值
○ 设置接收任务通知值的某些位
○ 增加接收任务的通知值  阅读全文

posted @ 2021-07-14 02:24 小菜枫 阅读(634) | 评论 (0)编辑 收藏

     摘要: FreeRTOS线程间通信的方式之一,事件。
事件依赖于动态申请内存,只要开启了该宏,事件相关的功能同时被开启,但如果要使用事件相关的宏/函数,还需要添加对应的头文件……  阅读全文

posted @ 2021-07-14 02:20 小菜枫 阅读(586) | 评论 (0)编辑 收藏

     摘要: FreeRTOS的线程间通信方式之一,消息队列。
demo示例包含动态和静态创建消息队列……  阅读全文

posted @ 2021-07-14 02:17 小菜枫 阅读(1564) | 评论 (0)编辑 收藏

     摘要: FreeRTOS的线程间通信方式之一,信号量。
信号量包含二值信号量、计数信号量的使用示例……  阅读全文

posted @ 2021-07-14 02:12 小菜枫 阅读(944) | 评论 (0)编辑 收藏

     摘要: FreeRTOS的线程间同步方式之一,临界区。
临界区是提供互斥功能的一种原始方式,可以简单粗暴的实现线程之间的互斥,确保线程间数据同步是稳定可信的
> 临界区有两种,一种是关闭中断及系统任务的
taskENTER_CRITICAL();
taskEXIT_CRITICAL();
另一种是关闭系统任务调度(禁止系统任务调度,直到重新开启任务调度)的
vTaskSuspendScheduler(); / vTaskSuspendAll();
vTaskResumeScheduler(); / vTaskResumeAll();  阅读全文

posted @ 2021-07-14 02:07 小菜枫 阅读(450) | 评论 (0)编辑 收藏

     摘要: FreeRTOS线程间同步的方式之一,互斥量
互斥量是一种特殊的信号量!!!
- 所以其句柄依然是xSemaphoreHandle类型  阅读全文

posted @ 2021-07-14 02:04 小菜枫 阅读(659) | 评论 (0)编辑 收藏

     摘要: FreeRTOS从移植实现命令行功能的过程记录  阅读全文

posted @ 2021-07-14 02:01 小菜枫 阅读(2072) | 评论 (0)编辑 收藏

     摘要: 基于STM32CubeMX生成的STM32 MDK工程,移植FreeRTOS源码
并通过动态和静态创建线程(任务)的过程  阅读全文

posted @ 2021-07-14 01:41 小菜枫 阅读(1021) | 评论 (0)编辑 收藏

     摘要: RT-Thread提供了线程池的实现,为用户的线程频繁的创建使用场景下提供了更友好更有效率的方式
Nano版配置文件没有线程池相关的选项可配置,默认关闭该功能,如果需要开启,需要添加 'RT_USING_MEMPOOL' 的宏定义  阅读全文

posted @ 2021-07-14 01:31 小菜枫 阅读(240) | 评论 (0)编辑 收藏

     摘要: RT-Thread Nano定时器的使用示例
定时器分为周期性定时器和一次性定时器
文中的示例包括了两种定时器的使用示例展示……  阅读全文

posted @ 2021-07-14 01:28 小菜枫 阅读(335) | 评论 (0)编辑 收藏

     摘要: RT-Thread Nano线程间通信的方式之一,消息队列
消息队列默认关闭,如果需要启用,需要在rtconfig.h中开启
文章记录了消息队列的动态、静态创建以及展示了通信的过程  阅读全文

posted @ 2021-07-14 01:27 小菜枫 阅读(339) | 评论 (0)编辑 收藏

     摘要: RT-Thread Nano线程间通信的方式之一,邮箱
邮箱功能默认打开,如果需要关闭,需要在rtconfig.h头文件中注释掉/删掉
文章记录了邮箱的动态、静态创建以及展示了通信的过程  阅读全文

posted @ 2021-07-14 01:24 小菜枫 阅读(399) | 评论 (0)编辑 收藏

     摘要: RT-Thread Nano的线程间同步方式之一,事件集
事件默认关闭,如果需要使用事件,则需要在rtconfig.h头文件中启用事件
事件是一种灵活的线程同步机制,每个线程由一个32位的无符号整型来表示一个事件集,一个事件集包含32个事件,由此可以实现事件与线程的一对多或者多对多……  阅读全文

posted @ 2021-07-14 01:21 小菜枫 阅读(208) | 评论 (0)编辑 收藏

     摘要: RT-Thread Nano的线程间同步方式之一,信号量。
记录了动态、静态创建信号量的简单使用示例
信号量默认开启,如果需要关闭,需要在rtconfig.h头文件将其对应的宏定义注释掉/删掉  阅读全文

posted @ 2021-07-14 01:17 小菜枫 阅读(285) | 评论 (0)编辑 收藏

     摘要: RT-Thread Nano的线程间同步方式之一,互斥量。
记录了动态、静态创建互斥量的简单使用示例  阅读全文

posted @ 2021-07-14 01:06 小菜枫 阅读(250) | 评论 (0)编辑 收藏