999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于狀態(tài)機的LCD多級菜單設計*

2012-06-25 02:45:56賈志成程敏宋濤王彥康志龍郭艷菊
關鍵詞:界面結構

賈志成,程敏,宋濤,王彥,康志龍,郭艷菊

(1.河北工業(yè)大學 信息工程學院,天津 300401;2.天津職業(yè)技術大學)

程敏(碩士研究生),研究方向為電子遙測遙控、工業(yè)控制、嵌入式系統(tǒng)。

1 概 述

液晶顯示器(Liquid Crystal Display,LCD)由于其體積和功耗等因素,非常適合嵌入式環(huán)境的使用。近年來,隨著微處理器性能的提高,嵌入式系統(tǒng)實現(xiàn)的功能越來越強大,產生的數據量也越來越大。相對應地,需要顯示的數據量也隨之增大。嵌入式環(huán)境下使用LCD顯示器,由于條件限制,體積較小,且顯示的內容有限。而且,傳統(tǒng)的LCD顯示模式總是不加選擇地顯示所有監(jiān)控的信息,在監(jiān)控的信息量非常龐大時會導致不能及時顯示用戶所需求的信息。多級菜單顯示則是將信息分類顯示的一種顯示方式,該方式根據用戶的選擇,對顯示信息加以篩選并分級顯示,這樣既保證用戶獲取其所需的信息,又能保障信息顯示的實時性。

2 多級菜單的結構

設計多級菜單的目的在于將需要顯示的信息分門歸類,方便用戶篩選。所以在設計菜單時需要根據整個系統(tǒng)的功能和要求來設定菜單的級數,以及各級子菜單的個數。整個多級菜單的拓撲結構為樹型結構,主菜單為根節(jié)點,子菜單為枝節(jié)點,最后一級菜單為葉節(jié)點,如圖1所示。

圖1 多級菜單的結構圖

3 多級菜單的程序設計

3.1 循環(huán)方式

循環(huán)方式的設計思路:預先定義一個包含6個結構元素的結構體、5個字符型和1個指針型。第1個字符變量存放當前界面的索引號;第2個字符變量存放按下“down(向下)”鍵時需要跳轉到的索引號;第3個字符變量存放按下“up(向上)”鍵時需要跳轉到的索引號;第4個字符變量存放按下“enter(進入)”鍵時需要跳轉的索引號;第5個字符變量存放按下“esc(退出)”鍵時需要跳轉的索引號;第6個變量為函數指針變量,存放當前索引號下需要執(zhí)行的函數的入口地址。

將所有需要顯示的界面其所對應的執(zhí)行函數和按鍵索引號以結構體的形式列表存儲。具體實現(xiàn)如下:

假設菜單分3級,共10個界面,則有:

當微處理器掃描鍵盤檢測到有按鍵按下時,根據按鍵按下的類型,返回在當前界面下其所對應的跳轉索引號,并執(zhí)行相應的函數。

由于每個界面的繪制都是由一個獨立函數實現(xiàn)的,從循環(huán)方式的實現(xiàn)過程中發(fā)現(xiàn),每發(fā)生一次按鍵按下操作都需要重新繪制整個屏幕。如果核心處理器是低速主頻的處理器,在界面切換的時候會閃爍。而且,每一個界面都有固定不變的索引號,在增加或刪除界面的時候需要重新修改整個列表,降低了程序的可移植性。

3.2 查詢方式

查詢方式是通過結構體對自身的遞歸調用實現(xiàn)菜單的多級嵌套。

結構體通過對自身的兩次調用構建雙向列表。一個菜單界面即為一個節(jié)點,節(jié)點的前驅和后繼分別存放其父節(jié)點和子節(jié)點的入口地址。

菜單參數的結構體定義如下:

每個界面對應一個節(jié)點,節(jié)點都定義成如下結構體的變量:

由圖1可知,多級菜單的拓撲結構為樹型拓撲結構,即每一個節(jié)點只有一個父節(jié)點和若干個子節(jié)點。所以,對整個叉樹進行遍歷即可準確地查找到菜單界面所在的節(jié)點。

結構體實現(xiàn)的鏈表如圖2所示。

圖2 結構體鏈表

查詢方式與循環(huán)方式相比,由于減少了查表次數,因而改善了MPU的效率;但查詢方式占用MPU處理時間過長,不適應需要高速處理數據的應用。而且,在查詢方式中增加或刪除節(jié)點對程序改動較大,也不適合移植。

3.3 狀態(tài)機方式

狀態(tài)機是由事件驅動,在各個狀態(tài)之間跳轉。采用狀態(tài)機方式時,只需要提供驅動事件(在此設計中驅動事件為有效的按鍵按下),然后根據按鍵掃描返回的鍵值,決定所要跳轉的下一狀態(tài)。

如圖3所示,系統(tǒng)啟動初始化是顯示Main_menu界面,當按鍵檢測有返回值(即有按鍵按下)時,根據按下的按鍵所代表的操作跳轉到指定的狀態(tài)。例如:按下Up或者是down鍵時,只是在Main_menu界面內高亮顯示不同區(qū)域;按下Enter時,則要根據原來按下的Up和down鍵來選擇需要跳轉的方向,假設在按下Enter之前僅按下一次down鍵,則key_v的值為2(key_v的值默認為1,即默認選中子菜單的第一項),就跳轉為Sub_menu2界面;按下Esc鍵時,為從子菜單返回到上一級菜單,如果已經是主菜單了則返回的還是主菜單。

由于使用的是狀態(tài)機的方式,只有發(fā)生一次有效的按鍵,狀態(tài)才會發(fā)生一次跳轉。而且,僅當Enter和Esc鍵按下時,才會切換界面。所以即便是在高速MPU應用中,也不會出現(xiàn)屏幕閃爍的效果。

從圖3中可以看出,當要發(fā)生狀態(tài)跳轉時,目的狀態(tài)只能是當前狀態(tài)幾個分支預測中的一個,從而不需要遍歷整個列表,能夠適應高速數據處理的場合。

多級菜單的程序流程如圖4所示。系統(tǒng)上電初始化后顯示主菜單,鍵盤掃描可以通過主程序中循環(huán)查詢或者中斷掃描來實現(xiàn),最終根據鍵盤返回的鍵值選擇下一狀態(tài)。

圖5為基于狀態(tài)機的多級菜單的實現(xiàn)。

圖4 多級菜單的程序流程圖

結 語

以上三種多級菜單的實現(xiàn)方式均具有很強的實用性。循環(huán)方式和查詢方式下,程序結構簡單易用,而狀態(tài)機方式下程序可移植性強。狀態(tài)機程序設計不僅可以用在人機接口設計中,還可用于嵌入式通信協(xié)議等其他場合中。

圖5 多級菜單的實現(xiàn)

[1]胡漢才.單片機原理及其接口技術[M].北京:清華大學出版社,1996:14-15.

[2]陸錚,羅嘉.單片機C語言下LCD多級菜單的一種實現(xiàn)方法[J].工礦自動化,2006(1):50-51.

[3]宋曉輝,葉樺,丁昊.基于單片機的多級菜單實現(xiàn)方法改進[J].東南大學學報:自然科學版,2007(37):66.

[4]陳東,夏遂華.液晶顯示多層菜單結構的軟件設計[J].電氣傳動,2001(4):36.

猜你喜歡
界面結構
《形而上學》△卷的結構和位置
哲學評論(2021年2期)2021-08-22 01:53:34
國企黨委前置研究的“四個界面”
當代陜西(2020年13期)2020-08-24 08:22:02
論結構
中華詩詞(2019年7期)2019-11-25 01:43:04
新型平衡塊結構的應用
模具制造(2019年3期)2019-06-06 02:10:54
基于FANUC PICTURE的虛擬軸坐標顯示界面開發(fā)方法研究
空間界面
金秋(2017年4期)2017-06-07 08:22:16
電子顯微打開材料界面世界之門
人機交互界面發(fā)展趨勢研究
論《日出》的結構
手機界面中圖形符號的發(fā)展趨向
新聞傳播(2015年11期)2015-07-18 11:15:04
主站蜘蛛池模板: 91精品国产综合久久香蕉922| 免费久久一级欧美特大黄| 香蕉国产精品视频| 日韩欧美视频第一区在线观看| 午夜毛片免费看| 毛片久久久| 国产精品免费久久久久影院无码| 99精品高清在线播放| 久久国产精品夜色| 性视频久久| 中文字幕久久波多野结衣| 在线视频亚洲色图| 欧美高清三区| 五月激情综合网| 在线观看亚洲成人| 亚洲精品动漫| 这里只有精品在线| 久久窝窝国产精品午夜看片| 亚洲欧州色色免费AV| 亚洲欧美综合在线观看| 国产高清无码第一十页在线观看| 日本人妻丰满熟妇区| 欧洲亚洲一区| 国产成人区在线观看视频| 日本高清成本人视频一区| 日韩毛片免费| 中文字幕永久视频| 麻豆精品久久久久久久99蜜桃| AV在线麻免费观看网站| 日本精品视频| 婷婷色中文网| 毛片手机在线看| 中文字幕首页系列人妻| 国产精品无码在线看| 国产偷国产偷在线高清| 91色国产在线| av色爱 天堂网| 成人福利在线看| 欲色天天综合网| 国产青青草视频| 欧美午夜理伦三级在线观看| 久久99国产乱子伦精品免| 亚洲第一成年网| 国产av一码二码三码无码| 国产h视频免费观看| 亚洲国产中文在线二区三区免| 日日碰狠狠添天天爽| 日韩a在线观看免费观看| 亚洲一道AV无码午夜福利| 免费又爽又刺激高潮网址| 日韩区欧美国产区在线观看| 国产色婷婷| 国产丝袜丝视频在线观看| 成人在线观看不卡| 国产不卡在线看| 国产欧美日韩一区二区视频在线| 国产在线精品99一区不卡| 日韩在线网址| 国产自在线播放| 国产精鲁鲁网在线视频| 91啦中文字幕| 亚洲伊人久久精品影院| 国产精品香蕉| 国产女人18毛片水真多1| 亚洲高清日韩heyzo| 日韩国产一区二区三区无码| 久久国产精品波多野结衣| jijzzizz老师出水喷水喷出| 久久一本精品久久久ー99| 亚洲色成人www在线观看| 国产成人禁片在线观看| 免费一级全黄少妇性色生活片| 无码内射在线| 伊人中文网| 亚洲综合国产一区二区三区| 欧美中文字幕无线码视频| 亚洲欧美成人综合| 美女一区二区在线观看| 亚洲视频在线观看免费视频| AV天堂资源福利在线观看| 国产一级精品毛片基地| 一边摸一边做爽的视频17国产|