AMEsim狀態(tài)機(jī)優(yōu)先級
如果沒有轉(zhuǎn)換優(yōu)先級,以下狀態(tài)圖是模棱兩可的。事實(shí)上,狀態(tài) 1 之后的狀態(tài)并不是唯一的,因?yàn)閮蓚€(gè)Guard x>= 2 和 x > 0 都是真的,因?yàn)樵诔跏嫁D(zhuǎn)換期間 x 被賦予了值 5。
這種歧義可以通過向轉(zhuǎn)換添加優(yōu)先級編號來解決:
優(yōu)先級編號是附加到退出給定狀態(tài)的轉(zhuǎn)換的唯一編號。在幾個(gè)候選轉(zhuǎn)換中,采用優(yōu)先級編號最低的轉(zhuǎn)換。例如,這里采取了向State 2 的過渡。
復(fù)合過渡的優(yōu)先級
在存在復(fù)合狀態(tài)和并行狀態(tài)的情況下,優(yōu)先級規(guī)則將擴(kuò)展為處理離開復(fù)合狀態(tài)的轉(zhuǎn)換。選擇的優(yōu)先級是“ 內(nèi)部優(yōu)先 ”(這一點(diǎn)應(yīng)當(dāng)熟記),在嘗試在封閉復(fù)合或并行狀態(tài)上定義的轉(zhuǎn)換之前,我們始終傾向于本地定義的轉(zhuǎn)換。
在此示例中,如果狀態(tài) 2 或 3 處于活動(dòng)狀態(tài)(或狀態(tài) 1處于活動(dòng)狀態(tài) 且 x <= 0),我們可以轉(zhuǎn)到狀態(tài) 4。如果 x 大于 0 并且狀態(tài) 1 處于活動(dòng)狀態(tài),則其中一個(gè)本地轉(zhuǎn)換將具有更高的優(yōu)先級并將被采用( 這也即是所謂本地局部優(yōu)先原則 )。
并行過渡優(yōu)先級
并行狀態(tài)的規(guī)則擴(kuò)展了相同的“ 內(nèi)部優(yōu)先 ”規(guī)則,在并行狀態(tài)下,如果任何子級進(jìn)行過渡,則不進(jìn)行上部過渡。
在這種情況下,如果狀態(tài) 1 、狀態(tài) 2 處于活動(dòng)狀態(tài)并且 e 被激活,則進(jìn)行從狀態(tài) 2 到狀態(tài) 3 的轉(zhuǎn)換。進(jìn)行轉(zhuǎn)換時(shí),不會(huì)進(jìn)行從并行狀態(tài)到狀態(tài) 4 的轉(zhuǎn)換。如果在狀態(tài) 1、狀態(tài) 3 處于活動(dòng)狀態(tài)且e被激活,因?yàn)闆]有過渡“消耗”事件,那么我們嘗試上層轉(zhuǎn)換并進(jìn)入狀態(tài) 4。
-
轉(zhuǎn)換器
+關(guān)注
關(guān)注
27文章
8887瀏覽量
150248 -
信號處理器
+關(guān)注
關(guān)注
1文章
255瀏覽量
25619 -
狀態(tài)機(jī)
+關(guān)注
關(guān)注
2文章
493瀏覽量
27987 -
AMESIM
+關(guān)注
關(guān)注
1文章
15瀏覽量
11868
發(fā)布評論請先 登錄
基于C語言的狀態(tài)機(jī)實(shí)現(xiàn)方案

轉(zhuǎn):第13章 FreeRTOS任務(wù)優(yōu)先級修改及其分配方案
STM32的NVIC中斷優(yōu)先級管理及初始化的知識點(diǎn)總結(jié)
嵌入式系統(tǒng)優(yōu)先級的知識點(diǎn)匯總,絕對實(shí)用
STM32單片機(jī)優(yōu)先級的定義

STM32單片機(jī)中搶占優(yōu)先級和響應(yīng)優(yōu)先級的表達(dá)方式解析

STM32F103芯片中斷優(yōu)先級以及FreeRTOS優(yōu)先級設(shè)置

摩爾型狀態(tài)機(jī)與米利型狀態(tài)機(jī)的區(qū)別是什么
中斷優(yōu)先級處理的原則及配置 搶占優(yōu)先級和響應(yīng)優(yōu)先級的區(qū)別

FreeRTOS任務(wù)的優(yōu)先級示例
Free RTOS的優(yōu)先級翻轉(zhuǎn)

什么是優(yōu)先級反轉(zhuǎn)

評論