酒店电子保险箱设计报告.docx





《酒店电子保险箱设计报告.docx》由会员分享,可在线阅读,更多相关《酒店电子保险箱设计报告.docx(40页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、微机应用设计与实践课程设计设计课题 酒店电子保险箱 2012年 01月 07日目录一、设计任务与实现目标31.4基本设计要求:31.5功能扩展提示:(选做)4设计说明书内容纲要:4二、总体设计方案与方案论52.1系统总体框架52.2设计方案与方案论证62.3方案选择62.4方案论证6三、总框图及总体软件设计说明73.1总流程图73.2总体软件设计说明8四、系统资源分配说明94.1硬件资源分配94.2微处理器内部存储单元分配及数据定义说明9五、局部程序设计说明105.1拆字模块105.2错误提示:显示“E”115.3显示模块115.4键盘扫描模块125.5并字模块描述:135.6开门以及门闩模块
2、描述:165.7密码修改描述:165.8功能键流程图:165.9 12S无动作描述:185.10 15分钟锁键描述:195.11精确时钟流程图:19六、系统功能与操作说明21七、调试记录及调试结果211.拆字模块212.错误显示模块213.显示刷新224.键盘获取225.并字调试226.匹配调试与开门调试227.门闩开关调试228.管理员控制码输入229.密码修改2210.时间调校22八、设计总结22附件1: 程序25附件2:原理图39一、 设计任务1.1设计课题:酒店电子保险箱1.2设计目的:通过小型微机应用产品的设计与调试过程,运用微机原理及接口技术课程所学的基本知识,在设计中加以应用,进
3、而得到理解、巩固和提高发展,通过实践的过程学习掌握分析与解决实际问题的方法与手段,提高设计、编程与调试的实际动手能力,作为工程技术工作的一次基本训练。1.3设计任务:设计一个以单片机为核心的酒店电子保险箱,能在酒店客房中提供给客户使用。具有密码开锁,密码修改、密码输入安全设置、保险箱使用时间等功能。编程并在单片机实验板上模拟调试实现。1.4基本设计要求:1、开机进行接口部件及数码显示器、指示灯、讯响器等自检。2、密码分为管理员密码和用户密码:管理员密码为8位09的数字,而用户密码为6位09的数字。3、设置“0”“9”的数字键及“OP”、“LO”、和“CL”等功能键。对按键输入的信号须进行软件消
4、抖处理。4、保险箱的门有两种状态:打开状态和闭合状态。5、工作模式:(1)常态:数码管显示时钟。(2)开锁模式:需输入6位数字为09的用户密码或输入8位数字为09的管理原密码进行开锁。然后按“OP”键开门。(3)用户修改密码模式:在保险箱开门状态下,由用户自行输入6位数字为09的密码作为新密码,用户初始密码为000000。(4)管理员操作模式:保险柜开门状态下输入8位09的管理员密码,可以进行调校实时钟、恢复用户初始密码和修改管理员密码、设置保险箱使用日期等功能。6、常态下,八位LED 7段数码管显示时钟信息可包括小时、分钟、秒钟。7、常态下,当保险箱关门状态下,只要按下09的数字键则进入密码
5、输入状态,每按一个数字键使数码管从左到右逐次显示“”。8、如果输入密码6位后按“OP”键则与用户密码进行匹配,匹配一致则开锁;如果输入密码8位后按“OP”键则与管理员密码进行匹配,匹配一致则进入管理员操作模式。9、在密码输入状态下,输入未满6位或8位数字密码,按“OP”键则不作响应。10、输入的用户密码如果匹配一致则驱动电动开门电磁铁线圈通电1S,用户拉门把可以打开保险箱;如果输入不正确,则提示“E”,3S后返回常态,等待下一轮的密码输入。11、密码输入过程可以按“CL”键取消输入返回常态。12、用户可以在保险箱开门状态下,通过输入6位09的数字后按“LO”键进行设置新的用户密码。13、当保险
6、箱处于开门状态下,输入管理员密码后按OP键进入管理员操作模式下,输入01功能码代表修改管理员密码;输入02功能码代表恢复用户初始密码;输入03功能码代表实时钟的调校设置,利用数字3和数字4按键实现对时和分钟的增量式调校,持续按键超0.5S时实现快调功能;按“CL”键退出管理员操作模式。1.5功能扩展提示:(选做)1、非常态下12S内无按键操作则自动返回常态;2、管理员操作模式下,03代表设置保险箱使用日期功能,如果开始日期和结束日期均为0:0:0,表示日期不受限制;04代表查询本次开箱前5次的日期和时间。3、如果连续五次输入用户密码错误则报警且锁键15分钟;4、其他功能扩展。1.6设计环节及进
7、程安排: 1、布置课题,明确任务、总体方案设计 2天2、基本功能控制程序设计及调试 3天4、程序功能完善、改进、扩展 3天5、答辩及编写设计说明书 2天 设计说明书内容纲要:1、.设计任务2、总体方案设计与方案论证3、总框图及总体软件设计说明4、系统资源分配说明5、局部程序设计说明6、系统功能与操作说明7、调试记录及调试结果8、课程设计总结9、附录:源程序清单(详细注释) 计算机系统结构教研室 2012年12月二、总体设计方案与方案论2.1系统总体框架更新显示按键扫描拆字送显缓输入送缓存取消退格共用部分密码匹配密码修改开门动作锁键酒店电子密码箱门闩动作无操作错误动作修改用户密码进入用户部分操作
8、模式管理员部分时钟部分无操作模式进入修改管理员密码时间调校用户密码初始管理员操作2.2设计方案与方案论证整个程序采用标志位引导方式实现程序功能,并且将程序模块化,循环扫描各服务子程序。 更新模块-数码管动态扫描子程序 取显示缓冲单元的内容,找到其在段码表中的段码值及位置即键号,分别对应传送到82C55的A、B口,使所得值显示在数码管上。 时钟显示模块 当常态标志位为0时,数码管上显示时钟,格式为时-分-秒,将双字节时钟单元拆字并传送到显缓30H-37H对应的各个单元。 键盘扫描模块 采用线反转法获得行列码,在键码表中找到对应的行列码的位置即键号,并采用滚动滤波法对按键进行消除抖动。新键号存在2
9、EH,旧态放在2FH单元中。 密码匹配模块 在密码匹配允许下进行密码比对。 密码修改模块 在密码修改允许下进行密码修改。 开门及门闩模块 根据开门标志位决定对电磁铁线圈通电1S与否。门闩是一个输入器件。 用户部分 有键按下,转为非常态,等待下一位密码输入,为6位密码则进入用户模块操作。 管理员部分输入密码为8位则进入管理员模块操作。01、02、03为管理员功能模块。 12S无操作返回及其他拓展部分 在常态下,若没有按键按下,开始计时,时间到12S左右,程序返回常态。若有则重置定时初值。密码输入出错五次,进行锁键。2.3方案选择拆字部分:方案一:只要检测到按键按下则显示“”,否则显示实时钟。 方
10、案二:给定单元作为模式选择、判断。拆字时按照不同模式给以不同程序段处理。常态:实时钟显示;开锁态:显示“”;管理员状态:显示功能号码或“”、或实时钟。密码存储部分:方案一:单个存储单元储存单位密码。 方案二:由于只用到简单数码键作为密码,所以可以使用并字将两个密码存储在同一个单元。2.4方案论证拆字部分:方案一程序简单,占用存储单元较少。方案二程序较长,所需存储单元单元较多。但是,考虑到用户的需求,尤其是老年用户的记忆需要。所以牺牲一定存储单元是有必要的。综上所述,选择方案二。密码存储部分:方案一:代码编写简单。方案二:代码编写较之前复杂。在密码类型简单情况以及RAM单元够用情况下,没有太大优
11、势。但是在密码类型较多以及RAM单元紧张情况下,优势非常明显。并且为后期的拓展提供了方便。综上所述,选择方案二。三、总框图及总体软件设计说明3.1总流程图3.2总体软件设计说明本设计采用汇编语言编程。 系统在上电复位后,程序开始运行,经过初始化,在无任何操作的情况下,八位数码管显示实时钟。程序循环时对键盘进行扫描。常态有键按下时,当键号为0到9这十个数码键时则输入密码锁的密码。非常态时,不同的功能键对应不同处理,同时,12秒无按键按下,返回常态显示实时钟。当密码输入满六位或者八位后,按下OP键,进入密码匹配程序进行输入的密码与原存储密码判断是否一致,若一致说明密码正确,循环主程序时启动开门子程
12、序KM执行开锁动作,点亮二极管P1.5一秒,循环主程序时启动子程序SWITCH拨下SW0进行开门,开门指示灯L8亮,返回常态显示实时钟。若是六位密码匹配正确后开门,则是用户操作模式,用户可进行密码修改,连续两次输入密码,并按下LO键进行确认修改。程序判断两次密码是否相同,若相同,用户密码修改成功,若不同密码修改失败。当密码输入满八位后,按下OP键,进入管理员密码匹配程序进行输入的密码与原存储密码判断是否一致,若一致说明密码正确,进入管理员模式,此时再次输入管理员密码进入管理员模式,按键按下01或02或03进入不同功能模式。01是进行管理员密码修改,管理员可进行密码修改,连续两次输入密码,并按下
13、OP键进行确认修改。程序判断两次密码是否相同,若相同,管理员密码修改成功,若不同密码修改失败。02是进行管理员初始化用户密码初始化,按下02功能号后再按确认键OP进行用户密码初始化。03是实时钟的设置,利用数字3和数字4按键实现对时和分钟进行调校,连续按下0.5S后实现时钟与分钟快调。在管理员模式下,按下CL键,程序将回到常态显示实时钟。若有任何不一致说明密码不正确,循环主程序时启动错误显示子程序CW,使八位数码管最右位显示E三秒,返回常态显示实时钟。若五次输入密码错误,程序将通过数码管显示时时钟,发出报警,并锁定键盘输入十五分钟。四、系统资源分配说明4.1硬件资源分配 01 23456789
14、OPLOCLTG1、4*4键盘按键分配 K0K9为09的数字键盘 KA为OP键 KB为LO键 KC为CL键 KD为TG键 2、指示灯分配 L5灯为开锁一秒指示灯(图一)L8灯为开门状态指示灯(图二)(图一)(图二)4.2微处理器内部存储单元分配及数据定义说明27H.0 并字允许标志位,可并字置127H.1普通密码匹配模式标志为,为0进行用户密码匹配,为1进行管理员密码匹配27H.2 开门允许标志位,可开门置127H.3 错误标志位,错误置127H.4 键盘获取方式标志为,0为密码输入模式,1为管理员控制方式输入模式27H.5 状态标志位,0为常态,1为非常态28H.0 控制码存放标志位,0存放
15、在5AH,1存放在5BH28H.1 密码二次输入标志位,为1未进行二次输入28H.2 密码修改标志位,为1为进行密码修改输入 28H.3 门状态标志位,为1则门开着28H.4 修改密码允许位,为1进行密码修改28H.5 时间调整允许标志位,可修改置128H.6 键盘锁定标志位,为1锁定,不允许获取键盘输入29H2FH 消抖单元30H37H显示缓冲单元38H3CH时间记录存放单元3DH 存放错误次数3EH 锁键分钟数设置3FH快调计时0.5S存储单元40H42H用户密码存储区43H46H管理员密码存储区48H4BH输入密码存储区4CH4FH二次输入密码存储区50H57H键盘读入存储区58H密码位
16、数存储单元59H密码存放地址存储单元5AH控制方式首位输入存放单元5BH控制方式次位输入存放单元5CH5DH 3S延时存储单元60H键盘扫描读入值存储单元61H键号值62H键盘获取存储单元63H压缩密码位数存放单元64H密码匹配暂存存储单元65H12S计数存储单元五、局部程序设计说明5.1拆字模块拆字流程图:拆字模块描述:进入拆字模块,先把显示缓冲单元30H-37H赋值#12H,灭显示。接着判断27H.5的值,检测当前状态若为0表示当前状态是常态,进入CZ1进行常态拆字时分秒,显示缓冲单元存放时分秒。不为0则跳转到FCT检测键盘输入模式,其标志位为27H.4,为0则为密码输入部分的拆字,根据按
17、键次数把放入显示缓冲单元中,从30H开始放起,最多放到37H。为1则为管理员功能号输入拆字,将5AH与5BH中的值显示在37H与36H中,可显示01、02、03。5.2错误提示:显示“E”错误显示E描述: 根据标志位27H.3判断是否启动CW子程序。为1则进入子程序,灭显示缓冲单元,然后在30H单元存入#0EH,在数码管最右一位显示E,用循环递减的方式显示E三秒后,清标志位27H.3,清按键密码存储单元,返回常态显示时钟,清按键数。5.3显示模块显示模块描述:系统使用共阴极数码管显示。实验板采用动态显示方式,每次点亮一个 LED 显示器,延时1MS时间再点亮下一个 LED 显示器,周而复始,8
18、个 LED 显示器轮流动态扫描。利用人视觉暂留效应,看起来好像几个显示器上“同时”显示不同的字符。把显示缓冲单元的值依次从八位数码管从右到左显示。为防止窜显,我们在点亮数码管前先送暗码给数码管,且在数码管显示一秒后也对数码管送暗码。此时数码管就不会出现窜显现象。5.4键盘扫描模块键盘扫描流程图:键盘扫描模块描述:采用线反转法扫描得到键盘行列码,根据事先编好的键码表(按国际键盘分布排列)对应行列码查表得到键号,之后根据键号做相应操作(结合其他子模块),功能键则处理相应功能,数字键则相应存储、输出数字量。理论上当按键按下或弹起时,可以相应的产生低电平或高电平,但实际并非如此。键盘按键一般都采用触点
19、式按键开关。按键被按下或释放时,按键触点的弹性会产生抖动现象。即当按键按下时,触点不会迅速可靠地接通,当按键释放时,触点也不会立即断开,而是要经过一段时间的抖动才能稳定下来,按键材料不同,抖动时间也各不相同。按键抖动可能导致单片机将一次按键操作识别为多次操作,一般采用硬件电路或软件程序来消除。本次用软件消抖,即滚动滤波的方式消抖。并字流程图:5.5并字模块描述:在并字允许的情况下,确认输入八位或六位情况下,将两个键号压缩放置在一个单元。第一次输入放在以4BH为首地址的单元,第二次从4FH开始。匹配模块流程图:匹配模块描述:由于本设计采用二次密码确认新密码,所以匹配除了正常的开锁匹配,还包括了修
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 酒店 电子 保险箱 设计 报告

限制150内