欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

Fsm軟件的構(gòu)建方法

文檔序號:6559839閱讀:494來源:國知局
專利名稱:Fsm軟件的構(gòu)建方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種FSM軟件的構(gòu)建方法,尤其涉及在主裝置控制下 的從屬裝置中,以軟件構(gòu)成FSM(Finite State Machine:有限狀態(tài)時序 機),實現(xiàn)通訊協(xié)議簡單化的FSM軟件的構(gòu)建方法。
背景技術(shù)
通常,能夠控制獨立動作的其它裝置的主裝置與在主裝置控制下 進行動作的從屬裝置通過特定協(xié)議(Protocol)連接。在上述各個裝置中, 需要安裝支持從屬裝置與主裝置之間通訊使用標(biāo)準(zhǔn)的設(shè)備(device), 還需要安裝能夠?qū)ο嚓P(guān)設(shè)備進行控制的設(shè)備驅(qū)動器(drive)。
驅(qū)動器作為OS(OperatingSystem:動作系統(tǒng))的一部分,指的是對 連接到計算機上的各種輔助裝置進行控制的裝置,其通過硬件
(hardware)和庫欠件(software)構(gòu)成。
現(xiàn)有技術(shù)存在如下問題由于現(xiàn)有的主裝置與從屬裝置間進行通 訊使用的協(xié)議采用按照一定的順序進行動作的控制方法,程序依次排 列進行編碼(Coding),很難進行擴展及修改。
即,依次決定主裝置(例如,個人用計算機)與從屬裝置(例如USB 裝置)各自的動作,分別執(zhí)行相應(yīng)動作,進行通訊。當(dāng)增加新動作或者 改變順序時,需要修改主裝置與從屬裝置兩方面的軟件,給使用帶來 很大不便。

發(fā)明內(nèi)容
為了解決上述問題,本發(fā)明旨在提供一種以FSM構(gòu)成從屬裝置中 使用的軟件,根據(jù)主裝置接收的指令和從屬裝置的FSM狀態(tài)決定從屬 裝置動作的FSM軟件的構(gòu)建方法。
為了實現(xiàn)上述目的,本發(fā)明FSM軟件的構(gòu)建方法就是通過 FSM(Finite State Machine:有限狀態(tài)時序才幾)軟件構(gòu)建主裝置控制下的 從屬裝置的動作的方法,其特征在于包括如下步驟讀取從主裝置接 收的動作指令的OutHandler(OutHandler)動作步驟;執(zhí)行通過上述Out Handler動作步驟讀取的指令對應(yīng)的動作,產(chǎn)生返回值(return value)的 主過程(Main Process)步驟;將在上述主過程步驟中產(chǎn)生的返回值向主 裝置傳送的InHandler(InHandler)動作步驟。
綜上所述,通過本發(fā)明,只需要通過修改主裝置的軟件,就可以 修改從屬裝置的控制方式,達到減少維護費用的目的。
而且,由于使用簡化的通訊協(xié)議,軟件編碼的擴展性增加,如果 進行這種方式的編碼,只要修改輸入輸出端,就能夠很容易地達到與 其它類似從屬裝置通訊(Porting)的效果。
附困說明
圖l為本發(fā)明的主裝置與從屬裝置的協(xié)議構(gòu)成圖。
圖2為本發(fā)明的從屬裝置的FSM軟件的構(gòu)成圖。
具體實施例方式
下面將參照附圖
對本發(fā)明的FSM軟件的構(gòu)建方法的實施例進行詳
細i兌明。
圖l為本發(fā)明的主裝置與從屬裝置的協(xié)議構(gòu)成圖。如圖所示,從屬 裝置與控制從屬裝置的動作的主裝置連接,主裝置向從屬裝置發(fā)送指
令和命令因素,從屬裝置通過用于分析所述指令的FSM執(zhí)行主裝置所 要求的動作。
這里,從屬裝置按照主裝置的命令進行動作,因此,根椐主裝置 輸入的指令不同,從屬裝置執(zhí)行的動作也不同。由于從屬裝置并不保 存本身以前執(zhí)行的動作記錄,所以只有通過主裝置的命令,才能夠決 定從屬裝置的動作。
如果在從屬裝置中通過FSM完成動作,將這個結(jié)果返回(Retum)主 裝置。在沒有主裝置命令,不能返回結(jié)果的情況下,當(dāng)主裝置執(zhí)行讀 取(Read)動作時,返回從屬裝置的結(jié)果。
從屬裝置執(zhí)行的動作規(guī)定為有限個。由于規(guī)定為有限個,如果能 夠通過FSM設(shè)計從屬裝置的軟件架構(gòu),就能夠?qū)膶傺b置執(zhí)4于的動作 分割和簡化。
圖2為本發(fā)明的從屬裝置的FSM軟件的構(gòu)成圖。如圖所示,從屬裝 置的狀態(tài)可以是O( Wait Opcode)和1 (Wait Operand)兩種。
FSM的狀態(tài)從準(zhǔn)備接收命令的O(Wait Opcode)狀態(tài)向讀取從主裝 置接收的指令(read)的l(WaitOperand)狀態(tài)轉(zhuǎn)換,根據(jù)接收的指令執(zhí)行 命令(do),并向主裝置返回(retum)結(jié)果。此時,由于從屬裝置不再保 存以前執(zhí)行的動作(clr)的記錄,主裝置根據(jù)傳送的命令決定動作,以確 保對從屬裝置的現(xiàn)有動作不產(chǎn)生影響。
因此,如果從屬裝置完成執(zhí)行命令動作,F(xiàn)SM狀態(tài)重新轉(zhuǎn)換為 O(WaitOpcode)狀態(tài),進入準(zhǔn)備接收下個命令的階段。
因此,當(dāng)每次從主裝置接收指令時,從屬裝置的FSM狀態(tài)重復(fù)由O 狀態(tài)向l狀態(tài)轉(zhuǎn)換,執(zhí)行完動作后,再向待機狀態(tài)-0狀態(tài)轉(zhuǎn)換的過程, 執(zhí)行各個指令對應(yīng)的動作。
執(zhí)行上述動作的從屬裝置的軟件FSM的程序代碼可以4姿照下面方 式構(gòu)建。
OUT Handler
switch(CURRENT—FSM—STATE){ case STATUS—WAIT—OPCODE: read一opcode();
CURRENT—FSM—STATE=STATE—WAIT—OPERAND; break;
case STATUS—WAIT—OPERAND;
switch(OPCODE){
C8S6 opl:
read—operand—op 1 ();break; case op2:
read—operand一op2();break;
CURRENT_FSM—STATE=STATE—WAIT—OPCODE; breaks
} 、 Main Process
while(l){
switch(CURRENT一FSM一STA卿 case STATUS—WAIT—OPCODE:
while(CURRENT一FSM—STATE==STATUS_WAIT_OPCODE); break;
case STATUS—WAIT—OPERAND:
switch(OPCODE)(
case opl:
do一op(); break;
case op2:
do一op2(); break;
breaks
像這樣,利用軟件FSM的程序編碼,在OUTHandler(HancUer)動作 步驟中,根據(jù)當(dāng)前的FSM狀態(tài)進行動作,如果是WaitOpcode狀態(tài),讀 取指令(read—opcode),將當(dāng)前的FSM狀態(tài)轉(zhuǎn)換為Wait Operand狀態(tài)。 (CURRENT—FSM—STATE-STATE—WAIT—OPERAND)。如果是Wait Operand狀態(tài),根據(jù)指令(OPCODE)進行動作,是第l指令(opl)時,讀 取運算值opl (read—operand—opl);當(dāng)是第2指令(op2)時,讀取運算值 op2(read—operand—op2),按照這種方式執(zhí)行動作后,將當(dāng)前的FSM狀態(tài) 設(shè)定為WaitOPCODE。
(CURRENT—FSM—STATE=STATE—WAIT一OPCODE)。
根據(jù)當(dāng)前的FSM狀態(tài)(CURRENT一FSlVLSTATE)選擇與上述OUT Handler的動作連動的主過程(MainProcess),第一,當(dāng)是WaitOPCODE 狀態(tài)時(case STATUS—WAIT—OPCODE),如果當(dāng)前的FSM狀態(tài)是Wait OPCODE,繼續(xù)等待從OUTHandler接收指令(OPCODE),如果不是, 結(jié)束動作。第二,如果是Wait OPERAND狀態(tài),根據(jù)指令(OTCODE) 進行動作,執(zhí)行相關(guān)指令對應(yīng)的動作。
通過i述的說明內(nèi)容,相關(guān)工作人員完全可以在不偏離本項發(fā)明 技術(shù)思想的范圍內(nèi),進行多樣的改變以及修改。因此,本項發(fā)明的技術(shù)范圍并不局限于說明書上的內(nèi)容,必須要 根據(jù)權(quán)利范圍來確定其技術(shù)范圍。
權(quán)利要求
1、一種通過FSM軟件構(gòu)建主裝置控制下的從屬裝置的方法,其特征在于,包括如下步驟讀取從主裝置接收的指令運算值的Out Handler動作步驟;執(zhí)行通過上述Out Handler動作步驟讀取的指令對應(yīng)的動作,產(chǎn)生返回值的主過程步驟;將在上述主過程步驟中產(chǎn)生的返回值向主裝置傳送的In Handler動作步驟。
2、 根據(jù)權(quán)利要求項1所述的FSM軟件構(gòu)建方法,其特征在于 所述Out Handler動作步驟包括在上述FSM軟件中,當(dāng)FSM狀態(tài)具有準(zhǔn)備接收命令的Wait Opcode狀態(tài)和準(zhǔn)備執(zhí)行命令的Wait Operand狀態(tài)時,根據(jù)FSM狀態(tài) 進行動作,當(dāng)FSM狀態(tài)是Wait Opcode狀態(tài)時,讀取指令后,將當(dāng)前 的FSM狀態(tài)轉(zhuǎn)換為Wait Operand狀態(tài);當(dāng)是Wait Operand狀態(tài)時, 執(zhí)行讀取相關(guān)指令的運算值的步驟。
3、 根據(jù)權(quán)利要求項1所述的FSM軟件構(gòu)建方法,其特征在于 所述的主過程步驟包括在所述的FSM軟件中,當(dāng)FSM狀態(tài)具有準(zhǔn)備接收命令的Wait Opcode狀態(tài)和準(zhǔn)備執(zhí)行命令的Wait Operand狀態(tài)時,根椐FSM狀態(tài)進行 動作,當(dāng)FSM狀態(tài)是WaitOpcode狀態(tài)時,通過上述OutHandler^Ht 步驟,讀取指令,并持續(xù)保持這個狀態(tài);當(dāng)是WaitOperand狀態(tài)時, 執(zhí)行相關(guān)指令,產(chǎn)生返回值。
4、 根據(jù)權(quán)利要求項1所述的FSM軟件構(gòu)建方法,其特征在于所述主過程步驟包括執(zhí)行通過上述Out Handler動作步驟讀取 的指令對應(yīng)的動作,產(chǎn)生返回值后,為了確保對以前動作不產(chǎn)生影響, 刪除以前指令對應(yīng)的動作記錄。
5、 根據(jù)權(quán)利要求項1所述的FSM軟件構(gòu)建方法,其特征在于上迷InHandler步驟是,在沒有主裝置的命令,上述從屬裝置不能 向主裝置傳送返回值的情況下,主裝置執(zhí)行讀取動作時,傳送返回值。
全文摘要
本發(fā)明涉及一種FSM(Finite State Machine有限狀態(tài)時序機)軟件的構(gòu)建方法。為了解決現(xiàn)有技術(shù)中主裝置和從屬裝置的程序很難擴展及修改的問題,本發(fā)明公開的FSM軟件的構(gòu)建方法是通過FSM軟件構(gòu)建主裝置控制下的從屬裝置的方法,其特征在于包括以下步驟讀取主裝置接收的指令運算值的Out Handler動作步驟;執(zhí)行通過上述Out Handler動作步驟讀取的指令對應(yīng)的動作,產(chǎn)生返回值的主過程步驟;將在上述主過程步驟中產(chǎn)生的返回值向主裝置傳送的In Handler動作步驟。通過本發(fā)明,只需要通過修改主裝置的軟件,就可以修改從屬裝置的控制方式,達到減少維護費用的目的。
文檔編號G06F9/44GK101192140SQ20061009791
公開日2008年6月4日 申請日期2006年11月22日 優(yōu)先權(quán)日2006年11月22日
發(fā)明者姜斗鎮(zhèn) 申請人:樂金電子(昆山)電腦有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
古交市| 习水县| 松桃| 鹤峰县| 新乡市| 丹棱县| 白沙| 曲靖市| 广安市| 德兴市| 莱阳市| 罗山县| 昌乐县| 通山县| 大宁县| 开封县| 遵义市| 连平县| 辽阳县| 黑水县| 广河县| 福海县| 镇康县| 阳曲县| 广州市| 巴林左旗| 鸡泽县| 报价| 邛崃市| 保德县| 布拖县| 阿巴嘎旗| 金门县| 蓬安县| 资阳市| 兰考县| 台北市| 封开县| 保定市| 阿拉善右旗| 大邑县|