信息光电子科技学院微机原理课程综合设计设计说明书——智能门锁控制电路一、设计概述在日常的生活和工作中,家居住宅的安全防范、单位中文件档案、财务报表等资料保存,多以上锁的方法予以解决。如果使用传统的机械式锁,人们需要多条钥匙,携带极不方便,且存在钥匙丢失后安全性隐患。相对与传统机械式锁,密码锁以密码代替钥匙,且具有成本低、安全性高、操作方便等特点。本设计从经济实用的角度出发,采用51单片机和不易失存储器,以及外围电路,用汇编语言编写主控芯片的控制程序,设计一款可多次修改密码且具有报警功能的智能门锁控制器。本设计具有成本低,功耗低、简单易用、安全性强等特点,符合家居住宅,单位用锁的要求,具有一定的推广价值。二、设计特点本设计为基于51单片机的智能门锁控制电路,其设计特点如下:1)成本低,经济性好。只需一块LCD显示屏,一块微控制器及一些简单外围电路设备就构成了一个人机界面友好的门锁控制系统。2)安全性高。密码可任意设定1~15位可变长度密码,当连续输入3次错误密码,键盘将自锁一段时间并报警,以防恶意破解。3)按键功能完善。有输入清除键,退出,确定等完整按键。采用了常规的手机字母按键编码方式,在主客人间互动留言时,可以输入英文,拼音的信息留言。4)实用性强。在实际应用时,可把LED换掉,加三极管驱动继电器控制电磁门锁即可。三、总体设计本设计所要实现的功能:1)通过4X4矩阵键盘进行相关操作。4X4矩阵键盘按键功能排列如下所示:1(:!/)2(ABC)3(DEF)修改密码4(GHI)5(JKL)6(MNO)留言7(PQRS)8(TUV)9(WXYZ)门铃←退格0(,.')确定(#)退出按键的排布采用常规的手机按键编码,便于用户输入。在密码输入状态下,键盘按键输入为数字;在文字输入状态下,按键输入依次为上表所示,按确定进行下一个字符的输入。2)操作信息显示在液晶屏幕上,密码采用“*”代替,按“退出”键退出当前操作并返回到主界面。3)密码可修改,且可设置为1~15位可变长度密码,掉电不失。相对于一般密码锁的固定密码长度,长度可变大大增强其安全性。且按算法检测密码的强弱程度,提高密码安全性。掉电后密码不会改变。4)输入三次错误密码自锁,且蜂鸣器报警鸣声。有效防止恶意套取密码。5)客人留言功能。客人可输入留言供主人查看,输入留言后,在主界面有相关提示。6)门铃功能。按下门铃后,蜂鸣器发声,且显示主人设定的留言供客人查看。四、硬件设计硬件系统的总体设计图硬件的组成如图所示,本设计由微处理模块、输入模块、显示模块、储存模块、驱动和报警电路构成。微处理模块AT89C51输入模块矩阵键盘显示模块LCD1602储存模块AT24C02振荡、复位电路报警电路门锁驱动电路微处理模块:采用AT89C51单片机,有32个IO口可供使用,满足本设计要求,且成本地、运行功耗低,使用可靠。显示模块:LCD1602具有体积轻巧、功耗低、显示内容丰富等特点,可提供更好的人机操作界面。储存模块:AT24C02具有掉电后数据不丢失的特点,用于储存本设计的用户设置密码,且功耗低。驱动和报警模块:由发光二极管和蜂鸣器组成。发光二极管亮即代表密码输入正确,驱动开锁电路。输入密码错误,蜂鸣器鸣声报警。五、软件设计程序流程图初始化变量,LCD并进入主循环按键?0~9数字键?全部清除完?有无客人留言?留言键?向前清除键?退出键?密码达最大长度?提示并记录清除前一位密码显示客人的留言信息留言按键选择开始3或退出?1?客人输入留言主人输入留言退出?退出?保存信息并返回返回返回返回主界面返回2?NYYYYYYYYYYYYYNNNNNNNNNNNN门铃?显示主人留言信息,响铃确定键?检查密码,正确?提示密码错误,并等待退出提示并开门密码错误3次?键盘自锁30分钟修改密码?输入新密码并再输入一次确定旧密码输入正确?两次密码一致?修改成功,等待退出返回返回保存并退出提示错误返回YYYYYYYNNNNNN循环六、界面功能说明人机界面说明开机界面。在此界面输入正确密码,可打开门锁,提示如上所示若输入错误密码,提示如上。连续输入三次次错误密码,将自锁一段时间。上面为自锁时间的倒计时。在倒计时未到之前,按下矩阵键盘任何键都不能操作。在主界面按下修改密码键可重新设置密码,先输入旧密码,再输入新密码。再输入两次新密码且两次输入都相同的情况下,提示修改成功,并根据输入密码的信息,根据自定义算法算出密码的强度。(当输入密码为123时,强度检测为weak弱)当输入两次密码不相同时,提示如上,要再重新执行修改密码步骤。在主界面下按下留言键,进入用户选择界面,可选择Master(主人)或Guest(来宾)。选择Guest(来宾)后,你可以输入留言以供主人查看。输入留言后,在主界面显示“¥”以作提示,此情况下按留言键进行查看。按下门铃键,显示主人设置好的留言,该留言在主界面进入留言功能后修改。七、Proteus仿真在Proteus中测试程序通过。注:初始密码为123。输入完按确定键,输错可按←退格键,有声音仿真,喇叭只作仿真连线,非实际连线。信息留言时,每输入完一个字符,均需按确定键,全部输完,按退出键,自动保存。八、汇编程序代码另附文件