湖南工程学院课程设计课程名称单片机原理及应用课题名称智能密码锁设计专业自动化班级1291学号姓名指导教师2014年12月15日等级:湖南工程学院课程设计任务书课程名称单片机原理及应用课题智能密码锁设计专业班级自动化1291学生姓名聂利峰学号201201029135指导老师王迎旭李晓秀审批任务书下达日期2014年12月1日任务完成日期2014年12月15日主要设计条件设计内容与设计要求设计内容:本课题是要发设计一种基于单片机控制的智能电子密码锁,主要功能有:按用户使用要求可设置、修改密码,遥控或按键开锁,错误报警、显示等辅助功能。设计要求:1)根据课题要求,确定智能电子密码锁的硬件;2)进行系统的硬件设计;3)完成必要的参数计算与元器件选择;4)完成应用程序设计;5)进行单元电路及应用程序的调试;1.密码可设4~8位,并可在线修改并存储;2.密码输错3次应有报警信号提示,并有特殊密码解除;3.出开锁时外的时候,要求显示的是北京时间;4.开锁信号可以通过继电器输出。说明书格式封面课程设计任务书目录第1章概述(课题设计的要求、目的及意义)第2章系统总体方案选择与说明(系统硬件电路设计框图与工作原理)第3章硬件电路设计(各部分电路设计、原理、参数计算、I/O分配等)第4章应用软件设计(流程图、算法等)*第5章系统仿真调试第6章硬件调试与结果分析(开发板焊接、性能测试、结果、操作说明)第7章小结(已完成的工作、效果、特色、不足与展望)致谢参考文献附录A系统硬件电路原理图附录B程序清单评分表进度安排设计时间为两周第一周星期一、上午:布置课题任务,讲课及课题介绍下午:借阅有关资料,总体方案讨论星期二、确定总体设计方案星期三、硬件模块方案设计星期四、软件模块方案设计星期五小系统焊接与调试;第二周星期一、各硬件模块设计星期二、各软件模块设计星期三、各软件模块设计星期四、写说明书星期五、上午:写说明书,整理资料下午:交设计资料,答辩参考文献参考文献[1]王迎旭等.单片机原理及及应用[M].机械工业出版社.2012年[2]胡汉才,单片机原理及其接口技术[M].3版.北京:高等教育出版社,2004.[3]陈海宴.51单片机原理及应用——基于keilC与proteus[M].北京:北京航空航天大学出版社,2010.[4]邓亚平.微型计算机接口技术[M].北京:清华大学出版社,2001目录第1章概述.....................................11.1设计要求...................................11.2目的及意义.....................................1第2章系统总体方案选择与说明....................22.1系统硬件电路设计框图.......................22.2工作原理....................................2第3章硬件电路设计...............................43.1时钟电路设计....................................43.2开锁电路设计....................................43.3复位电路设计...................................53.4报警电路设计....................................53.5键盘电路设计....................................53.6LED数码管显示电路设计..........................63.7密码存储电路设计...............................7第4章应用软件设计.............................94.1软件设计思路....................................94.2各子程序设计....................................94.2.1键盘扫描子程序设计...............................94.2.2LED显示子程序设计............................114.2.3开锁子程序设计....................................114.2.3EEPROM闪存子程序设计...............................11第5章硬件调试与结果分析.........................13第6章小结.....................................致谢............................................参考文献..........................................附录..........................................附录A:系统硬件电路原理图....................附录B:源程序清单..............................电气与信息工程系课程设计评分表....................第1章概述1.1设计要求本设计是基于单片机控制的智能电子密码锁,根据要求,给出了该单片机密码锁的硬件电路和软件程序,同时给出了单片机型号的选择、硬件设计、软件流程图、单片机存储单元的分配、汇编语言源程序及详细注释等内容。主要功能有:按用户使用要求可设置、修改密码,遥控或按键开锁,错误报警、显示等辅助功能。列如:(1)密码可设4位,并可在线修改并存储;(2)密码输错3次应有报警信号提示,并有特殊密码解除;(3)出开锁时外的时候,要求显示的是北京时间;(4)开锁信号可以通过继电器输出。1.2目的及意义在安全技术防范领域,具有防盗报警功能的电子密码控制系统逐渐代替传统的机械式密码控制系统,克服了机械式密码控制的密码量少、安全性能差的缺点,使电子密码控制系统无论在技术上还是在性能上都大大提高了一步。随着大规模集成电路技术的发展,特别是单片机的问世,出现了带微处理器的智能密码控制系统,它除具有传统电子密码控制系统的功能外,还引入了智能化管理、专家分析系统等功能,从而使密码控制系统具有很高的安全性、可靠性,应用日益广泛。第2章系统总体方案选择与说明2.1系统硬件电路设计框图本方案采用一种是用以89C51为核心的单片机控制方案。利用单片机灵活的编程设计和丰富的I/O端口,及其控制的准确性,实现基本的密码锁功能。根据设计要求与设计思路,确定系统的设计方案,图2.1为系统组成原理框图。硬件有以下几部分组成:单片机、时钟电路、复位电路、键输入电路、串行EEPROM扩展电路、LED数码管显示电路、LED指示灯电路、蜂鸣器电路、继电器电路等。图2.1系统硬件电路设计方案框图2.2工作原理(1)系统的原始密码放在RAM区,在运行过程中可以实时更改系统密码。(2)利用串行EEPROM存储芯片,可以随时读取新密码,且具有掉电保护功能。(3)人机交互通过键盘输入,系统根据键值做出相应的处理,完成具体的功能。(4)LED数码管通过驱动电路,显示相应的状态。位选由P2口高四位产生,段码由P1口输入。(5)系统还扩展了LED指示灯、蜂鸣器、继电器等一些其本外围电路。键盘输入电路系统复位电路时钟电路EEPROM闪存LED数码显示LED、蜂鸣器、继电器电路单片机(6)此系统共设计了3个基本功能键:密码设置键、确认键、复位键。密码设置键:当用户需更改密码时,可通过此功能键方便地修改原先的旧密码。确认键:当完成密码输入后,可按此功能键即可实现密码的比较和处理。复位键:当密码三次输入错误时,系统进入死锁状态,可按此功能键跳出此状态。第3章硬件电路设计3.1时钟电路设计单片机工作的时间基准是由时钟电路提供的,在单片机的XTAL1和XTAL2两个引脚间,接一只晶振及两只电容就构成了单片机的时钟电路,如图3.1所示。图3.1时钟电路电路中器件选择可以通过计算和实验确定,也可以参考一些典型电路参数。电路中,电容器C1和C2对振荡频率有微调作用,同时帮助晶振起振,通常取值范围在22±0.1PF,一般晶振为12MHZ,电容取2PF。石英晶体选择12MHZ。3.2开锁电路设计本次智能电子密码锁设计中,基于节省材料的原则,暂时用发光二极管代替电磁锁,发光管亮,表示开锁;灭,表示没有开锁。电路图如3.2所示。当P2.0口输出低电平时,二极管发光,表示开锁。图3.2开锁电路3.3复位电路设计在接通电源瞬间,电容C3上的电压很小,RST为高电平,在电容充电的过程中RST端电压逐渐下降,当RST端的电压小于某一数值后,CPU脱离复位状态,当复位按键按下后电容C3通过R5放电,当电容C3放电结束后,RST端的电位由R5与R6分压比决定,由于R5《R6,所以RST为高电平,CPU处于复位状态,松手后,电容C3充电,RST端电位下降,CPU脱离复位状态,R5的作用在于限制按键按下瞬间电容C3的放电电流,避免产生火花以保护按键触电,其电路如图3.3图3.3复位电路3.4报警电路设计图3.4报警电路报警模块由蜂鸣器和单片机组成。选择一只压电式蜂鸣器,压电式蜂鸣器工作时约需要100mA驱动电流。蜂鸣器电路如图3.4所示。当89C51的P2.1口输出为低电平时,蜂鸣器产生蜂鸣音,89C51输出为高电平时,蜂鸣器不发声。3.5键盘电路设计此次课程设计采用4*4矩阵键盘,与P2口相连,采用扫描法。设有0——9十个数字密码,和几个功能键。开机显示----,等待密码输入,输入4个密码,按确认键后,密码比较。P0口送示数据,P2口显示扫描,每一个键对应一个键码,以便将键码转到相应的的键处理子程序,进一步实现数据输入和命令处理的功能,根据按键次数,第一位显示器显示第一次按的密码,第二位显示器显示第二次按的密码,第三位显示器显示第三次按的密码,依此第四位显示器显示第四次按的密码,密码对则执行相关动作,不同则显示器清零,等待重新输入。使用矩阵键盘,所以本设计就采用行列式键盘,同时也能减少键盘与单片机接口时所占用的I/O线的数目,在按键比较多的时候,通常采用这样方法。其原理如图3.5图3.5矩阵键盘扫描P2.4—P2.7,输出全为0,读P2.0—P2.3,若P2.0—P2.3全为1,则键盘上没有闭合键,若P2.0—P2.3不全为1,则有键处于闭合状态。再键盘去抖确认有键闭合计算键号,判断键盘中哪一个键被按下使通过将列线逐列置低电平后,检查行输入状态来实现的。方法是:依次给列线送低电平,然后查所有行线状态,如果全为1,则所按下的键不在此列;如果不全为1,则所按下的键必在此列,而且是在与零电平行线相交的交点上的那个键。键值N=行首键号+列号表3.1按键功能表按键键名功能说明1-9键数字键输入密码D键确定键密码比较C键清除键使显示清零R键密码重设键设定新密码3.6LED数码管显示电路设计LED显示器显示控制方法有两种,即动态显示和静态显示。静态显示亮度一般比动态显示效果好,但本次设计中,采用了动态显示。为了方便编写程序,通常在内部RAM中设置显示缓冲区,存放显示的数字或字符,显示缓冲区单元个数与LED显示器位数相同。此次基于单片机的电子密码锁,我选用动态显示,通过与软件配合,每输入一个密码,进行显示一次,扫描,4个密码输入完后,进行比较,密码正确则开锁,密码错误,可重新输入三次,三次后仍然错误,报警!。用P0.0—P0.7通过上拉电阻接数码管七段显示,P2.4—P2.7接LED位显示,通过软件实现数字和位控制,显示电路原理图如图3.6所示图3.6LED数码显示电路3.7密码存储电路设计电路中单片机的P3.4引脚作为串行时钟线SCL,P3.5引脚作为串行数据线SDA,A0、A1、A2接地,从第0页开始存,单片机