国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于單片機(jī)的門禁系統(tǒng)多級菜單設(shè)計(jì)

2015-06-15 22:38:22王清珍等
現(xiàn)代電子技術(shù) 2015年12期
關(guān)鍵詞:門禁系統(tǒng)數(shù)組按鍵

王清珍等

摘 要: 為了在無線辦公門禁系統(tǒng)中實(shí)現(xiàn)通過LCD12864顯示屏分屏顯示多項(xiàng)內(nèi)容,采用單片機(jī)C語言程序設(shè)計(jì)了多級菜單,應(yīng)用結(jié)構(gòu)體數(shù)組成員的定義,借助按鍵來改變菜單項(xiàng)的索引號,進(jìn)行內(nèi)容的分屏顯示及菜單項(xiàng)之間的切換。在多項(xiàng)顯示時(shí),同一屏上顯示項(xiàng)處于同一級,涉及的變量少,索引號級數(shù)少,系統(tǒng)開支就小。設(shè)計(jì)簡化,按鍵實(shí)時(shí)性好,界面簡單,操作方便。

關(guān)鍵字: LCD12864; 多級菜單; 結(jié)構(gòu)體數(shù)組成員; 切換機(jī)制

中圖分類號: TN911?34; TP368.2 文獻(xiàn)標(biāo)識碼: A 文章編號: 1004?373X(2015)12?0055?03

0 引 言

在門禁系統(tǒng)中采用的顯示設(shè)備是LCD12864,此設(shè)備在系統(tǒng)中僅顯示少量的提示信息,能夠滿足系統(tǒng)顯示需求,但是受顯屏顯示區(qū)域的限制,要顯示多項(xiàng)內(nèi)容,需要分屏顯示,在顯示的內(nèi)容之間有上下級和平行級關(guān)系,這就需要在顯示屏上顯示多級操作菜單,每一級菜單都有一些菜單項(xiàng)和對應(yīng)的按鍵操作,以及響應(yīng)各種操作而執(zhí)行的后續(xù)處理程序。需要采用多級菜單來顯示與按鍵進(jìn)行顯示內(nèi)容的切換。本文根據(jù)門禁系統(tǒng)的顯示需求,旨在提供一個(gè)輕量級的單片機(jī)多級菜單實(shí)現(xiàn)方法,以較少的系統(tǒng)資源消耗和簡單方便的方法完成菜單設(shè)計(jì)??紤]到菜單程序需要具備3個(gè)基本要素:

(1) 每個(gè)顯示界面顯示的內(nèi)容;

(2) 顯示界面內(nèi)菜單項(xiàng)之間切換和顯示界面之間的切換機(jī)制;

(3) 每個(gè)顯示界面及菜單項(xiàng)對應(yīng)的按鍵定義與響應(yīng)。

本文首先介紹多級菜單的設(shè)計(jì)思想,進(jìn)而采用C語言實(shí)現(xiàn)結(jié)構(gòu)體的定義和結(jié)構(gòu)體數(shù)組成員的定義,接著介紹菜單項(xiàng)之間的切換機(jī)制,最后進(jìn)行了鍵盤處理模塊的設(shè)計(jì)。

1 多級菜單的設(shè)計(jì)

多級菜單的基本思想是把多級菜單分層結(jié)構(gòu),通過索引號貫穿,把全部菜單項(xiàng)拉成一條鏈,每一個(gè)菜單項(xiàng)即為一個(gè)結(jié)構(gòu),而整個(gè)菜單即為一結(jié)構(gòu)數(shù)組,訪問每一個(gè)菜單項(xiàng)時(shí),只須獲得菜單的索引號,通過索引號找到結(jié)構(gòu)數(shù)組中和該菜單項(xiàng)相關(guān)的項(xiàng)目,由此可以查詢到當(dāng)前菜單項(xiàng)的數(shù)據(jù)和所要執(zhí)行的功能函數(shù)[1]。

借鑒李敏通教授提出的一種用一維線性數(shù)組實(shí)現(xiàn)樹形拓?fù)浣Y(jié)構(gòu)多級菜單的方法,并用C51語言編程驗(yàn)證了這種方法的可行性。該方法對存儲資源的利用效率高,邏輯關(guān)系清晰,且菜單的建立和修改方便,適合在單片機(jī)應(yīng)用系統(tǒng)中使用[2]。

菜單設(shè)計(jì)的常用方法是樹形拓?fù)浣Y(jié)構(gòu)法。菜單的樹形拓?fù)浣Y(jié)構(gòu)是多叉樹,對于多叉樹結(jié)構(gòu)的菜單,為了表示菜單之間的相互關(guān)系,必須表示其所有的下級菜單節(jié)點(diǎn)。在此控制系統(tǒng)中的菜單項(xiàng)比較少,只分為2級,即上一級(稱為父項(xiàng))和下一級(稱為子項(xiàng)),其菜單樹如圖1所示。再由于每個(gè)菜單的下級菜單個(gè)數(shù)不同,難以用統(tǒng)一的數(shù)據(jù)結(jié)構(gòu)來描述這種相互關(guān)系,在此借助硬件4個(gè)按鍵(確認(rèn)、上翻和下翻按鍵、返回按鍵)進(jìn)行切換。

4 結(jié) 語

本文介紹了在門禁系統(tǒng)中多級菜單的設(shè)計(jì)與切換的實(shí)現(xiàn)。采用多級菜單設(shè)計(jì)大大提高了LCD12864的顯示功能,提供了多功能的操作顯示提示,以方便系統(tǒng)的使用。系統(tǒng)開銷小,僅靠幾個(gè)結(jié)構(gòu)體和幾個(gè)變量即可維護(hù)各顯示界面及界面內(nèi)同級菜單項(xiàng)、上下級菜單項(xiàng)之間切換實(shí)現(xiàn)。

參考文獻(xiàn)

[1] 宋曉暉,葉樺.基于單片機(jī)的多級菜單實(shí)現(xiàn)方法改進(jìn)[J].東南大學(xué)學(xué)報(bào),2007,37(9):66?70.

[2] 李敏通,張戰(zhàn)國.一種建立單片機(jī)應(yīng)用系統(tǒng)菜單的新方法[J].計(jì)算機(jī)工程,2006,32(16):259?261.

[3] 譚浩強(qiáng).C語言程序設(shè)計(jì)[M].2版.北京:清華大學(xué)出版社,2011.

[4] 何立民.MCS?51系列單片機(jī)應(yīng)系統(tǒng)[M].北京:北京航空航天大學(xué)出版社,2004.

[5] 劉運(yùn)清.基于單片機(jī)的門禁系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].中國科技信息,2013(18):80?81.

[6] 黃健,吳永弘,劉喬俊.基于RFID技術(shù)的門禁系統(tǒng)的研究[J].數(shù)字技術(shù)與應(yīng)用,2014(4):116?118.

猜你喜歡
門禁系統(tǒng)數(shù)組按鍵
基于多種生物特征識別的RFID門禁系統(tǒng)設(shè)計(jì)
JAVA稀疏矩陣算法
基于有限狀態(tài)機(jī)的按鍵檢測程序設(shè)計(jì)
電子制作(2021年3期)2021-06-16 03:14:26
JAVA玩轉(zhuǎn)數(shù)學(xué)之二維數(shù)組排序
基于單片機(jī)的安全門禁系統(tǒng)研究設(shè)計(jì)
電子制作(2019年11期)2019-07-04 00:34:32
解析社區(qū)藍(lán)牙門禁系統(tǒng)
一種多方向?qū)Ч獍存I結(jié)構(gòu)設(shè)計(jì)
電子制作(2016年1期)2016-11-07 08:43:05
基于單片機(jī)的小區(qū)門禁系統(tǒng)設(shè)計(jì)
尋找勾股數(shù)組的歷程
按鍵的多種狀態(tài)檢測及消抖處理方法
家電科技(2013年4期)2013-07-09 10:55:08
湖南省| 周宁县| 攀枝花市| 乐至县| 南安市| 汉沽区| 南召县| 凤庆县| 伊通| 鹿泉市| 濉溪县| 扎囊县| 德惠市| 尤溪县| 武清区| 东光县| 永嘉县| 保康县| 毕节市| 临颍县| 四平市| 麻阳| 隆子县| 邵阳市| 昭觉县| 南丰县| 繁峙县| 巴塘县| 青阳县| 丁青县| 建昌县| 河源市| 迁西县| 桃江县| 凤翔县| 南京市| 宜州市| 永德县| 鹤山市| 兰考县| 长岛县|