[問題] FreeRTOS流程設計

看板ASM (組合語言)作者時間5年前 (2019/03/03 20:28), 5年前編輯推噓0(003)
留言3則, 1人參與, 最新討論串1/1
大家好,我有一份設計的流程圖大致如下: 主流程 等待啟動條件→啟動階段1→啟動階段2→啟動階段3 ↑ ↓ | 主要作業迴圈 | ↓ └───結束階段3←結束階段2←結束階段1 監測流程(主流程執行時須全程啟動) (Y) 電壓是否異常─→跳至結束階段1 ↑ |(N) └──┘ (Y) 氣壓是否異常─→跳至結束階段2 ↑ |(N) └──┘ (Y) 溫度是否異常─→跳至結束階段3 ↑ |(N) └──┘ 我目前是將主流程跟監測流程各做成一個task,可是我不清楚要怎麼讓監測流程的task 讓主流程的task進行跳躍,目前只想到用queue當監測流程條件成立後傳個flag讓主流 程知道,然後在主流程中到處埋Queue Receive去看監測流程有沒有送東西來,如果有 再依flag跳到特定的結束階段。 請問還有其他更好的方法能實現這樣的流程圖嗎? 謝謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.250.47.18 ※ 文章網址: https://www.ptt.cc/bbs/ASM/M.1551616109.A.049.html ※ 編輯: icetofux (111.250.47.18), 03/03/2019 20:29:32

05/09 20:13, , 1F
event flag
05/09 20:13, 1F

05/09 20:17, , 2F
看你需要,主流程可以wait的話就 wait(氣壓,溫度)->show
05/09 20:17, 2F

05/09 20:22, , 3F
wait的flag應需要增加分支
05/09 20:22, 3F
文章代碼(AID): #1SUyXj19 (ASM)
文章代碼(AID): #1SUyXj19 (ASM)