RTX5 | 事件标志组02 - 置位事件标志组,并获取事件标志组的值
生活随笔
收集整理的這篇文章主要介紹了
RTX5 | 事件标志组02 - 置位事件标志组,并获取事件标志组的值
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 一、前言
- 二、實驗目的
- 三、API
- 3.1、osEventFlagsSet
- 3.2、osEventFlagsGet
- 四、代碼
- 4.1、main.h
- 4.2、main.c
- 五、Event Recorder調試
- 5.1、長按按鍵KEY1,將事件標志組event_Flags1的flag0置1,并獲取當前事件標志組event_Flags的值
- 5.2、長按按鍵KEY2,將事件標志組event_Flags1的flag1,flag2,flag3同時置1,并獲取當前事件標志組event_Flags的值
- 5.3、接著,長按KEY1或KEY2再觀察事件標志組的值
一、前言
今天繼續學習事件標志組的知識點,在實際項目上肯定會用到的osEventFlagsSet,還有實際項目上可能會用到的osEventFlagsGet。
Note:
必須先創建消息隊列,接著再創建線程。順序顛倒就相當于內存未初始化就被線程使用,導致線程莫名其妙。
STM32工程:
鏈接:https://pan.baidu.com/s/1P_ltxVUjgUsdZCV5IGdQ-A
提取碼:kq6u
二、實驗目的
長按按鍵KEY1,將事件標志組event_Flags1的flag0置1,并獲取當前事件標志組event_Flags的值。
長按按鍵KEY2,將事件標志組event_Flags1的flag1,flag2,flag3同時置1,并獲取當前事件標志組event_Flags的值。
三、API
3.1、osEventFlagsSet
/* 使用案例 */ osEventFlagsSet(event_Flags1_ID,0x01U << 0); /* 事件標志組event_Flags1的flag0置1 */ osEventFlagsSet(event_Flags1_ID,0x01U << 7); /* 事件標志組event_Flags1的flag7置1 */osEventFlagsSet(event_Flags1_ID,0x0FU); /* 事件標志組event_Flags1的flag0,flag1,flag2,flag3同時置1 */3.2、osEventFlagsGet
/* 使用案例 */ uint32_t flags; flags = osEventFlagsGet(event_Flags1_ID); /* 獲取event_Flags1的值 */四、代碼
4.1、main.h
4.2、main.c
五、Event Recorder調試
5.1、長按按鍵KEY1,將事件標志組event_Flags1的flag0置1,并獲取當前事件標志組event_Flags的值
5.2、長按按鍵KEY2,將事件標志組event_Flags1的flag1,flag2,flag3同時置1,并獲取當前事件標志組event_Flags的值
5.3、接著,長按KEY1或KEY2再觀察事件標志組的值
從下圖可以證明osEventFlagsGet并不會清除事件標志組的flag。
總結
以上是生活随笔為你收集整理的RTX5 | 事件标志组02 - 置位事件标志组,并获取事件标志组的值的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: react中@withrouter_为什
- 下一篇: STM32H743+CubeMX-计算F