久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2617|回復: 0
收起左側

用狀態機的方法進行串口觸摸屏的界面設計

[復制鏈接]
ID:63113 發表于 2019-10-12 21:58 | 顯示全部樓層 |閱讀模式
做工業控制的時候,很多開發者喜歡一步一步來,第一步做什么,接著做什么,發生了某個事件執行某個動作處理,這是最簡單也是最符合人的一般思維的方式,簡單的控制系統這么做無疑是非常輕松的,可是一旦工業控制系統變得復雜了的話,一般的流程控制或者順序控制將會十分困難,一是開發者面對復雜的系統很難在短時間內把各種關系捋順,而且這樣做成的系統一旦后期想有一點點的改動都會付出很大的工作量來修改。那么,狀態機控制就是解決復雜控制問題的很好的一種方法。
有限狀態機(Finite-statemachine, FSM),又稱為有限狀態自動機,簡稱狀態機,是一個數學模型。是一個抽象機器,在任何時候都可以處于有限數量的狀態之一。響應某些外部輸入,FSM可以從一個狀態轉換到另一個狀態;從一種狀態到另一種狀態的變化稱為過渡。有限狀態機是非順序的,沒有事先的設定,跳轉到哪個狀態由事件決定。
1.PNG
狀態機有幾個要素:狀態,條件,動作和下個狀態,在某個狀態時在某種條件(事件)下才會執行某個動作跳轉到下一個狀態,其中動作不是必需的。如圖 1為一個3元有限狀態機的模型,它有著3個狀態,觸發狀態切換的事件最多有23=6個。當機器處于狀態1時,只有發生了事件1才會切換到狀態2,同樣,在狀態2時只有發生了事件2才會切換到狀態1,其余的狀態切換流程以此類推。在某一個狀態,你可以根據需求定義機器的參數,例如溫度達到多少、流量是多少等,在狀態機內部再根據控制算法執行相應的動作調整機器的參數。
要使用狀態機的方法,我們將要處理的對象劃分為一個一個的狀態,某一時刻機器只能處于一個特定的狀態下,在這個狀態下根據輸入條件的變化來決定跳轉到哪個狀態,執行對應的動作,跳轉和狀態是唯一的。這樣的狀態機控制法讓開發工作不再是復雜的流程控制,思路也會更加清晰一點,工作也就簡單了。
最近在做工控、電路板、單片機、儀器、軟件開發定制項目(業務Q:2531-2637-26)的時候,用到一個串口觸摸屏作為人機交互接口,在這個屏上會做很多界面來用于參數的設置和顯示。這時,我就把每個界面當作狀態機的一個狀態來處理,每個界面上的觸摸按鍵反饋的信號就是狀態機的事件,一旦接收到相應的觸摸按鍵的信號(事件),屏的界面就會根據跳轉邏輯發生跳轉并根據指令控制執行器執行相應的動作。由于是串口觸摸屏并用單片機作為的處理器,每個界面(狀態)的顯示、動作的執行等功能我編寫成一個一個的子函數,并在主函數中的while(1)循環中根據狀態號來調用,對于觸摸按鍵信號的接收和狀態號的切換跳轉等簡短的指令我在串口中斷函數中處理,這樣做的好處是讓程序結構清晰,又節省了中斷程序的執行時間避免中斷丟失。
2-3.PNG
更多精彩,歡迎關注微-信-公-眾-號:yonkotech
沙鷗-成都-2019.10.12
51hei隨意打賞-小.png

回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产精品欧美一区喷水 | 国产一区三区在线 | 精品不卡| 久久久久国产一区二区三区四区 | 久久久国产亚洲精品 | 在线免费观看黄色av | 国产在线一区二 | 日韩欧美一区二区三区 | 成人午夜视频在线观看 | 日韩视频 中文字幕 | 欧美精品一区二区免费 | 一区二区在线视频 | 宅男伊人 | www免费视频 | 国产一区二区三区四区五区加勒比 | 免费黄色大片 | 一区二区成人 | 国产精品福利久久久 | 欧美一级大片 | 久久综合伊人 | 国产精品99久久久久久久久久久久 | 欧美一级片免费看 | 欧美一区免费在线观看 | 久久久av| 亚洲高清在线播放 | 九九九色| 亚洲欧美日韩一区二区 | 久久久久免费精品国产小说色大师 | 在线观看特色大片免费网站 | 久久y| 中文字幕一区二区三区在线观看 | 欧美一区二区免费电影 | 无码一区二区三区视频 | 亚洲第一在线 | 精品一区二区三区中文字幕 | 日本黄色激情视频 | 天堂资源最新在线 | 亚洲欧美少妇 | 欧美激情精品久久久久久 | 99精品久久| 国产三级在线观看播放 |