變量穴施水穴播機人機交互界面設(shè)計
該結(jié)構(gòu)中共有6 個結(jié)構(gòu)元素,分別是5 個字符型和1 個指針變量,5 個字符型變量分別為當前及各個按鍵按下時所對應菜單的索引號,最后1 個指針變量指向需要執(zhí)行的函數(shù)。
(3).臨時菜單ID定義
uchar iMenuID;//當前顯示菜單的ID
uchar iMenuNextID;//當前菜單中需高亮顯示的菜單ID
3.2.2菜單庫的構(gòu)建
菜單庫中存放的是各個菜單的內(nèi)容,每級菜單都由兩個數(shù)組組成。第一個數(shù)組存放該級菜單的顯示字符,第二個數(shù)組存放該級菜單中每個子菜單的索引號,此索引號用來作為高亮顯示選中菜單時的依據(jù)。所有菜單庫都存儲在單片機的Flash存儲器中。
3.2.3變量庫的構(gòu)建
變量庫實質(zhì)上是一個結(jié)構(gòu)體數(shù)組,在結(jié)構(gòu)體數(shù)組里為每一個菜單項編制一個單獨的函數(shù),并根據(jù)菜單的嵌套順序排好本菜單項的索引號,以及本級菜單項的上、下卷動的索引號和上、下級菜單的索引號。變量庫存儲在單片機的內(nèi)部附加的RAM中。表4.2是專為變量穴施水穴播機人機交互界面設(shè)計的變量庫。表中Items表示同級菜單最大項目數(shù),子菜單ID=99,表示菜單已到底;父菜單ID=99,表示菜單已到頂;弟菜單ID=99和兄菜單ID=99,表示該菜單為獨生子;函數(shù)FunNull為空函數(shù)。
本文引用地址:http://www.ex-cimer.com/article/173723.htm
3.2.3主程序
主程序的任務(wù)是對菜單庫和變量庫進行解碼操作,完成液晶顯示和鍵盤響應的功能。主程序僅提供一個人機交互界面的柜架,因此改動菜單時不必修改主程序。添加菜單時只需按順序向菜單庫和變量庫中加入,刪除或修改菜單也只需對菜單庫中相關(guān)菜單進行操作,而不影響其它程序。圖2為主程序的流程圖。當有任意鍵被按下時,程序都會到變量庫中進行查詢操作以確定當前菜單應執(zhí)行的具體操作。當進入某一菜單時,通過“向上”或“向下”鍵進行菜單項的選擇,被選中的菜單項高亮顯示(即反黑顯示)。
4.結(jié)論
本文的創(chuàng)新點是根據(jù)變量穴施水穴播機的結(jié)構(gòu)特點和使用要求,在JHD19264上設(shè)計并實現(xiàn)了由4級菜單組成的人機交互界面。應用結(jié)果表明,該界面穩(wěn)定可靠,操作簡單,交互友好。本文提供的設(shè)計方法及軟件流程也可以用在具有類似人機接口的儀器設(shè)備中,特別適合于具有自主知識產(chǎn)權(quán)產(chǎn)品的開發(fā)。
評論