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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2540|回復: 0
打印 上一主題 下一主題
收起左側

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

[復制鏈接]
跳轉到指定樓層
樓主
做工業控制的時候,很多開發者喜歡一步一步來,第一步做什么,接著做什么,發生了某個事件執行某個動作處理,這是最簡單也是最符合人的一般思維的方式,簡單的控制系統這么做無疑是非常輕松的,可是一旦工業控制系統變得復雜了的話,一般的流程控制或者順序控制將會十分困難,一是開發者面對復雜的系統很難在短時間內把各種關系捋順,而且這樣做成的系統一旦后期想有一點點的改動都會付出很大的工作量來修改。那么,狀態機控制就是解決復雜控制問題的很好的一種方法。
有限狀態機(Finite-statemachine, FSM),又稱為有限狀態自動機,簡稱狀態機,是一個數學模型。是一個抽象機器,在任何時候都可以處于有限數量的狀態之一。響應某些外部輸入,FSM可以從一個狀態轉換到另一個狀態;從一種狀態到另一種狀態的變化稱為過渡。有限狀態機是非順序的,沒有事先的設定,跳轉到哪個狀態由事件決定。

狀態機有幾個要素:狀態,條件,動作和下個狀態,在某個狀態時在某種條件(事件)下才會執行某個動作跳轉到下一個狀態,其中動作不是必需的。如圖 1為一個3元有限狀態機的模型,它有著3個狀態,觸發狀態切換的事件最多有23=6個。當機器處于狀態1時,只有發生了事件1才會切換到狀態2,同樣,在狀態2時只有發生了事件2才會切換到狀態1,其余的狀態切換流程以此類推。在某一個狀態,你可以根據需求定義機器的參數,例如溫度達到多少、流量是多少等,在狀態機內部再根據控制算法執行相應的動作調整機器的參數。
要使用狀態機的方法,我們將要處理的對象劃分為一個一個的狀態,某一時刻機器只能處于一個特定的狀態下,在這個狀態下根據輸入條件的變化來決定跳轉到哪個狀態,執行對應的動作,跳轉和狀態是唯一的。這樣的狀態機控制法讓開發工作不再是復雜的流程控制,思路也會更加清晰一點,工作也就簡單了。
最近在做工控、電路板、單片機、儀器、軟件開發定制項目(業務Q:2531-2637-26)的時候,用到一個串口觸摸屏作為人機交互接口,在這個屏上會做很多界面來用于參數的設置和顯示。這時,我就把每個界面當作狀態機的一個狀態來處理,每個界面上的觸摸按鍵反饋的信號就是狀態機的事件,一旦接收到相應的觸摸按鍵的信號(事件),屏的界面就會根據跳轉邏輯發生跳轉并根據指令控制執行器執行相應的動作。由于是串口觸摸屏并用單片機作為的處理器,每個界面(狀態)的顯示、動作的執行等功能我編寫成一個一個的子函數,并在主函數中的while(1)循環中根據狀態號來調用,對于觸摸按鍵信號的接收和狀態號的切換跳轉等簡短的指令我在串口中斷函數中處理,這樣做的好處是讓程序結構清晰,又節省了中斷程序的執行時間避免中斷丟失。

更多精彩,歡迎關注微-信-公-眾-號:yonkotech
沙鷗-成都-2019.10.12


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲www啪成人一区二区麻豆 | 色综合久久久久 | 欧美精品一区二区三区四区五区 | av大片在线观看 | 国产一级视频在线观看 | 成人精品久久久 | 精品亚洲二区 | 在线视频91 | 91传媒在线观看 | 欧美a在线看 | 一区二区三区日韩精品 | 蜜桃精品视频在线 | 日本视频中文字幕 | 亚洲高清视频在线观看 | 欧美日韩在线国产 | 三极网站 | 中文字幕第三页 | 在线视频成人 | 亚洲狠狠爱 | 国产美女h视频 | 久久久精品影院 | 久久久久国产一区二区三区 | 7777奇米影视| 精品久久国产 | 亚洲一区二区三区免费观看 | 视频在线观看一区二区 | 国产农村一级片 | 操久久 | 欧美一区在线看 | 成年人视频在线免费观看 | h片免费看 | 日韩精品极品视频在线观看免费 | av日韩高清| 国产成人精品免高潮在线观看 | 日韩精品久久 | 黄色片免费看 | 日韩一区二区福利视频 | 国产精品日韩欧美一区二区 | 日韩欧美国产精品 | 日韩欧美一区二区三区 | 精品粉嫩超白一线天av |