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

第1页共5页基于单片机的门禁系统多级菜单设计摘要:为了在无线办公门禁系统中实现通过LCD12864显示屏分屏显示多项内容,采用单片机C语言程序设计了多级菜单,应用结构体数组成员的定义,借助按键来改变菜单项的索引号,进行内容的分屏显示及菜单项之间的切换。在多项显示时,同一屏上显示项处于同一级,涉及的变量少,索引号级数少,系统开支就小。设计简化,按键实时性好,界面简单,操作方便。关键字:LCD12864;多级菜单;结构体数组成员;切换机制:TN911?34;TP368.2文献标识码:A:1004?373X(2015)12?0055?030引言在门禁系统中采用的显示设备是LCD12864,此设备在系统中仅第2页共5页显示少量的提示信息,能够满足系统显示需求,但是受显屏显示区域的限制,要显示多项内容,需要分屏显示,在显示的内容之间有上下级和平行级关系,这就需要在显示屏上显示多级操作菜单,每一级菜单都有一些菜单项和对应的按键操作,以及响应各种操作而执行的后续处理程序。需要采用多级菜单来显示与按键进行显示内容的切换。本文根据门禁系统的显示需求,旨在提供一个轻量级的单片机多级菜单实现方法,以较少的系统资源消耗和简单方便的方法完成菜单设计。考虑到菜单程序需要具备3个基本要素:(1)每个显示界面显示的内容;(2)显示界面内菜单项之间切换和显示界面之间的切换机制;(3)每个显示界面及菜单项对应的按键定义与响应。本文首先介绍多级菜单的设计思想,进而采用C语言实现结构体的定义和结构体数组成员的定义,接着介绍菜单项之间的切换机制,最后进行了键盘处理模块的设计。第3页共5页1多级菜单的设计多级菜单的基本思想是把多级菜单分层结构,通过索引号贯穿,把全部菜单项拉成一条链,每一个菜单项即为一个结构,而整个菜单即为一结构数组,访问每一个菜单项时,只须获得菜单的索引号,通过索引号找到结构数组中和该菜单项相关的项目,由此可以查询到当前菜单项的数据和所要执行的功能函数[1]。借鉴李敏通教授提出的一种用一维线性数组实现树形拓扑结构多级菜单的方法,并用C51语言编程验证了这种方法的可行性。该方法对存储资源的利用效率高,逻辑关系清晰,且菜单的建立和修改方便,适合在单片机应用系统中使用[2]。菜单设计的常用方法是树形拓扑结构法。菜单的树形拓扑结构是多叉树,对于多叉树结构的菜单,为了表示菜单之间的相互关系,必须表示其所有的下级菜单节点。在此控制系统中的菜单项比较少,只分为2级,即上一级(称为父项)和下一级(称为子项),其菜单树如图1所示。再由于每个菜单的下级菜单个数不同,难以用统第4页共5页一的数据结构来描述这种相互关系,在此借助硬件4个按键(确认、上翻和下翻按键、返回按键)进行切换。4结语本文介绍了在门禁系统中多级菜单的设计与切换的实现。采用多级菜单设计大大提高了LCD12864的显示功能,提供了多功能的操作显示提示,以方便系统的使用。系统开销小,仅靠几个结构体和几个变量即可维护各显示界面及界面内同级菜单项、上下级菜单项之间切换实现。参考文献[1]宋晓晖,叶桦.基于单片机的多级菜单实现方法改进[J].东南大学学报,2007,37(9):66?70.[2]李敏通,张战国.一种建立单片机应用系统菜单的新方法[J].计算机工程,2006,32(16):259?261.[3]谭浩强.C语言程序设计[M].2版.北京:清华大学出版社,2011.第5页共5页[4]何立民.MCS?51系列单片机应系统[M].北京:北京航空航天大学出版社,2004.[5]刘运清.基于单片机的门禁系统的设计与实现[J].中国科技信息,2013(18):80?81.[6]黄健,吴永弘,刘乔俊.基于RFID技术的门禁系统的研究[J].数字技术与应用,2014(4):116?118.

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供参考,付费前请自行鉴别。
3、如文档内容存在侵犯商业秘密、侵犯著作权等,请点击“举报”。

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

客服邮箱:

biganzikefu@outlook.com

所有的文档都被视为“模板”,用于写作参考,下载前须认真查看,确认无误后再购买;

文档大部份都是可以预览的,笔杆子文库无法对文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;

文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为依据;

如果您还有什么不清楚的或需要我们协助,可以联系客服邮箱:

biganzikefu@outlook.com

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

文秘专家
机构认证
内容提供者

1

确认删除?