王清珍等
摘 要: 為了在無線辦公門禁系統(tǒng)中實現(xiàn)通過LCD12864顯示屏分屏顯示多項內容,采用單片機C語言程序設計了多級菜單,應用結構體數(shù)組成員的定義,借助按鍵來改變菜單項的索引號,進行內容的分屏顯示及菜單項之間的切換。在多項顯示時,同一屏上顯示項處于同一級,涉及的變量少,索引號級數(shù)少,系統(tǒng)開支就小。設計簡化,按鍵實時性好,界面簡單,操作方便。
關鍵字: LCD12864; 多級菜單; 結構體數(shù)組成員; 切換機制
中圖分類號: TN911?34; TP368.2 文獻標識碼: A 文章編號: 1004?373X(2015)12?0055?03
0 引 言
在門禁系統(tǒng)中采用的顯示設備是LCD12864,此設備在系統(tǒng)中僅顯示少量的提示信息,能夠滿足系統(tǒng)顯示需求,但是受顯屏顯示區(qū)域的限制,要顯示多項內容,需要分屏顯示,在顯示的內容之間有上下級和平行級關系,這就需要在顯示屏上顯示多級操作菜單,每一級菜單都有一些菜單項和對應的按鍵操作,以及響應各種操作而執(zhí)行的后續(xù)處理程序。需要采用多級菜單來顯示與按鍵進行顯示內容的切換。本文根據(jù)門禁系統(tǒng)的顯示需求,旨在提供一個輕量級的單片機多級菜單實現(xiàn)方法,以較少的系統(tǒng)資源消耗和簡單方便的方法完成菜單設計??紤]到菜單程序需要具備3個基本要素:
(1) 每個顯示界面顯示的內容;
(2) 顯示界面內菜單項之間切換和顯示界面之間的切換機制;
(3) 每個顯示界面及菜單項對應的按鍵定義與響應。
本文首先介紹多級菜單的設計思想,進而采用C語言實現(xiàn)結構體的定義和結構體數(shù)組成員的定義,接著介紹菜單項之間的切換機制,最后進行了鍵盤處理模塊的設計。
1 多級菜單的設計
多級菜單的基本思想是把多級菜單分層結構,通過索引號貫穿,把全部菜單項拉成一條鏈,每一個菜單項即為一個結構,而整個菜單即為一結構數(shù)組,訪問每一個菜單項時,只須獲得菜單的索引號,通過索引號找到結構數(shù)組中和該菜單項相關的項目,由此可以查詢到當前菜單項的數(shù)據(jù)和所要執(zhí)行的功能函數(shù)[1]。
借鑒李敏通教授提出的一種用一維線性數(shù)組實現(xiàn)樹形拓撲結構多級菜單的方法,并用C51語言編程驗證了這種方法的可行性。該方法對存儲資源的利用效率高,邏輯關系清晰,且菜單的建立和修改方便,適合在單片機應用系統(tǒng)中使用[2]。
菜單設計的常用方法是樹形拓撲結構法。菜單的樹形拓撲結構是多叉樹,對于多叉樹結構的菜單,為了表示菜單之間的相互關系,必須表示其所有的下級菜單節(jié)點。在此控制系統(tǒng)中的菜單項比較少,只分為2級,即上一級(稱為父項)和下一級(稱為子項),其菜單樹如圖1所示。再由于每個菜單的下級菜單個數(shù)不同,難以用統(tǒng)一的數(shù)據(jù)結構來描述這種相互關系,在此借助硬件4個按鍵(確認、上翻和下翻按鍵、返回按鍵)進行切換。
4 結 語
本文介紹了在門禁系統(tǒng)中多級菜單的設計與切換的實現(xiàn)。采用多級菜單設計大大提高了LCD12864的顯示功能,提供了多功能的操作顯示提示,以方便系統(tǒng)的使用。系統(tǒng)開銷小,僅靠幾個結構體和幾個變量即可維護各顯示界面及界面內同級菜單項、上下級菜單項之間切換實現(xiàn)。
參考文獻
[1] 宋曉暉,葉樺.基于單片機的多級菜單實現(xiàn)方法改進[J].東南大學學報,2007,37(9):66?70.
[2] 李敏通,張戰(zhàn)國.一種建立單片機應用系統(tǒng)菜單的新方法[J].計算機工程,2006,32(16):259?261.
[3] 譚浩強.C語言程序設計[M].2版.北京:清華大學出版社,2011.
[4] 何立民.MCS?51系列單片機應系統(tǒng)[M].北京:北京航空航天大學出版社,2004.
[5] 劉運清.基于單片機的門禁系統(tǒng)的設計與實現(xiàn)[J].中國科技信息,2013(18):80?81.
[6] 黃健,吳永弘,劉喬俊.基于RFID技術的門禁系統(tǒng)的研究[J].數(shù)字技術與應用,2014(4):116?118.