




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、*学院2010 2011学年第 一 学期毕业设计课题名称: 基于单片机控制电子密码锁设计 设计时间: 2010.09.252011.1.10 系 部: 电子信息工程系 班 级: *电气技术 姓 名: * 指导教师: * 讲师 总目录第一部分 任务书 第二部分 开题报告 第三部分 毕业设计正文第 一 部 分任务 书扬州工业职业技术学院毕业设计任务书系 部电子信息工程系指导老师*职称讲师学生姓名*班级*电气技术学号*设计题目基于单片机控制电子密码锁设计设计内容目标和要求一、毕业设计内容和目标:1、基于单片机控制电子密码锁的设计采用at89c51单片机芯片,密码输入方式采用按键输入,错误提示及报警系
2、统采用蜂鸣器来实现。可通过程序修改密码。单片机通过按键的输入动作来判定密码锁开启与否;若密码正确则开启,密码错误则不开启,三次输入错误则控制蜂鸣器动作报警。2、本设计用mcs-51单片机作为核心控制器电子密码锁的设计,并且设计出了系统结构图、程序指令、仿真系统。同时根据电子密码锁的控制要求和特点,确定单片机的输入输出分配,并进行现场调试。二、毕业设计论文要求:1、提出选题的初步设想和研究目的;2、收集、整理与毕业设计有关领域的信息资料;3、完成本毕业设计电路原理图设计;4、完成本毕业设计程序流程图和梯形图控制程序设计;5、完成软件和硬件系统的调试,功能指标达到技术要求;6、根据本毕业设计的设计
3、、编程、工作过程,形成符合学校规定的毕业设计书面文档。教研室审核系部审核第 二 部 分开题报告扬州工业职业技术学院 电子信息工程 系11届毕业设计(论文)开题报告书(表1)学生姓名*专业电气自动化班级*电气学号*题 目基于单片机控制电子密码锁的设计指导教师*职称讲师学 位学士题目类别 工程设计 基础研究 应用研究 其它【课题的内容与要求】本次设计的单片机控制电子密码锁实现方法采用采用一种是用以at89c51为核心的单片机控制方案。利用单片机灵活的编程设计和丰富的io端口,及其控制的准确性,能实现0-5六位数字的简单密码锁功能。密码输入方式采用按键,错误提示及报警系统采用蜂鸣器来实现。可通过程序
4、进行密码的修改。单片机通过按键的输入动作来判定密码锁开启与否;若密码正确则开启,密码错误则不开启,三次输入错误则控制蜂鸣器动作报警。通过以89c51为核心的单片机控制方案。利用单片机灵活的编程设计和丰富的i/o端口,及其控制的准确性,实现基本的密码锁功能。要求:当输入密码正确时,密码锁开启;输入密码错误时,密码锁不开启;当输入密码三次错误后,开启报警系统,蜂鸣器开始报警。确定系统框图。根据系统框图设计电路,确定元器件种类、数量及硬件配置。绘制系统原理电路。调试电路,纠错,追加完善功能。【前言】在日常的生活和工作中, 住宅与部门的安全防范、单位的文件档案、财务报表以及一些个人资料的保存多以加锁的
5、办法来解决。若使用传统的机械式钥匙开锁,人们常需携带多把钥匙, 使用极不方便, 且钥匙丢失后安全性即大打折扣。随着科学技术的不断发展,人们对日常生活中的安全保险器件的要求越来越高。为满足人们对锁的使用要求,增加其安全性。用密码代替钥匙的密码锁应运而生。密码锁具有安全性高、成本低、功耗低、易操作等优点。本文所涉及的是市场占有率最高的是mcs51系列,因为世界上很多知名的ic生产厂家都生产51兼容的芯片。到目前为止,mcs51单片机已有数百个品种,还在不断推出功能更强的新产品。本设计是基于单片机的密码锁设计方案,根据要求,给出了该单片机密码锁的硬件电路和软件程序,同时给出了单片机型号的选择、硬件设
6、计、软件流程图、单片机存储单元的分配、汇编语言源程序及详细注释等内容。【方案的比较与评价】电子密码锁具有操作快、安全性高、成本低、功耗低、易操作等,密码可随时更换等优点免去了出门随身带钥匙的麻烦,同时电子密码锁还具有密码随时可改功能大大的提高了安全可靠性。在安全技术防范领域,具有防盗报警功能的电子密码锁逐渐代替传统的机械式密码锁,克服了机械式密码锁密码量少、安全性能差的缺点,使密码锁无论在技术上还是在性能上都大大提高一步。而本次设计的单片机密码锁,出现了带微处理器的智能密码锁,它除具有电子密码锁的功能外,还引入了智能化管理、专家分析系统等功能,从而使密码锁具有很高的安全性、可靠性,应用日益广泛
7、。智能防盗单片机电子密码锁的广泛推广应用将更有利于房地产市场的全方位拓展,相对于传统的门禁锁具,电子密码锁系列技术产品的应用优势是极其明显的,具有很高的实际运用价值。【预期的效果及指标】能有效地利用单片机控制数字电路完成数字键盘的输入输出信号的处理,实现开锁功能(当按下开锁键,系统将输入与密码进行检查核对,如果正确锁打开,否则不打开。) 报警、锁定键盘功能(若密码输入错误次数超过 3 次,蜂鸣器报警并且锁定键盘。)密码清除功能(当按下清除键时,清除前面输入的所有值。)等功能。通过对工程实例的模拟,熟练地掌握51单片机的编程和程序调试方法; 进一步熟悉单片机中输入输出量的工作方式;通过这次模拟,
8、让我更好的了解单片机的各个方面的优缺点且基本达到预期指标。【进度安排】2010 年 9 月 - 2010 年10月 选题、调研、收集资料2010 年10月5日 - 2010 年 10 月 25 日 论证、开题2010 年10月 25 日 - 2010年 11 月 15日 设计(写作初稿)2010 年 11月15日 - 2010 年 12 月 20日 修改、定稿、打印【参考文献】1 王迎旭编.单片机原理及及应用.机械工业出版社 2001 第三章2 张洪润主编.单片机应用技术教程.北京:清华大学出版社,1997 p3-93 黄志君,高峰,王建.轮胎压力监测系统j.广西工学院学报.2006(4):9
9、12.4肖洪兵主编.跟我学用单片机. 北京:北京航空航天大学出版社,2002.8 5何立民主编.单片机高级教程 第1版北京:北京航空航天大学出版社,2001 6赵晓安主编.mcs-51单片机原理及应用 天津:天津大学出版社,2001.3 7李广第主编单片机基础 第1版北京:北京航空航天大学出版社,1999 8徐惠民、安德宁主编 单片微型计算机原理接口与应用 第1版北京:北京邮电大学出版社,1996 9何立民主编从cygnal 80c51f看8位单片机发展之路.单片机与嵌入式系统应用,2002年 第5期:p58 【指导教师意见】(有针对性地说明选题意义及工作安排是否恰当等)同意提交开题论证 修改
10、后提交 不同意提交(请说明理由)指导教师签章: 年 月 日 【系部意见】同意指导教师意见 不同意指导教师意见(请说明理由) 其它(请说明)系(部)主任签章: 年 月 日第 三 部 分毕业设计正文基于单片机控制电子密码锁的设计*电气技术【摘要】 随着科技的日益发展,电子密码控制系统已越来越符合人们的要求。本文介绍了基于单片机的智能密码控制系统,对系统硬件设计和软件实现进行了详细的描述。该系统采用at89c51单片机,通过at89c51单片机控制系统,实现密码控制的功能。本文从经济实用的角度出发,采用美国atmel公司的单片机at89c51作为主控芯片与数据存储器单元,结合外围的键盘输入、lcd液
11、晶显示、报警、开锁等,用c语言编写主控芯片的控制程序,设计了一款可以通过程序多次更改密码,具有报警功能的电子密码控制系统。这种电路设计具有防试探按键输入、智能控制上锁、开锁、报警、修改密码等多种功能。密码长度可变、保密性强、灵活性高。经实验证明,该密码控制系统具有设计方法合理,简单易行,成本低,安全使用等特点,符合车辆、办公室用锁要求,具有推广价值。【关键词】密码控制;单片机;报警the design of miciocomputer control electronic lock* electricity techniqueabstract:with the increasing devel
12、opment of technology, electronic code control system has been growing in line with peoples requirements. this paper introduces the intelligent password based on single chip control system, the system hardware design and software implementation are described in detail. the system is at89c51 microcont
13、roller, at89c51 microcontroller through the control system, the password control function. from the economical point of view, by the united states atmels at89c51 microcontroller as the master chip and the data memory unit, combined with the external keyboard, lcd liquid crystal display, alarm, unloc
14、k, using c language main chip of the control procedures, designed a program many times can change the password, the password with the alarm function of the electronic control system. the test circuit design with anti-key input, intelligent control lock, unlock, alarm, change the password and other f
15、eatures. variable password length, confidentiality, and high flexibility.the experiment proved that the password control system design is reasonable, simple, low cost, safe use and other characteristics, in line with vehicles, office lock request is worth promoting. keywords:password control; scm; a
16、larm目 录第一章 引言11.1 选题背景11.2 电子密码控制简介11.3 电子控制密码的发展趋势11.4 本次设计所要实现的目标2第二章 方案的比较与选择32.1 方案一:采用数字电路控制方案32.2 方案二:采用以单片机为核心的控制方案3第三章 主要元器件介绍及说明43.1 主控芯片at89c5143.2 at89c51性能简介43.2.1 at89c51引脚功能说明53.2.2 at89c51芯片内部结构7第四章 系统硬件设计104.1 工作原理104.2 电路结构图104.3 电源输入电路114.4 键盘输入电路114.5 led显示电路124.6 复位电路134.7 晶振电路14
17、4.8 报警电路144.9 开锁电路15第五章 系统软件设计165.1 模块介绍165.1.1 主程序模块165.1.2 键盘扫描及识别子程序165.1.3 显示子程序165.2 主程序流程图165.3 按键功能流程图175.4 密码比较和报警流程图185.5 开锁流程图195.6 单片机资源的分配205.7 系统软硬件调试21结束语22致 谢23附录一 c语言程序24附录二 isis 7 professional仿真图35参考文献38 第一章 引 言1.1 选题背景在安全技术防范领域,具有防盗报警功能的电子密码控制系统逐渐代替传统的机械式密码控制系统,克服了机械式密码控制的密码量少、安全性能
18、差的缺点,使电子密码控制系统无论在技术上还是在性能上都大大提高了一步。随着大规模集成电路技术的发展,特别是单片机的问世,出现了带微处理器的智能密码控制系统,它除具有传统电子密码控制系统的功能外,还引入了智能化管理、专家分析系统等功能,从而使密码控制系统具有很高的安全性、可靠性,应用日益广泛。1.2 电子密码控制简介电子密码控制是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。电子密码控制不论性能还是安全性都已大大超过了机械类。其特点如下:1) 保密性好,编码量多,远远大于机械控制。随机开锁成功率几乎为零。2) 密码可变,用户可以随时更改密码,防止密
19、码被盗,同时也可以避免因人员的更替而使控制的保密性下降。(为了更好的保密,本次设计的密码锁的改密功能需要专业人员通过程序进行修改。)3) 误码输入保护,当输入密码多次错误时,报警系统自动启动。4) 无活动零件,不会磨损,寿命长。5) 使用灵活性好,不像机械锁必须佩带钥匙才能开锁。6) 电子密码控制系统具有操作简单易行,一学即会的特点。1.3 电子控制密码的发展趋势由于电子器件所限,以前开发的电子密码控制系统,其种类不多,保密性差,最基本的就是只依靠最简单的模拟电子开关来实现的,制作简单但很不安全,后来便是基于eda来实现的,其电路结构复杂,电子元件繁多,也有使用早先的20引脚的2051系列单片
20、机来实现的,但密码简单,易破解。随着电子元件的进一步发展,电子密码控制系统也出现了很多的种类,功能日益强大,使用更加方便,安全保密性更强,由以前的单密码输入发展到现在的,密码加感应元件,实现了更为真正的电子加密,用户只有密码或电子钥匙中的一样,是打不开锁的,随着电子元件的发展及人们对保密性需求的提高出现了越来越多的电子密码控制系统 。由于数字、字符、图形图像、人体生物特征和时间等要素均可成为电子信息,组合使用这些信息能够使电子防盗密码控制获得更高的保密性,如防范森严的金库,需要使用复合信息密码的电子防盗密码控制系统。组合使用信息也能够使电子防盗密码控制系统获得无穷扩展的可能。可以看出组合使用电
21、子信息是电子密码控制系统今后发展的趋势 。1.4 本次设计所要实现的目标本设计采用单片机为主控芯片,结合外围电路,组成电子密码控制系统,采用0-5六位数字实现简单密码锁功能。用户想要打开锁,必先通过提供的按键输入正确的密码才可以,密码输入错误有提示,为了提高安全性,当密码输入错误三次将报警并锁定键盘。密码可以由专业设计人员修改设定。实现基本的密码锁功能。第二章 方案的比较与选择2.1 方案一 采用数字电路控制方案用以74ls112双jk触发器构成的数字逻辑电路作为密码控制系统的核心控制,共设了9个用户输入键,其中只有4个是有效的密码按键,其它的都是干扰按键,若按下干扰键,键盘输入电路自动清零,
22、原先输入的密码无效,需要重新输入;如果用户输入密码的时间超过10秒(一般情况下,用户不会超过10秒,若用户觉得不便,还可以修改)电路将报警20秒,若电路连续报警三次,电路将锁定键盘2分钟,防止他人的非法操作 。采用数字电路设计方案时设计虽然简单,但控制的准确性和灵活性差。故不采用。2.2 方案二 采用以单片机为核心的控制方案由于单片机种类繁多,各种型号都有其一定的应用环境,因此在选用时要多加比较,合理选择,以期获得最佳的性价比。一般来说在选取单片机时从下面几个方面考虑:性能、存储器、运行速度、i/o口、定时/计数器、串行接口、模拟电路功能、工作电压、功耗、封装形式、抗干扰性、保密性,除了以上的
23、一些还有一些最基本的,比如:中断源的数量和优先级、工作温度范围、有没有低电压检测功能、单片机内有无时钟振荡器、有无上电复位功能等。在开发过程中单片机还受到:开发工具、编程器、开发成本、开发人员的适应性、技术支持和服务等等因素 。基于以上因素本设计选用单片机at89c51作为本设计的核心元件,利用单片机灵活的编程设计和丰富的i/o端口,及其控制的准确性,实现基本的密码控制功能。在单片机的外围电路外接输入按键用于密码的输入和一些功能的控制,外接数码管显示器用于显示作用。当用户需要开锁时,先按键盘的数字键05输入密码。密码输完后按下确认键,如果密码输入正确则开锁,不正确显示密码错误重新输入密码,当三
24、次密码错误则发出报警。用户需要修改密码时,需要专业人员修改设定,提高了安全性。可以看出方案二的控制灵活,准确性好,且保密性强还具有扩展功能,根据现实生活的需要此次设计采用此方案。第三章 主要元器件介绍及说明3.1 主控芯片at89c51at89c51是一个低功耗,高性能cmos 8位单片机,片内含4k bytes的可反复擦写1000次的flash只读程序存储器,器件采用atmel公司的高密度、非易失性存储技术制造,兼容标准mcs-51指令系统及at80c51引脚结构,芯片内集成了通用8位中央处理器和isp flash存储单元,功能强大的微型计算机的at89c51可为许多嵌入式控制应用系统提供高
25、性价比的解决方案。3.2 at89c51性能简介at89c51具有如下特点:40个引脚,4k bytes flash片内程序存储器,128 bytes的随机存取数据存储器(ram),32个外部双向输入/输出(i/o)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,片内时钟振荡器。图3-1 at89c51芯片引脚图此外,at89c51设计和配置了振荡频率可为0hz并可通过软件设置省电模式。空闲模式下,cpu暂停工作,而ram定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存ram的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具
26、有pdip、tqfp和plcc等三种封装形式,以适应不同产品的需求。 其主要功能特性: 兼容mcs-51指令系统 128x8 bit内部ram 4k可反复擦写(1000次)flash rom 2个外部中断源 32个双向i/o口 低功耗空闲和省电模式4.5-5.5v工作电压 中断唤醒省电模式2个16位可编程定时/计数器 3级加密时钟频率0-33mhz 软件设置空闲和省电功能 全双工uart串行中断口线 双数据寄存器指针 可以看出at89c51提供以下标准功能:4k字节flash闪速存储器,128字节内部ram,32个i/o口线,两个数据指针,两个16位定时器/计数器,一个5向量两级中断结构,一个
27、全双工串行通信口,以及片内振荡器和时钟。同时, at89c51可降至0hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式时停止cpu的工作,但允许ram,定时/计数器,串行通信口及中断系统继续工作。掉电方式是在ram中的内容,但振荡器停止工作并禁止其它所有部件工作直到一个硬件复位。3.2.1 at89c51引脚功能说明vcc:电源电压gnd:接地p0口:p0口是一组8位漏极开路型双向i/o口,也即地址/数据总线复用口,作为输出口用时,每位能驱动8个ttl逻辑门电路,对端口写“1”可作为高阻抗输入端口。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,
28、在访问期间激活内部上拉电阻。在flash编程时,p0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。p1口:p1是一个带内部上拉电阻的8位双向i/o口,p1的输出缓冲级可驱动(吸收或输出电流)4个ttl逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号校验期间,p1接收低8位地址。p2口:p2是一个带有内部上拉电阻的8位双向i/o口,p2的输出缓冲级可驱动4个ttl逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个
29、引脚被外部信号拉低时会输出一个电流i。在访问位地址的外部数据存储器(如执行:movx ri 指令)时,p2口线上的内(也即特殊功能寄存器,在整个访问期间不改变。flash 编程或校验时,p2也接收高位地址和其它控制信号。p3口:p3口是一组带有内部上拉电阻的8位双向i/o口。p3口输出缓冲级可驱动(吸收或输出电流)4个ttl逻辑门电路。对p3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。作输入端口时,被外部拉低的p3口将用上拉电阻输出电流i。p3口除了作为一般的i/o口线外,更重要的用途是它的第二功能,p3口的第二功能如下表3-2。表3-2 为 p3口的第二功能端口功能第二功能端口引
30、脚第二功能rxd(p3.0)串行输入口t0(p3.4)定时/计数器0外部输入txd(p3.1)串行输出口t1(p3.5)定时/计数器1外部输入int0(p3.2)外中断0wr(p3.6)外部数据存储器写选通int1(p3.3)外中断1rd(p3.7)外部数据存储器读选通rst:复位输入。当振荡工作时,rst引脚出现两个机器周期上高电平将使单片机复位。ale/prog:当访问外部程序存储器或数据存储器时,ale(地址锁存允许)输出脉冲用于锁存地址的低8位字节。即使不再访问外部存储器,ale仍以时钟振荡频率的1/6输出的正脉冲信号,因此它可对外输出时钟或用于定时目地,要注意的是:当访问外部数据存储
31、器时将跳过一个ale脉冲。如有必要,可通过对特殊功能寄存器(sfr)区中的8eh单元的d0位置位,可禁止ale操作。该位置禁位后,只有一条movx 和movc指令ale才会被激活。此外,该引脚伎被微弱拉高,单片机执行外部程序时,应设置ale无效。psen:程序储存允许(psen)输出是外部程序存储器的读选通信号,当at89s51由外部程序存储器取指令(或数据)时,每个机器周期两次psen有效,即输出两个脉冲。当访问外部数据存储器,高有两次有效的psen信号。ea/vpp:外部访问允许。欲使cpu访问外部程序存储器(地址0000hffffh),ea端必须保持低电平(接地)。需注意的是:如果加密位
32、lb1被编程,复位时内部会锁存ea端状态。如ea端为高电平(接vcc端),cpu则执行内部程序存储器中的指令。flash存储器编程时,该引脚加上12v的编程电压vpp。xtal1:振荡器反相放大器及内部时钟发生器的输入端。xtal2:振荡器反相放大器的输出端。3.2.2 at89c51芯片内部结构特殊功能寄存器:特殊功能寄存器的片内空间分布如下图3-3所示。这些地址并没有全部占用,没有占用的地址不可使用,读这些地址将得到一个随意的数值。而写这些地址单元将不能得到预期的结果。中断寄存器:各中断允许控制位于ie寄存器,5个中断源的中断优先级控制位于ip寄存器。表3-3为 auxr辅助寄存器。arx
33、r 地址=8eh 复位状态=xxx00xx0b addressable wdidledisrto disalebit 7 6 5 4 32 10一、保留为将来扩展用途位disale ale禁止/使用 disale 操作模式 0 ale 输出1/6震荡时钟频率脉冲 1 ale 仅在执行movx或movc指令期间输出脉冲disrto 禁止/使能复位输出 disrto 0 复位引脚在wet溢出时变高1 复位引脚仅为输入wdidle 禁止/使能idle模式的wdtwdidle 0 idle模式wdt继续计数1 idle模式wdt停止计数双时钟指针寄存器:为方便地访问内部和外部数据存储器,提供了两个16
34、位数据指针寄存储器:pd0位于sfr区块中的地址82h、83h和dp1位于地址84h、85h,当sfr中的位dps=0时选择dp0,而dps=1时选择dp1。在使用前初始化dps。表3-4 双时钟指针寄存器auxr1 地址=a2h不可寻址位 复位状态=xxxxxxx0b dpsbit 7 6 5 4 3 2 1 0二、保留为今后扩展用途dps 数据指针选择位 dps 0 选择dptr寄存器dp0l.dp0h 1 选择dptr寄存器dp1l.dp1h电源空闲标志:电源空闲标志(pof)在特殊功能寄存储器sfr中pcon的第4位(pcon.4),电源打开时pof置“1”,它可由软件设置睡眠状态并不
35、为复位所影响。存储器结构:mcs-51单片机内核采用程序存储器和数据存储器空间分开的结构,均具有64kb外部程序和数据的寻址空间。程序存储器:如果ea引脚接地(gnd),全部程序均执行外部存储器。在at89s51,假如接至vcc(电源),程序首先执行从地址0000h0fffh(4kb)内部程序存储器,再执行地址为1000hffffh(60kb)的外部程序存储器。数据存储器:在at89c51的具有128字节的内部ram,这128字节可利用直接或间接寻址方式访问,堆栈操作可利用间接寻址方式进行,128字节均可设置为堆栈区空间。第四章 系统硬件设计4.1 工作原理本设计主要由单片机、独立式按键、数码
36、管显示器和密码存储等部分组成。其中按键用于输入数字密码和进行各种功能的实现。由用户通过连接单片机的独立式按键来输入密码,后经过单片机对用户输入的密码与自己保存的密码进行对比,从而判断密码是否正确,然后控制引脚的高低电平传到开锁电路或者报警电路控制开锁还是报警。本系统共有两部分构成,即硬件部分与软件部分。其中硬件部分由电源输入部分、键盘输入部分、复位部分、晶振部分、显示部分、报警部分组成,软件部分对应的由主程序、初始化程序、数码管显示程序、键盘扫描程序、启动程序、关闭程序、键功能程序、密码设置程序和延时程序等组成。其原理框图如图4-1所示。按键输入复位电路晶振电路电源输入显示电路报警电路开锁电路
37、at89c51图4-1 电子密码锁原理框图4.2 电路结构图在确定了选用什么型号的单片机后,就要确定在外围电路,其外围电路包括电源输入部分、键盘输入部分、复位部分、晶振部分、显示部分、报警部分组成,根据实际情况键盘输入部分选择独立式键盘,显示部分选择数码管显示。总图如图4-2所示: 图4-2 电路结构图4.3 电源输入电路密码锁主要控制部分电源需要用5v直流电源供电,而5v电源输入时往往伴有杂波,所以加一个2.2uf的电容滤波。这样输出的电压一般能满足要求。4.4 键盘输入电路本次设计采用的是独立式按键键盘,密码锁的密码由键盘输入完成,本设计中使用的这个独立键盘不但能完成密码的输入还能作特别功
38、能键使用,比如清空显示功能等。键盘的每个按键功能在程序设计中设置 。其大体功能(看键盘按键上的标记)及与单片机引脚接法如图4-3所示:图4-3 按键输入原理图 首先辨别键盘中有无键按下,有单片机i/o口向键盘送全扫描字,然后读入行线状态来判断。方法是:向行线输出全扫描字00h,把全部列线置为低电平,然后将列线的电平状态读入累加器a中。如果有按键按下,总会有一根行线电平被拉至低电平从而使行线不全为1。判断键盘中哪一个键被按下使通过将列线逐列置低电平后,检查行输入状态来实现的。方法是:依次给列线送低电平,然后查所有行线状态,如果全为1,则所按下的键不在此列;如果不全为1,则所按下的键必在此列,而且
39、是在与零电平行线相交的交点上的那个键。具体的功能设计如表4.3:表4.3 按键功能按 键键 名功 能 说 明05键数 字 键输 入 密 码输入键确 定 键比 较 密 码清除 键清 除 键使 显 示 器 清 零4.5 led显示电路本系统设计的显示电路是为了给使用者以提示而设置的。本系统的显示采用串行显示的方式,只使用单片机的一个串行口,利用74eg-mpx6-cc发光显示数码就可以完成单片机的显示功能,显示电路的电路原理图如图4-4所示。用p0.0p0.7接74eg-mpx6-cc的a,b,c,g八个端口,p2.0-p2.5接74eg-mpx6-cc的1-5六个端口。通过软件实现数字和位控制。
40、图4-4 显示电路原理图4.6 复位电路单片机复位是使cpu和系统中的其他功能部件都处在一个确定的初始状态,并从这个状态开始工作,例如复位后pc0000h,使单片机从第个单元取指令。无论是在单片机刚开始接上电源时,还是断电后或者发生故障后都要复位。在复位期间(即rst为高电平期间),p0口为高组态,p1p3口输出高电平;外部程序存储器读选通信号psen无效。地址锁存信号ale也为高电平。根据实际情况选择如图4-5所示的复位电路。该电路在最简单的复位电路下增加了手动复位按键,在接通电源瞬间,电容c1上的电压很小,复位下拉电阻上的电压接近电源电压,即rst为高电平,在电容充电的过程中rst端电压逐
41、渐下降,当rst端的电压小于某一数值后,cpu脱离复位状态,由于电容c1足够大,可以保证rst高电平有效时间大于24个振荡周期,cpu能够可靠复位。增加手动复位按键是为了避免死机时无法可靠复位。当复位按键按下后电容c1通过r5放电。当电容c1放电结束后,rst端的电位由r5与r6分压比决定。由于r53次?锁定开始初始化有键按下?调用显示启动定时ny5.3 按键功能流程图如图5-2为按键功能流程图,在按键当中,有与清除、确认的程序相对应的按键,并按顺序与输入的数相比较,当输入正确时,进入密码程序,错误时进行清除。键功能程序键值输入?键值清除?键值确认?密码输入程序清除程序确认程序返回yynnn图
42、5-2 按键功能流程图5.4 密码比较和报警流程图如图5-3为密码比较和报警流程图,在输入密码时,每输入以为系统都会自动与所设密码进行比较,如果正确则继续进行下一位。用户可以通过“清除”按键来清除输入错误的密码。如果密码输入正确程序则自动开启密码锁,如果输入密码错误则提示密码错误,并返回进行第二次密码输入。密码输入错误三次后则启动报警系统。图5-3 密码比较和报警流程图y开始比较第一位比较下一位6位比较完正确开锁清零3次则报警清除显示记录错误次数yynnn5.5 开锁流程图如图5-4为开锁流程图,开始时输入密码,如果输入正确,则开锁成功。如果输入错误则不开锁并有提示,如果错误次数累计达到三次,
43、则执行报警程序并锁定键盘15s,15s后错误次数和信号清零。图5-4 开锁流程图初始化输入密码确认程序所输入密码正确?y开锁成功开锁程序输入次数加1次数3?报警程序返回nyn5.6 单片机资源的分配密码的输入与判断需要定义4个变量。原始密码存储在数组init_val6中。键盘输入的密码存储在数据show_val6中,变量 key_index的值表示当前按键是六位密码中的哪一位,每输入一个密码数字该变量增一。密码输入错误的次数暂存在变量error_num中。计时功能需要5个变量。模式变量cnt_state存储计时属于什么状态,0表示待机计时,1表示密码正确的计时,2表示密码错误3次的计时。三个变
44、量(cnt_val_15s,cnt_val_5s, cnt_val_4s)分别实现待机、密码正确和密码错误3次后的计时工作。定时器t1每250ms产生一次中断,变量t1_cnt记录定时器溢出中断的次数,当记录到4000时表示计时1秒。5.7 系统软硬件调试软件调试方案:keil软件中,在“文件新建文件”中,新建c语言源程序文件,编写相应的程序。在“文件新建项目”的菜单中,新建项目并将c语言源程序文件包括在项目文件中。在“项目编译”菜单中将c源文件编译,检查语法错误及逻辑错误。在编译成功后,产生以 “*.hex”和“*.bin” 后缀的目标文件。硬件调试方案:在设计平台中,将单片机的p1.0-p
45、1.7分别与8个独立式键盘通过插线连接起来,将p3.0-p3.3分别与4个发光二极管连接起来,p3.4与蜂鸣器的输入连接起来。在keil中将程序文件编译成目标文件后,将产生的“hex文件”保留,在isis 7 professional仿真软件上画出电路接线图,完成后将“keil”中产生的“hex”文件插入到51单片机芯片中保存并进行仿真。然后检查所编写的程序是否达到题目的要求,是否全面完整地完成试题的内容。结束语纵观我们现在生活的各个领域,从导弹的导航装置,到飞机上各种仪表的控制,从计算机的网络通讯与数据传输,到工业自动化过程的实时控制和数据处理,以及我们生活中广泛使用的各种智能ic卡、电子宠
46、物等,这些都离不开单片机。以前没有单片机时,这些东西也能做,但是只能使用复杂的模拟电路,然而这样做出来的产品不仅体积大,而且成本高,并且由于长期使用,元器件不断老化,控制的精度自然也会达不到标准。在单片机产生后,我们就将控制这些东西变为智能化了,我们只需要在单片机外围接一点简单的接口电路,核心部分只是由人为的写入程序来完成。这样产品的体积变小了,成本也降低了,长期使用也不会担心精度达不到了。所以,它的魔力不仅是在现在,在将来将会有更多的 人来接受它、使用它。据统计,我国的单片机年容量已达3亿片,且每年以大约20%的速度增长,但相对于世界市场我国的占有率还不到1%。特别是沿海地区的玩具厂等生产产
47、品多数用到单片机,并不断地辐射向内地。所以,学习单片机在我国是有着广阔前景的。而在本次的毕业论文是基于单片机的电子密码锁控制系统,主要核心就是80c51单片机。通过这次设计,我综合运用大学几年所学知识去分析和解决问题,我深刻的了解和掌握了单片机的控制原理和设计方法。不仅加深和回顾了单片机等专业知识而且积累到单片机控制技术在实际中的经验。由于自身缺少在实践设计的经验,所以在这次的设计中我自身也发现了很多不足的方面,从论文的本身的方面的结构到具体设计中硬件设计知识和经验的不足使得设计和论文存在的很多的问题,但是我的导师李建荣老师的细心指导下,经过前后多次的修改和完善,最终完成了毕业设计的任务。单片机控制技术领域是一个有着非常潜力和前景的专业技术,我相信通过这次毕业论文的设计,不仅加深和掌握了这一专业技术,而且也
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- ktv水果配送合同范本
- 人力转让合同范本
- 仓库维修维护合同范本
- 出国合同范本ps
- 乐器进货合同范本
- 冰箱购买合同范例
- 单位清单合同范本
- 劳务服务发票合同范本
- 公司运货合同范本
- 协力商合同范本
- 2025年不停电电源(UPS)项目合作计划书
- 2025年国家林业和草原局直属事业单位第一批招聘应届毕业生96人历年高频重点模拟试卷提升(共500题附带答案详解)
- 2025年春季开学典礼校长讲话稿-少年无畏凌云志扶摇直上入云苍
- 2025寒假开学第一课 课件【1】
- 2025年湖南食品药品职业学院高职单招职业适应性测试近5年常考版参考题库含答案解析
- 2024-2024年高考全国卷英语语法填空
- 会议会务服务投标方案投标文件(技术方案)
- 无违法犯罪记录证明申请表(个人)
- (更新版)HCIA安全H12-711笔试考试题库导出版-下(判断、填空、简答题)
- 华科版五年级全册信息技术教案(共24课时)
- 《乒乓球》体育课教案(全)
评论
0/150
提交评论