ImageVerifierCode 换一换
格式:DOC , 页数:56 ,大小:410KB ,
资源ID:4864604      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-4864604.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于单片机密码锁毕业论文[1][1].doc.deflate.doc)为本站会员(wj)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

基于单片机密码锁毕业论文[1][1].doc.deflate.doc

1、吉 林 铁 道 职 业 技 术 学 院毕 业 设 计 论 文论文题目: 基于AT24C01的多功能密码控制系统的设计 专 业 机电设备3081 学生姓名 常伟东 设计(论文)指导教师: 刘振波 开题日期: 2011年 1 月 4 日完成日期: 2011年 4月24日一、设计题目及内容二、基本要求三、重点研究问题四、主要技术指标五、应收集的资料及参考文献六、进度计划设计环节日 期1题目选择1月2整理资料1月3硬件模拟2月4设计计划2月5软件编程34月6整理4月七、附注 目 录1引言11.1选题背景11.2电子密码控制简介11.3电子密码控制的发展趋势11.4本设计所要实现的目标22设计方案的选择

2、32.1方案一:采用数字电路控制32.2方案二:采用以单片机为核心的控制方案33主要元器件介绍及I2C总线说明43.1主控芯片AT89C5143.1.1AT89C51性能简介43.1.2AT89C51引脚功能说明53.1.3AT89C51芯片内部结构73.2LCD1602显示器83.2.1 接口信号说明83.2.2 主要技术参数93.2.3 基本操作程序93.3晶体振荡器93.4AT24C01串行EEPROM103.5I2C总线说明114系统硬件构成154.1设计原理154.2电路总图构成154.3电源输入部分164.4键盘输入部分164.5复位部分174.6晶振部分184.7显示部分184.

3、8报警部分195系统软件设计205.1主程序流程图205.2按键功能流程图215.3密码设置流程图215.4开锁流程图22结 论24参考文献25致 谢26附录一:总原理图27附录二: 程序29附录三: 翻译44摘 要随着科技的日益发展,电子密码控制系统已越来越符合人们的要求。本文介绍了基于单片机和串行EEPROM的智能密码控制系统,对系统硬件设计和软件实现进行了详细的描述。该系统采用AT89C51单片机和AT24C01串行EEPROM,通过AT89C51模拟I2C总线和AT24C01通讯,实现密码控制的功能。本文从经济实用的角度出发,采用美国Atmel公司的单片机AT89C51作为主控芯片与数

4、据存储器单元,结合外围的矩阵键盘输入、LCD液晶显示、报警、开锁等,用C语言编写主控芯片的控制程序与EEPROM读写程序相结合,设计了一款可以多次更改密码,具有报警功能的电子密码控制系统。这种电路设计具有防试探按键输入、智能控制上锁、开锁、报警、修改密码等多种功能。密码长度可变、保密性强、灵活性高。经实验证明,该密码控制系统具有设计方法合理,简单易行,成本低,安全使用等特点,符合车辆、办公室用锁要求,具有推广价值。关键词: 密码控制;单片机;EEPROM读写程序;报警1 引言1.1 选题背景在安全技术防范领域,具有防盗报警功能的电子密码控制系统逐渐代替传统的机械式密码控制系统,克服了机械式密码

5、控制的密码量少、安全性能差的缺点,使电子密码控制系统无论在技术上还是在性能上都大大提高了一步。随着大规模集成电路技术的发展,特别是单片机的问世,出现了带微处理器的智能密码控制系统,它除具有传统电子密码控制系统的功能外,还引入了智能化管理、专家分析系统等功能,从而使密码控制系统具有很高的安全性、可靠性,应用日益广泛。1.2 电子密码控制简介电子密码控制是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。电子密码控制不论性能还是安全性都已大大超过了机械类。其特点如下:1) 保密性好,编码量多,远远大于机械控制。随机开锁成功率几乎为零。2) 密码可变,用户

6、可以随时更改密码,防止密码被盗,同时也可以避免因人员的更替而使控制的保密性下降。3) 误码输入保护,当输入密码多次错误时,报警系统自动启动。4) 无活动零件,不会磨损,寿命长。5) 使用灵活性好,不像机械锁必须佩带钥匙才能开锁。6) 电子密码控制系统具有操作简单易行,一学即会的特点。1.3 电子密码控制的发展趋势由于电子器件所限,以前开发的电子密码控制系统,其种类不多,保密性差,最基本的就是只依靠最简单的模拟电子开关来实现的,制作简单但很不安全,后来便是基于EDA来实现的,其电路结构复杂,电子元件繁多,也有使用早先的20引脚的2051系列单片机来实现的,但密码简单,易破解。随着电子元件的进一步

7、发展,电子密码控制系统也出现了很多的种类,功能日益强大,使用更加方便,安全保密性更强,由以前的单密码输入发展到现在的,密码加感应元件,实现了更为真正的电子加密,用户只有密码或电子钥匙中的一样,是打不开锁的,随着电子元件的发展及人们对保密性需求的提高出现了越来越多的电子密码控制系统 。由于数字、字符、图形图像、人体生物特征和时间等要素均可成为电子信息,组合使用这些信息能够使电子防盗密码控制获得更高的保密性,如防范森严的金库,需要使用复合信息密码的电子防盗密码控制系统。组合使用信息也能够使电子防盗密码控制系统获得无穷扩展的可能。可以看出组合使用电子信息是电子密码控制系统今后发展的趋势 。1.4 本

8、设计所要实现的目标本设计采用单片机为主控芯片,结合外围电路,组成电子密码控制系统,用户想要打开锁,必先通过提供的键盘输入正确的密码才可以,密码输入错误有提示,为了提高安全性,当密码输入错误三次将报警。密码可以由用户自己修改设定,锁打开后才能修改密码。修改密码之前必须再次输入密码,在输入新密码时候需要二次确认,以防止误操作。512 设计方案的选择2.1 方案一:采用数字电路控制用以74LS112双JK触发器构成的数字逻辑电路作为密码控制系统的核心控制,共设了9个用户输入键,其中只有4个是有效的密码按键,其它的都是干扰按键,若按下干扰键,键盘输入电路自动清零,原先输入的密码无效,需要重新输入;如果

9、用户输入密码的时间超过10秒(一般情况下,用户不会超过10秒,若用户觉得不便,还可以修改)电路将报警20秒,若电路连续报警三次,电路将锁定键盘2分钟,防止他人的非法操作 。采用数字电路设计方案时设计虽然简单,但控制的准确性和灵活性差。故不采用。2.2 方案二:采用以单片机为核心的控制方案由于单片机种类繁多,各种型号都有其一定的应用环境,因此在选用时要多加比较,合理选择,以期获得最佳的性价比。一般来说在选取单片机时从下面几个方面考虑:性能、存储器、运行速度、I/O口、定时/计数器、串行接口、模拟电路功能、工作电压、功耗、封装形式、抗干扰性、保密性,除了以上的一些还有一些最基本的,比如:中断源的数

10、量和优先级、工作温度范围、有没有低电压检测功能、单片机内有无时钟振荡器、有无上电复位功能等。在开发过程中单片机还受到:开发工具、编程器、开发成本、开发人员的适应性、技术支持和服务等等因素 。基于以上因素本设计选用单片机AT89C51作为本设计的核心元件,利用单片机灵活的编程设计和丰富的I/O端口,及其控制的准确性,实现基本的密码控制功能。在单片机的外围电路外接输入键盘用于密码的输入和一些功能的控制,外接LCD1602显示器用于显示作用。当用户需要开锁时,先按键盘开锁键之后按键盘的数字键09、AF输入密码。密码输完后按下确认键,如果密码输入正确则开锁,不正确显示密码错误重新输入密码,当三次密码错

11、误则发出报警;当用户需要修改密码时,先按下键盘设置键后输入原来的密码,只有当输入的原密码正确后才能设置新密码。新密码输入无误后按确认键使新密码将得到存储,密码修改成功。可以看出方案二的控制灵活,准确性好,且保密性强还具有扩展功能,根据现实生活的需要此次设计采用此方案。3 主要元器件介绍及I2C总线说明3.1 主控芯片AT89C51AT89C51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及AT80C51引脚结构,芯片内集成了通用8位中央处理器和

12、ISP Flash存储单元,功能强大的微型计算机的AT89C51可为许多嵌入式控制应用系统提供高性价比的解决方案。3.1.1 AT89C51性能简介 AT89C51具有如下特点:40个引脚,4k Bytes Flash片内程序存储器,128 bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,片内时钟振荡器。此外,AT89C51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存R

13、AM的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。 图3-1 AT89C51芯片引脚图其主要功能特性: 兼容MCS-51指令系统 4k可反复擦写(1000次)Flash ROM32个双向I/O口 4.5-5.5V工作电压2个16位可编程定时/计数器 时钟频率0-33MHz全双工UART串行中断口线 128x8 bit内部RAM2个外部中断源 低功耗空闲和省电模式中断唤醒省电模式 3级加密软件设置空闲和省电功能 双数据寄存器指针 可以看出AT89C51提供以下标准功能:4K字节Flash闪速存储器,128字节内

14、部RAM,32个I/O口线,两个数据指针,两个16位定时器/计数器,一个5向量两级中断结构,一个全双工串行通信口,以及片内振荡器和时钟。同时, AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式时停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式是在RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到一个硬件复位。3.1.2 AT89C51引脚功能说明VCC:电源电压GND:地P0口:P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口,作为输出口用时,每位能驱动8个TTL逻辑门电路,对端口写“1”可作为高阻

15、抗输入端口。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。在Flash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。P1口:P1是一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号校验期间,P1接收低8位地址。P2口:P2是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动4个TTL逻辑门电路。对端口写“1”,

16、通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流I。在访问位地址的外部数据存储器(如执行:MOVX Ri 指令)时,P2口线上的内(也即特殊功能寄存器,在整个访问期间不改变。Flash 编程或校验时,P2也接收高位地址和其它控制信号。P3口:P3口是一组带有内部上拉电阻的8位双向I/O口。P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。作输入端口时,被外部拉低的P3口将用上拉电阻输出电流I。P3口除了作为一般的I/O口线外,更重要的用途是它

17、的第二功能,P3口的第二功能如下表3-2。表3-2 为 P3口的第二功能端口功能第二功能端口引脚第二功能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仍以时钟振荡频

18、率的1/6输出的正脉冲信号,因此它可对外输出时钟或用于定时目地,要注意的是:当访问外部数据存储器时将跳过一个ALE脉冲。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。该位置禁位后,只有一条MOVX 和MOVC指令ALE才会被激活。此外,该引脚伎被微弱拉高,单片机执行外部程序时,应设置ALE无效。PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89S51由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。当访问外部数据存储器,高有两次有效的PSEN信号。EA/VPP:外部访问允许。欲使CPU访问外

19、部程序存储器(地址0000HFFFFH),EA端必须保持低电平(接地)。需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端为高电平(接VCC端),CPU则执行内部程序存储器中的指令。Flash存储器编程时,该引脚加上12V的编程电压VPP。XTAL1:振荡器反相放大器及内部时钟发生器的输入端。XTAL2:振荡器反相放大器的输出端。3.1.3 AT89C51芯片内部结构特殊功能寄存器:特殊功能寄存器的片内空间分布如下图3-3所示。这些地址并没有全部占用,没有占用的地址不可使用,读这些地址将得到一个随意的数值。而写这些地址单元将不能得到预期的结果。中断寄存器:各中断允许控制位

20、于IE寄存器,5个中断源的中断优先级控制位于IP寄存器。表3-3为 AUXR辅助寄存器。ARXR 地址=8EH 复位状态=XXX00XX0B Not BitAddressable 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模式WD

21、T继续计数1 IDLE模式WDT停止计数双时钟指针寄存器:为方便地访问内部和外部数据存储器,提供了两个16位数据指针寄存储器:PD0位于SFR区块中的地址82H、83H和DP1位于地址84H、85H,当SFR中的位DPS=0时选择DP0,而DPS=1时选择DP1。在使用前初始化DPS。表3-4 双时钟指针寄存器AUXR1 地址=A2H不可寻址位 复位状态=XXXXXXX0B DPS Bit 7 6 5 4 3 2 1 0 保留为今后扩展用途DPS 数据指针选择位 DPS 0 选择DPTR寄存器DP0L.DP0H 1 选择DPTR寄存器DP1L.DP1H电源空闲标志:电源空闲标志(POF)在特殊

22、功能寄存储器SFR中PCON的第4位(PCON.4),电源打开时POF置“1”,它可由软件设置睡眠状态并不为复位所影响。存储器结构:MCS-51单片机内核采用程序存储器和数据存储器空间分开的结构,均具有64KB外部程序和数据的寻址空间。程序存储器:如果EA引脚接地(GND),全部程序均执行外部存储器。在AT89S51,假如接至VCC(电源),程序首先执行从地址0000H0FFFH(4KB)内部程序存储器,再执行地址为1000HFFFFH(60KB)的外部程序存储器。数据存储器:在AT89C51的具有128字节的内部RAM,这128字节可利用直接或间接寻址方式访问,堆栈操作可利用间接寻址方式进行

23、,128字节均可设置为堆栈区空间。3.2 LCD1602显示器现在的字符型液晶模块已经是单片机应用设计中最常用的信息显示器件了。1602型LCD显示模块具有体积小,功耗低,显示内容丰富等特点。1602型LCD可以显示2行16个字符,有8位数据总线D0-D7和RS,R/W,EN三个控制端口,工作电压为5V,并且具有字符对比度调节和背光功能。 3.2.1 接口信号说明1602型LCD的接口信号说明如表3-5所示:表3-5为 1602型LCD的接口信号说明编号符号引脚说明编号符号引脚说明1VSS电源地9D2Data I/O2VDD电源正极10D3Data I/O3V0液晶显示偏压信号11D4Data

24、 I/O4RS数据/命令选择端(H/L)12D5Data I/O5R/W读写选择端(H/L)13D6Data I/O6E使能信号14D7Data I/O7D0Data I/O15BLA背光源正极8D1Data I/O16BLK背光源负极 3.2.2 主要技术参数 1602型LCD的主要技术参数如表3-6所示:表3-6为 1602型LCD的主要技术参数显示容量芯片工作电压工作电流模块最佳工作电压字符尺寸16X2个字符4.55.5V2.0mA(5.0V)5.0V2.95X4.35(WXH)mm 3.2.3 基本操作程序 读状态:输入:RS=L,RW=L,E=H 输出:D0-D7=状态字读数据:输入

25、:RS=H,RW=H,E=H 输出:无写指令:输入:RS=L,RW=L,D0-D7=指令码,E=高脉冲 输出:D0-D7=数据写数据:输入:RS=H,RW=L,D0-D7=数据,E=高脉冲 输出:无3.3 晶体振荡器 晶体振荡器,简称晶振,其作用在于产生原始的时钟频率,这个频率经过频率发生器的放大或缩小后就成了电脑中各种不同的总线频率。以声卡为例,要实现对模拟信号44.1kHz或48kHz的采样,频率发生器就必须提供一个44.1kHz或48kHz的时钟频率。如果需要对这两种音频同时支持的话,声卡就需要有两颗晶振。但是现在的娱乐级声卡为了降低成本,通常都采用SCR将输出的采样频率固定在48kHz

26、,但是SRC会对音质带来损害,而且现在的娱乐级声卡都没有很好地解决这个问题。现在应用最广泛的是石英晶体振荡器。 石英晶体振荡器是一种高精度和高稳定度的振荡器,石英晶体振荡器也称石英晶体谐振器,它用来稳定频率和选择频率,是一种可以取代LC谐振回路的晶体谐振元件。石英晶体振荡器广泛地应用在电视机、影碟机、录像机、无线通讯设备、电子钟表、单片机、数字仪器仪表等电子设备中。为数据处理设备产生时钟信号和为特定系统提供基准信号。在单片机中为其提供时钟频率。石英晶体振荡器是利用石英晶体(二氧化硅的结晶体)的压电效应制成的一种谐振器件,它的基本构成大致是:从一块石英晶体上按一定方位角切下薄片(简称为晶片,它可

27、以是正方形、矩形或圆形等),在它的两个对应面上涂敷上银层用作电极使用,在每个电极上各焊一根引线接到管脚上,再加上封装外壳就构成了石英晶体谐振器,简称为石英晶体或晶体、晶振。其产品一般用金属外壳封装,也有用玻璃壳、陶瓷或塑料封装的。只要在晶体振子板极上施加交变电压,就会使晶片产生机械变形振动,此现象即所谓逆压电效应。当外加电压频率等于晶体谐振器的固有频率时,就会发生压电谐振,从而导致机械变形的振幅突然增大。本设计中采用12MHZ做系统的外部晶振。电容取值为20pF。3.4 AT24C01串行EEPROM 如图3-2为AT24C01的芯片引脚图。图3-2 AT24C01的芯片引脚图 特点:低压和标

28、准电压运行模式 2.7 (VCC = 2.7V to 5.5V) 1.8 (VCC = 1.8V to 5.5V)内建128x8存储序列2线制串行接口双向数据传送协议100kHz(1.8V,2.5V,2.7V) 和400kHz(5V)兼容写同步时钟(最大10ms)高可靠性-极限:1M写时钟周期-数据保存:100年不断推进的芯片等级扩大了设备的可用温度范围8脚PDIP,8脚JEDEC SOIC和8脚TSSOP封装描述:AT24C01提供电可擦除的串行1024位存储或可编程只读存储器(EEPROM)128字(8位/字)。芯片在低压的工业与商业应用中进行了最优化。AT24C01的封装为8脚PDIP、8脚JEDECSOIC、8脚TSSOP,通过2线制串行接口进行数据传输。另外,整个系列有2.7V(2.7V至5.5V)和1.8V (1.8V至5.5V)两个版本。设备操作:C L O C K 和 D A T A 变化:SDA管脚通常外部要拉高。SDA管脚上的数据只能在SCL低期间改变。数据在SCL高期间改变定义为一个开始或停止信号。开始状态:在任何操作之前必须有一个开始信号-在SCL为高时SDA上产生一个下降沿。停止状态: SCL为高时SDA

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2