单片机课程设计―智能密码锁.

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

湖南工程学院课程设计课程名称单片机原理与应用课题名称智能密码锁设计专业电子信息工程班级0981班学号200913020109姓名刘维新指导教师汪超、李晓秀、李世军等2012年5月18日湖南工程学院课程设计任务书课程名称单片机原理与应用课题智能密码锁设计专业班级电子信息0981班学生姓名刘维新学号200913020109指导老师汪超、李晓秀、李世军等审批任务书下达日期2012年5月7日任务完成日期2012年5月18日设计内容与设计要求设计内容:1、密码的设定,此密码是固定在程序存储器ROM中,假设预设的密码为“12345”共5位密码。2、密码的输入:采用两个按键来完成密码的输入,其中一个按键为功能键,另一个按键为数字键。在密码都已经输入完毕并且确认功能键之后,才能完成密码的输入过程。然后进入密码的判断比较处理状态并给出相应的处理过程。3、按键禁止功能:初始化时,允许按键输入密码,当有按键按下并开始进入按键识别状态时,按键禁止功能被激活,但启动的状态是在3次密码输入不正确的情况下发生的。设计要求:1、设计方案要合理、正确;2、系统硬件设计及焊接制作;3、系统软件设计及调试;4、系统联调;5、写出设计报告。主要设计条件1、MCS-51单片机实验操作台1台;2、PC机及单片机调试软件;3、单片机应用系统板1套;4、制作工具1套;5、系统设计所需的元器件。说明书格式1.封面2.课程设计任务书3.目录4.系统总体方案设计5.系统硬件设计6.软件设计(包括流程图7.系统的安装调试说明8、总结9、参考文献10、附录(源程序清单及硬件原理图等;11、课程设计成绩评分表。进度安排设计时间为两周第一周星期一、上午:布置课题任务,讲课及课题介绍下午:借阅有关资料,总体方案讨论星期二、确定总体设计方案星期三、硬件模块方案设计星期四、软件模块方案设计星期五、设计及调试第二周星期一、设计及调试星期二、设计及调试星期三、总调星期四、写说明书星期五、上午:写说明书,整理资料下午:交设计资料,答辩参考文献[1]、《微型计算机原理及应用》许立梓编机械工业出版社2002[2]、《微型计算机接口技术及应用》刘乐善编华中理工大学出版社2000[3]、《计算机硬件技术基础试验教程》邹逢兴编高等教育出版社2000[4]、《16位微型计算机原理接口及其应用》周佩玲编中国科学技术大学出版社2000[5]、《微型计算机原理与接口技术》吴秀清编中国科学技术出版社2001[6]、《微型计算机接口技术》邓亚平编清华大学出版社2001[7]、《单片机原理及及应用》王迎旭编机械工业出版社2001[8]、《单片机应用程序设计技术》周航慈著北京航空航天大学出版社2002[9]、《单片机实用技术问答》谢宜仁主编人民邮电出版社2002第1章单片机系统概述1.1单片机的介绍随着科技的飞速发展,单片机随之诞生,它被人么运用到生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械以及各种智能机械了。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。在一片集成电路芯片上集成微处理器、存储器、I/O接口电路,从而构成了单芯片微型计算机,即单片机。Intel公司推出了MCS-51系列单片机:集成8位CPU、4K字节ROM、128字节RAM、4个8位并口、1个全双工串行口、2个16位定时/计数器。寻址范围64K,并有控制功能较强的布尔处理器。1.2设计内容及要求对于此次课程设计我们使用80C51为作为主控芯片与数据存储器单元,结合外围的矩阵键盘输入、LCD显示、报警、开锁等控制方案来实现的电子密码锁的设计,其主要具有如下功能:(1密码的设定:此密码是固定在程序存储器ROM中,假设预设的密为“12345”共5位密码。(2密码的输入:采用一组数字键盘来完成密码的输入及一个确认功能键来确认密码的正确性。在密码都已经输入完毕并且确认功能键之后,才能完成密码的输入过程。然后进入密码的判断比较处理状态并给出相应的处理过程。(3密码的删除功能:当在密码输入时,不小心将密码输错,此时只要按下删除键,便能重新输入密码。(4按键禁止功能:初始化时,允许按键输入密码,当有按键按下并开始进入按键识别状态时,按键禁止功能被激活,但启动的状态是在3次密码输入不正确的情况下发生的。(5报警功能:当连续输入的三次密码全都错误的情况下,自动启用报警功能,有警报声响起及红灯闪烁。(6复位功能:在输入密码确认后最终出现两种情况:一是密码输入正确,此时密码锁自动打开,一段时间后便自动复位,进入下一次密码的输入。二是密码输入错误,此时启动警报,只有当人为的按下复位功能键才能解除警报状态。第2章系统总体方案设计2.1总体方案此次智能密码锁控制器的设计主要是通过程序来控制键盘和报警器等,在一般状态下输入原始密码,则可以开锁。如果在锁住时输入密码,且连续三次密码错误,报警器报警,手动按下复位按钮,解除警报。此次设计我们将密码固化在ROM中,放入表中,在得到按键后,查表比较密码,如果正确,显示”GOOD”提示,如果三次密码错误,就禁止读取按键函数,只打开报警电路发出报警声及红灯闪烁!系统总框图如下所示:2.1系统总框图密码对显示GOOD80C51单片机矩阵键盘控制LCD六位显示器输入错误返回连续输错三次启动报警2.2系统组成本系统主要包括两个部分:硬件部分和软件部分。硬件部分:矩阵键盘接口电路、密码锁的控制电路、复位控制电路和输出显示电路等三部分。键盘部分包括键盘扫描时序产生电路、键盘扫描、弹跳消除、键盘译码、按键存储。程序控制包括数字按键的数字输入、存储及清除、功能按键的功能设计、激活开锁电路、密码核对。复位电路包括复位控制按钮。输出显示电路的设计包括数据选择、BCD对显示译码、七段LED显示扫描。软件部分:汇编程序的主函数和子函数。其中子函数又包括:按键读取函数、延时函数、定时中断函数、按键处理函数、删除函数、密码比较函数、显示函数、报警函数、复位函数。第3章系统硬件设计3.1主控芯片80C51此次智能密码的锁设计主要是围绕80C51芯片而做的,80C51是INTEL公司MCS-51系列单片机中最基本的产品,它采用INTEL公司可靠的CHMOS工艺技术制造的高性能8位单片机,属于标准的MCS-51的HCMOS产品。它结合了HMOS的高速和高密度技术及CHMOS的低功耗特征,它继承和扩展了MCS-48单片机的体系结构和指令系统。80C51内置中央处理单元、128字节内部数据存储器RAM、32个双向输入/输出(I/O口、2个16位定时/计数器和5个两级中断结构,一个全双工串行通信口,片内时钟振荡电路。图3.180C51芯片引脚图80C51各管脚的功能如下:●VCC和GND:分别为外接电源和接地●P0~P3:为输入/输出口线,其各有的功能,其中P3口每一位还有特殊功能。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。●ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。●/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。●/EA/VPP:当/EA保持低电平时,在此期间外部程序存储器(0000H-FFFFH,不管是否有内部程序存储器。●XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。●XTAL2:来自反向振荡器的输出。3.2单片机振荡电路8051内置频率可达12MHz的时钟电路,用来产生整个单片机运行的脉冲时序,但8051单片机需外置振荡电容,晶振采用12M外接30pF电容构成单片机时钟电路。图3.2单片机振荡电路3.3单片机复位电路单片机系统的复位电路在可以采用的是按钮式上电复位电路形式,其中电阻R采用10KΩ的阻值,电容采用10μF的电容值。图3.3复位电路3.4键盘按键电路此次设计使用的是矩阵键盘,这种形式的键盘能减少键盘与单片机接口时所占用的I/O线的数目,在按键比较多的时候,通常采用这样方法。图3.4(a矩阵键盘这种键盘内部结构为每一条水平(行线与垂直线(列线的交叉处不相通,而是通过一个按键来连通,利用这种行列式矩阵结构只需要N条行线和M条列线,即可组成具有N×M个按键的键盘。我们这次设计的电子密码锁的按键部分采用4X4矩阵键盘,键盘行列各有四条线键盘排列在行与列线的交点上如图3.4(a所示。图3.4(b矩阵键盘内部结构图如上图所示键盘,确定矩阵式键盘上何键被按下常使用的为“行扫描法”。行扫描法行扫描法又称为逐行(或列扫描查询法,是一种最常用的按键识别方法,介绍过程如下。判断键盘中有无键按下:(1先将行线p1.7-p1.4置0111,然后检测列线的状态。如果p1.3-p1.0为0111,则k0被按下;如果p1.3-p1.0为1011,则k1被按下;如果p1.3-p1.0为1101,则k2被按下;如果p1.3-p1.0为1110,则k3被按下;(2将行线p1.7-p1.4置1011,然后检测列线的状态,方法同(1;(3将行线p1.7-p1.4置1101,然后检测列线的状态,方法同(1;(4将行线p1.7-p1.4置1110,然后检测列线的状态,方法同(1。3.5显示电路八段共阳显示器的结构是八个二极管连接一个阳极的结构,只要另一段为低电平,二极管就会发光,从而形成一段。将八段顺序排列后就成为具有一定编码的共阳显示器了。本设计显示电路采用共阳显示器显示输入的五位密码,和一个密码输入次数提示位。其显示状态有三种:当密码锁处于开始状态时,LED不做任何显示,当密码锁输入正确的密码是即显示GOOD,当密码连续输入三次错误时LED显示“——————”并且不停闪烁。此三种状态图如下所示。图3.5(a无任何输入时显示状态图3.5(b输入密码正确的显示状态图3.5(c连续三次输错密码的显示状态3.6报警电路输入密码与设定密码做比较,当输入密码与设定密码不同,返回再输入,当输入密码次数超过3次时,通过软件从80C51的P3.6输出脉冲,是红色报警二极管闪烁,并且从P3.7输出脉冲使三极管导通扬声器鸣笛报警。图3.6报警电路原理图第4章软件设计4.1软件总体设计本系统软件设计由主程序、初始化程序、LCD显示程序、键盘扫描程序、键功能程序、密码设置程序、密码比较程序、密码对开锁、错报警和延时程序等组成。软件设计总流程图如下:图4.1软件设计总流程图手动复位4.2键盘扫描及识别子程序键盘采用查询的方式,放在主程序中,当没有按键按下的时候,单片机循环主程序,一旦有按键按下,便转向相应的子程序处理,处理结束再返回。4.3比较密码子程序当按下确定按键后程序执行密码比较,判断密码是否正确,从而决定是否禁止键盘,是否报警,还是继续等待按键输入,图4.2是密码比较函数流程图:开始取密码密码正确调密码输入正确显示程序延时返回到P.显示程序返回到P.显示程序NY图4.2比较密码子程序流程图4.4显示程序设计由于是分屏显示数据,所以就要用到5个显示子程序,分别是:关闭状态显示子程序、开锁状态显示子程序、密码输入及修改状态显示子程序、密码输入错误后的提示子程序。密码在规定的时间内输入错误次数超过3次后的锁定状态显示子程序。为了显示数字,要为LED显示器提供字型代码。我用的是共阳极的显示器。4.5按键功能流程图如图4.3为按键功能流程图,在按键当中,有与输入、开锁、清除、确认的程序相对应的按键,并按顺序与输入的数相比较,当输入正确时,进入密码程序,错误时进行清除,最后确认程序。图4.3按键功能流程图4.6开锁流程图如

1 / 32
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功