APP下载

基于单片机的门禁系统多级菜单设计

2015-06-15王清珍等

现代电子技术 2015年12期
关键词:门禁系统数组按键

王清珍等

摘 要: 为了在无线办公门禁系统中实现通过LCD12864显示屏分屏显示多项内容,采用单片机C语言程序设计了多级菜单,应用结构体数组成员的定义,借助按键来改变菜单项的索引号,进行内容的分屏显示及菜单项之间的切换。在多项显示时,同一屏上显示项处于同一级,涉及的变量少,索引号级数少,系统开支就小。设计简化,按键实时性好,界面简单,操作方便。

关键字: LCD12864; 多级菜单; 结构体数组成员; 切换机制

中图分类号: TN911?34; TP368.2 文献标识码: A 文章编号: 1004?373X(2015)12?0055?03

0 引 言

在门禁系统中采用的显示设备是LCD12864,此设备在系统中仅显示少量的提示信息,能够满足系统显示需求,但是受显屏显示区域的限制,要显示多项内容,需要分屏显示,在显示的内容之间有上下级和平行级关系,这就需要在显示屏上显示多级操作菜单,每一级菜单都有一些菜单项和对应的按键操作,以及响应各种操作而执行的后续处理程序。需要采用多级菜单来显示与按键进行显示内容的切换。本文根据门禁系统的显示需求,旨在提供一个轻量级的单片机多级菜单实现方法,以较少的系统资源消耗和简单方便的方法完成菜单设计。考虑到菜单程序需要具备3个基本要素:

(1) 每个显示界面显示的内容;

(2) 显示界面内菜单项之间切换和显示界面之间的切换机制;

(3) 每个显示界面及菜单项对应的按键定义与响应。

本文首先介绍多级菜单的设计思想,进而采用C语言实现结构体的定义和结构体数组成员的定义,接着介绍菜单项之间的切换机制,最后进行了键盘处理模块的设计。

1 多级菜单的设计

多级菜单的基本思想是把多级菜单分层结构,通过索引号贯穿,把全部菜单项拉成一条链,每一个菜单项即为一个结构,而整个菜单即为一结构数组,访问每一个菜单项时,只须获得菜单的索引号,通过索引号找到结构数组中和该菜单项相关的项目,由此可以查询到当前菜单项的数据和所要执行的功能函数[1]。

借鉴李敏通教授提出的一种用一维线性数组实现树形拓扑结构多级菜单的方法,并用C51语言编程验证了这种方法的可行性。该方法对存储资源的利用效率高,逻辑关系清晰,且菜单的建立和修改方便,适合在单片机应用系统中使用[2]。

菜单设计的常用方法是树形拓扑结构法。菜单的树形拓扑结构是多叉树,对于多叉树结构的菜单,为了表示菜单之间的相互关系,必须表示其所有的下级菜单节点。在此控制系统中的菜单项比较少,只分为2级,即上一级(称为父项)和下一级(称为子项),其菜单树如图1所示。再由于每个菜单的下级菜单个数不同,难以用统一的数据结构来描述这种相互关系,在此借助硬件4个按键(确认、上翻和下翻按键、返回按键)进行切换。

4 结 语

本文介绍了在门禁系统中多级菜单的设计与切换的实现。采用多级菜单设计大大提高了LCD12864的显示功能,提供了多功能的操作显示提示,以方便系统的使用。系统开销小,仅靠几个结构体和几个变量即可维护各显示界面及界面内同级菜单项、上下级菜单项之间切换实现。

参考文献

[1] 宋晓晖,叶桦.基于单片机的多级菜单实现方法改进[J].东南大学学报,2007,37(9):66?70.

[2] 李敏通,张战国.一种建立单片机应用系统菜单的新方法[J].计算机工程,2006,32(16):259?261.

[3] 谭浩强.C语言程序设计[M].2版.北京:清华大学出版社,2011.

[4] 何立民.MCS?51系列单片机应系统[M].北京:北京航空航天大学出版社,2004.

[5] 刘运清.基于单片机的门禁系统的设计与实现[J].中国科技信息,2013(18):80?81.

[6] 黄健,吴永弘,刘乔俊.基于RFID技术的门禁系统的研究[J].数字技术与应用,2014(4):116?118.

猜你喜欢

门禁系统数组按键
基于多种生物特征识别的RFID门禁系统设计
JAVA稀疏矩阵算法
基于有限状态机的按键检测程序设计
JAVA玩转数学之二维数组排序
基于AI智慧人脸门禁系统的硬件系统设计
基于单片机的安全门禁系统研究设计
Excel数组公式在林业多条件求和中的应用
一种多方向导光按键结构设计
基于单片机的小区门禁系统设计
寻找勾股数组的历程