版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕业设计论文基于单片机的电子密码锁设计毕业设计基于单片机的电子密码锁设计摘要在日常的生活和工作中住宅与部门的安全防范单位的文件档案财务报表以及一些个人资料的保存多以加锁的办法来解决若使用传统的机械式钥匙开锁人们常需携带多把钥匙使用极不方便且钥匙丢失后安全性即大打折扣在安全技术防范领域具有防盗报警功能的电子密码锁逐渐代替了传统的机械式密码锁电子密码锁具有安全性高成本低功耗低易操作等优点本文从经济实用的角度出发采用美国Atmel公司的单片机AT89S51作为主控芯片与数据存储器单元结合外围的矩阵键盘输入LCD液晶显示报警开锁等用C语言编写的主控芯片控制程序与EEPROMAT24C02读写程序相结合并用Keil软件进行编译设计了一款可以多次更改密码具有报警功能的电子密码控制系统这种密码锁的电路设计具有防试探按键输入智能控制上锁开锁报警修改密码等多种功能密码长度可变保密性强灵活性高应用日益广泛关键词密码锁单片机报警LCD显示DesignofElectricPasswordLockBasedonMCUABSTRACTInthedailylifeandtheworkthewaytothehousesanddepartmentssafeguardunitsdocumentfilethefinancialreportingaswellassomeindividualmaterialpreservationalmostneedmanylocksIfweusetraditionmechanicalkeytoopenthepeopleoftenmustcarrymanykeysbutitisnotextremelyconvenientIfthekeylostthesecuritywilldeclinegreatlyInthesafetyworkguarddomainthelockwithsecuritywarningfunctionelectroniccombinationhavereplacedthetraditionalmechanicalcombinationlockgraduallytheelectroniccombinationlockhavethehighlysecuritythelowlycostthelowlypowerwastageeasytooperateandsoonmeritsThisarticleisbasedontheeconomicalandpracticalpointofviewusestheUnitedStatesAtmelCorporationAT89S51microcontrollerasamasterchipandthedatamemoryunititcombineswiththeexternalmatrixkeyboardinputLCDdigitaldisplayalarmunlockandsooncircuitsdominatesbytheCprogramminglanguagechipEEPROMofthecontrolproceduresandcarriesonthetranslationwithKeilsoftwarethepasswordcanbechangedmanytimestheelectronicthepasswordcontrolalsohasthealarmingfunctionThispasswordlockcircuitdesignhasanti-testbuttoninputintelligentcontrollockunlockalarmandchangethepasswordmultiplefunctionsPasswordlengthcanbechangedgreatsecurityandhighflexiblethanothersitiswidelyusedKeyWordsPasswordlockMCUAlarmLCDDisplay目录摘要第一章绪论11电子密码锁简介112电子密码锁的发展趋势113本设计所要实现的目标214设计方案简介2第二章主要元器件介绍21主控芯片AT89S51321存储芯片AT24C02623LCD1602显示器724晶体振荡器8第三章硬件系统构成31设计原理1032电路总体构成1033电源输入电路1134键盘输入电路1235密码存储电路1236复位电路1337晶振电路1438显示电路1439报警电路15310开锁电路15第四章软件系统设计41主程序流程图1742按键软件设计1843密码设置软件设计1944开锁软件设计20第五章调试与实现51硬件调试2152软件调试2153Pruteus仿真22结论与展望致谢参考文献附录
第一章绪论11电子密码锁简介电子密码锁是一种通过密码输入来控制电路或是芯片工作从而控制机械开关的闭合完成开锁闭锁任务的电子产品它的种类很多有简易的电路产品也有基于芯片的性价比较高的产品现在应用较广的电子密码锁是以芯片为核心通过编程来实现的其性能和安全性已大大超过了机械锁1保密性好编码量多远远大于弹子锁随机开锁成功率几乎为零
2密码可变用户可以更改密码防止密码被盗同时也可以避免因
3误码输入保护当输入密码多次错误时报警系统自动启动5使用灵活性好不像机械锁必须佩带钥匙才能开锁6电子密码锁操作简单易行一学即会日常生活和工作中住宅与部门的安全防范单位的文件档案财务报表以及一些个人资料的保存多以加锁的办法来解决目前门锁主要用弹子锁其钥匙容易丢失保险箱主要用机械密码锁其结构较为复杂制造精度要求高成本高且易出现故障人们常需携带多把钥匙使用极不方便且钥匙丢失后安全性即大打折扣针对这些锁具给人们带来的不便若使用机械式钥匙开锁为满足人们对锁的使用要求增加其安全性用密码代替钥匙的密码锁应运而生由于电子器件所限以前开发的电子密码锁其种类不多保密性差最基本的就是只依靠最简单的模拟电子开关来实现的制作简单但很不安全在后为多是基于EDA来实现的其电路结构复杂电子元件繁多也有使用早先的20引角的2051系列单片机来实现的但密码简单易破解随着电子元件的进一步发展电子密码锁也出现了很多的种类功能日益强大使用更加方便安全保密性更强由以前的单密码输入发展到现在的密码加感应元件实现了真真的电子加密用户只有密码或电子钥匙中的一样是打不开锁的随着电子元件的发展及人们对保密性需求的提高出现了越来越多的电子密码锁出于安全方便等方面的需要许多电子密码锁已相继问世但这类产品的特点是针对特定有效卡指纹或声音有效且不能实现远程控制只能适用于保密要求高且供个人使用的箱柜房间等由于数字字符图形图像人体生物特征和时间等要素均可成为钥匙的电子信息组合使用这些信息能够使电子防盗锁获得高度的保密性如防范森严的金库需要使用复合信息密码的电子防盗锁组合使用信息也能够使电子防盗锁获得无穷扩展的可能使产品多样化对用户而言是千挑百选自得其所可以看出组合使用电子信息是电子密码锁以后发展的趋势13本设计所要实现的目标本设计采用单片机为主控芯片结合外围电路组成电子密码锁用户想要打开锁必先通过提供的键盘输入正确的密码才能将锁打开密码输入错误有提示为了提高安全性当密码输入错误三次将报警密码可以有用户自己修改设定锁打开后才能修改密码修改密码之前必须再次输入就的密码在输入新密码的时候要二次确认以防止误操作14设计方案简介采用以单片机为核心的控制方案基于以上因素本设计选用单片机AT89S51作为本设计的核心元件利用单片机灵活的编程设计和丰富的IO端口及其控制的准确性实现基本的密码锁功能第二章主要元器件21主控芯片AT89S51单片机AT89S51功能介绍AT89S51是一种带4K字节闪烁可编程可擦除只读存储器FPEROMFalshProgrammableandErasableReadOnlyMemory的低电压高性能CMOS8位微处理器俗称单片机该器件采用ATMEL高密度非易失存储器制造技术制造与工业标准的MCS-51指令集和输出管脚相兼容由于将多功能8位CPU和闪烁存储器组合在单个芯片中ATMEL的AT89S51是一种高效微控制器为很多嵌入式控制系统提供了一种灵活性高且价廉的方案AT89S51芯片引脚图如图2-1所示主要特性·与MCS-51兼容·4K字节可编程闪烁存储器·寿命1000写擦循环·数据保留时间10年·全静态工作0Hz-24Hz·三级程序存储器锁定·1288位内部RAM·32可编程IO线·两个16位定时器计数器·5个中断源·可编程串行通道·低功耗的闲置和掉电模式·片内振荡器和时钟电路管脚说明下面按其引脚功能分为四部分叙述这40条引脚的功能1主电源引脚VSS和VSSAT89S51芯片引脚图VSS40脚接5V电压VSS20脚接地2外接晶体引脚XTAL1和XTAL2XTAL119脚接外部晶体的一个引脚在单片机内部它是一个反相放大器的输入端这个放大器构成了片内振荡器当采用外部振荡器时对HMOS单片机此引脚应接地对SHMOS单片机此引脚作为驱动端XTAL218脚接外晶体的另一端在单片机内部接至上述振荡器的反相放大器的输出端采用外部振荡器时对HMOS单片机该引脚接外部振荡器的信号即把外部振荡器的信号直接接到内部时钟发生器的输入端对XHMOS此引脚应悬浮3控制或与其它电源复用引脚RSTVPDALEPROGPSEN和EAVPP①RSTVPD9脚当振荡器运行时在此脚上出现两个机器周期的高电平将使单片机复位推荐在此引脚与VSS引脚之间连接一个约82k的下拉电阻与VSS引脚之间连接一个约10μF的电容以保证可靠地复位VSS掉电期间此引脚可接上备用电源以保证内部RAM的数据不丢失当VSS主电源下掉到低于规定的电平而VPD在其规定的电压范围5±05V内VPD就向内部RAM提供备用电源②ALEPROG30脚当访问外部存贮器时ALE允许地址锁存的输出用于锁存地址的低位字节即使不访问外部存储器ALE端仍以不变的频率周期性地出现正脉冲信号此频率为振荡器频率的16因此它可用作对外输出的时钟或用于定时目的然而要注意的是每当访问外部数据存储器时将跳过一个ALE脉冲ALE端可以驱动吸收或输出电流8个LS型的TTL输入电路对于EPROM单片机如8751在EPROM编程期间此引脚用于输入编程脉冲PROG③PSEN29脚此脚的输出是外部程序存储器的读选通信号在从外部程序存储器取指令或常数期间每个机器周期两次PSEN有效但在此期间每当访问外部数据存储器时这两次有效的PSEN信号将不出现PSEN同样可以驱动吸收或输出8个LS型的TTL输入④EAVPP引脚当EA端保持高电平时访问内部程序存储器但在PS程序计数器值超过0FFFH对851875180S51或1FFFH对8052时将自动转向执行外部程序存储器内的程序当EA保持低电平时则只访问外部程序存储器不管是否有内部程序存储器对于常用的8031来说无内部程序存储器所以EA脚须常接地这样才能只选择外部程序存储器对于EPROM型的单片机如8751在EPROM编程期间此引脚也用于施加21V的编程电源VPP4.控制或与其它电源复用引脚RSTVpdALEPROGPSEN和EAVppRSTVpd当振荡器运行时在此引脚上出现两个机器同期的高电平由低到高跳变将使单片机复位在VSS掉电期间此引脚可接上备用电源由Vpd向内部RAM提供备用电源以保持内部RAM中的数据ALEPROG正常操作时为ALE功能允许地址钱存提供把地址的低字节锁存到外部锁存器ALE引脚以不变的频率振荡周期的16周期性地发出正脉冲信号因此它可用作对外输出的时钟或用于定时目的但要注意每当访问外部数据存储器时将跳过一个ALE脉冲ALE端可以驱动吸收或输出电流八个LSTTL电路对于EPROM型单片机在EPROM编程期间此引脚接收编程脉冲PROG功能PSEN外部程序存储器读选通信号输出端在从外部程序存储器取指令或数据期间PSEN在每个机器周期内两次有效PSEN同样可以驱动八个LSTTL输入EA/VppEA为内部程序存储器和外部程序存储器选择端当EA为高电平时访问内部程序存储器PS值小于4K当EA为低电平时则访问外部程序存储器对于EPROM型单片机在EPROM编程期间此引脚上加21VEPROM编程电源Vpp5输入输出IO引脚P0P1P2P3共32根①P0口39脚至32脚是双向8位三态IO口在外接存储器时与地址总线的低8位及数据总线复用能以吸收电流的方式驱动8个LS型的TTL负载②P1口1脚至8脚是准双向8位IO口由于这种接口输出没有高阻状态输入也不能锁存故不是真正的双向IO口P1口能驱动吸收或输出电流4个LS型的TTL负载对80528032P10引脚的第二功能为T2定时计数器的外部输入P11引脚的第二功能为T2EX捕捉重装触发即T2外部控制端对EPROM编程和程序验证时它接收低8位地址③P2口21脚至28脚是准双向8位IO口在访问外部存储器时它可以作为扩展电路高8位地址总线送出高8位地址在对EPROM编程和程序验证期间它接收高8位地址P2可以驱动吸收或输出电流4个LS型的TTL负载④P3口10脚至17脚是准双向8位IO口在MSS-51中这8个引脚还用于专门功能是复用双功能口P3能驱动吸收或输出电流4个LS型的TTL负载作为第一功能使用时就作为普通IO口用功能和操作方法与P1口相同作为第二功能使用时各引脚的定义如表所示值得强调的是P3口的每一条引脚均可独立定义为第一功能的输入输出或第二功能表2-1P3口管脚备选功能P30 RXD串行输入口 P31 TXD串行输出口 P32 INT0外部中断0 P33 INT1外部中断1 P34 T0记时器0外部输入 P35 T1记时器1外部输入 P36 WR外部数据存储器写选通 P37 RD外部数据存储器读选通 22存储芯片AT24C02如图2-2为AT24C02的芯片引脚图图2-2AT24C02的芯片引脚图特点低压和标准电压运行模式–27VCC27Vto55V–18VCC18Vto55V内建128x8存储序列2线制串行接口双向数据传送协议100kHz18V25V27V和400kHz5V兼容写同步时钟最大10ms高可靠性极限1M写时钟周期数据保存100年不断推进的芯片等级扩大了设备的可用温度范围AT24C02提供电可擦除的串行1024位存储或可编程只读存储器EEPROM128字8位字芯片在低压的工业与商业应用中进行了最优化设备操作CLOCK和DATA变化SDA管脚通常外部要拉高SDA管脚上的数据只能在SCL低期间改变数据在SCL高期间改变定义为一个开始或停止信号开始状态在任何操作之前必须有一个开始信号----在SCL为高时SDA上产生一个下降沿停止状态SCL为高时SDA产生一个上升沿是停止信号停止信号后将停止所有通信在一个读的序列之后停止信号将让EEPROM进入备用电源模式23LCD16022显示器液晶显示模块已作为很多电子产品的通过器件如在计算器万用表电子表及很多家用电子产品中都可以看到显示的主要是数字专用符号和图形接口信号说明1602型LCD的接口信号说明如表2-2所示表2-2LCD1602接口信号说明编号 符号 引脚说明 编号 符号 引脚说明 1 VSS 电源地 9 D2 数据 2 VDD 电源正极 10 D3 数据 3 VL 液晶显示偏压 11 D4 数据 4 RS 数据命令选择 12 D5 数据 5 RW 读写选择 13 D6 数据 6 E 使能信号 14 D7 数据 7 D0 数据 15 BLA 背光源正极 8 D1 数据 16 BLK 背光源负极 1602LCD主要技术参数显示容量16×2个字符芯片工作电压4555V工作电流20mA50V模块最佳工作电压50V字符尺寸295×435W×Hmm1602LCD基本操作程序如下表所示表2-3LCD1602基本操作程序读状态 输入 RSLRWHEH 输出 D0D7状态字 写指令 输入 RSLRWLD0D7指令码E高脉冲 输出 无 读数据 输入 RSHRWHEH 输出 D0D7数据 写数据 输入 RSHRWLD0D7数据E高脉冲 输出 无 晶体振荡器晶体振荡器简称晶振其作用在于产生原始的这个频率经过频率发生器的放大或缩小后就成了电脑中各种不同的总线频率以为例要实现对441kHz或48kHz的采样频率发生器就必须提供一个441kHz或48kHz的时钟频率如果需要对这两种同时支持的话声卡就需要有两颗晶振但是现在的娱乐级声卡为了降低成本通常都采用将输出的采样频率固定在48kHz但是SRC会对音质带来损害而且现在的娱乐级声卡都没有很好地解决这个问题石英晶体振荡器
石英晶体振荡器是一种高精度和高稳定度的振荡器石英晶体振荡器也称石英晶体谐振器它用来稳定频率和选择频率是一种可以取代LC谐振回路的晶体谐振元件石英晶体振荡器广泛地应用在电视机影碟机录像机无线通讯设备电子钟表数字仪器仪表等电子设备中为数据处理设备产生时钟信号和为特定系统提供基准信号石英晶体振荡器是利用石英晶体二氧化硅的结晶体的压电效应制成的一种谐振器件它的基本构成大致是从一块石英晶体上按一定方位角切下薄片简称为晶片它可以是正方形矩形或圆形等在它的两个对应面上涂敷银层作为电极在每个电极上各焊一根引线接到管脚上再加上封装外壳就构成了石英晶体谐振器简称为石英晶体或晶体晶振其产品一般用金属外壳封装也有用玻璃壳陶瓷或塑料封装的只要在晶体振子板极上施加交变电压就会使晶片产生机械变形振动此现象即所谓逆压电效应当外加电压频率等于晶体谐振器的固有频率时就会发生压电谐振从而导致机械变形的振幅突然增大31设计原理本设计主要由单片机矩阵键盘液晶显示器和密码存储等部分组成其中矩阵键盘用于输入数字密码和进行各种功能的实现由用户通过连接单片机的矩阵键盘输入密码后经过单片机对用户输入的密码与自己保存的密码进行对比从而判断密码是否正确然后控制引脚的高低电平传到开锁电路或者报警电路控制开锁还是报警实际使用时只要将单片机的负载由继电器换成电子密码锁的电磁铁吸合线圈即可当然也可以用继电器的常开触点去控制电磁铁吸合线圈本系统共有两部分构成即硬件部分与软件部分其中硬件部分由电源输入部分键盘输入部分密码存储部分复位部分晶振部分显示部分报警部分开锁部分组成软件部分对应的由主程序初始化程序LCD显示程序键盘扫描程序启动程序关闭程序建功能程序密码设置程序EEPROM读写程序和延时程序等组成图3-1电子密码锁原理框图32电路总体构成在确定了选用什么型号的单片机后就要确定在外围电路其外围电路包括电源输入部分键盘输入部分密码存储部分复位部分晶振部分显示部分报警部分开锁部分组成根据实际情况键盘输入部分选择44矩阵键盘显示部分选择字符型液晶显示LCD1602密码存储部分选用AT24C02芯片来完成其原理图如图3-2所示图3-2电路总体结构图33电源输入电路密码锁主要控制部分电源需要用5V直流电源供电其电路如图3-3所示而5V电源输入时往往伴有杂波所以加一个22uF的电容滤波这样输出的电压一般能满足要求图3-3电源输入电路原理图34键盘输入电路由于本设计所用到的按键数量较多而不适合用独立按键式键盘采用的是矩阵式按键键盘它由行线和列线组成也称行列式键盘按键位于行列的交叉点上密码锁的密码由键盘输入完成与独立式按键键盘相比要节省很多IO口本设计中使用的这个44键盘不但能完成密码的输入还能作特别功能键使用比如清空显示功能等键盘的每个按键功能在程序设计中设置其大体功能看键盘按键上的标记及与单片机引脚接法如图3-4所示图3-4键盘输入原理图35密码存储电路AT24C02是ATMEL公司的2KB字节的电可擦除存储芯片采用两线串行的总线和单片机通讯电压最低可以到25V额定电流为1mA静态电流10Ua55V芯片内的资料可以在断电的情况下保存40年以上而且采用8脚的DIP封装使用方便其电路如图3-5所示图中123脚是三条地址线用于确定芯片的硬件地址在AT89S51上它们都能接地第5脚和第8脚分别为正负电源AT24C02中带有片内地址寄存器每写入或读出一个数据字节后该地址寄存器自动加1以实现对下一个储存单元的读写所有字节均以单一操作方式读取36复位电路单片机复位是使CPU和系统中的其他功能部件都处在一个确定的初始状态并从这个状态开始工作例如复位后PC=0000H使单片机从第个单元取指令无论是在单片机刚开始接上电源时还是断电后或者发生故障后都要复位在复位期间即RST为高电平期间P0口为高组态P1-P3口输出高电平外部程序存储器读选通信号PSEN无效地址锁存信号ALE也为高电平根据实际情况选择如图2-8所示的复位电路该电路在最简单的复位电路下增加了手动复位按键在接通电源瞬间电容C1上的电压很小复位下拉电阻上的电压接近电源电压即RST为高电平在电容充电的过程中RST端电压逐渐下降当RST端的电压小于某一数值后CPU脱离复位状态由于电容C1足够大可以保证RST高电平有效时间大于24个振荡周期CPU能够可靠复位增加手动复位按键是为了避免死机时无法可靠复位当复位按键按下后电容C1通过R5放电当电容C1放电结束后RST端的电位由R11与R15分压比决定由于R11R15因此RST为高电平CPU处于复位状态松手后电容C1充电RST端电位下降CPU脱离复位状态R11的作用在于限制按键按下瞬间电容C1的放电电流避免产生火花以保护按键触电图3-6复位电路原理图37晶振电路AT89C51引脚XTAL1和XTAL2与晶体振荡器及电容C2C1按图3-7所示方式连接晶振电容C2/C3及片内与非门作为反馈放大元件构成了电容三点式振荡器振荡信号频率与晶振频率及电容C1C2的容量有关但主要由晶振频率决定范围在0~33MHz之间电容C2C3取值范围在5~30pF之间根据实际情况本设计中采用12MHZ做系统的外部晶振电容取值为20pF图3-7晶振电路原理图38显示电路为了提高密码锁的密码显示效果能力本设计的显示部分由液晶显示器LCD1602取代普通的数码管来完成只有按下键盘上的开启按键后显示器才处于开启状态同理只有按下关闭按键后显示器才处于关闭状态否则显示器将一直处于初始状态当需要对密码锁进行开锁时按下键盘上的开锁按键后利用键盘上的数字键0-9输入密码每按下一个数字键后在显示器上显示一个输入多少位就显示多少个当密码输入完成时按下确认键如果输入的密码正确的话LCD子显示RIGHT单片机其中P20引角会输出低电平使三极管T2导通电磁铁吸合电子密码锁被打开如果密码不正确LCD显示屏会显示ERRORP20输出的是高电平电子密码锁不能被打开通过LCD显示屏可以清楚的判断出密码锁所处的状态其显示部分引脚接口如图3-8所示图3-8显示电路原理图39报警电路报警部分由陶瓷压电发声装置及外围电路组成加电后不发声当有键按下时叮声每按一下发声一次密码正确时不发声直接开锁当密码输入错误时单片机的P21引脚为低电平三极管T3导喇叭发出噪鸣声报警如图3-9所示图3-9报警电路原理图310开锁电路通过单片机开锁执行机构电路驱动电磁锁吸合从而达到开锁的目的其原理如图3-10所示图3-10密码锁开锁机构示意图当用户输入的密码正确时单片机便输出开门信号送到开锁驱动电路然后驱动电磁锁达到开门的目的其实际电路如图3-11所示电路由驱动和开锁两级组成由D1R12Q1组成驱动电路其中Q1可以选择普通的小功率三极管如80509018都可以满足要求D1是开锁指示灯由D2C5组成开锁其中D2C5是为了消除电磁锁可能产生的反向高电压以及可能产生的电磁干扰电磁锁的选用要视情况而定但是吸合力要足够且有一定的余量在设计中暂时用发光二极管代替电磁锁发光管亮表示开锁灭表示没有开锁 图3-11开锁电路原理图第四章软件程序设计本系统软件设计由主程序初始化程序LCD显示程序键盘扫描程序键功能程序密码设置程序EEPROM读写程序和延时程序等组成41主程序流程图如图4-1为主程序流程图开始接上电源程序进行初始化设置然后在键盘上输入密码此系统进行键盘扫描密码正确开锁成功密码错误3次出错报警选择是否修改密码若要修改密码先输入旧密码密码正确后设置新密码错误时报警需要两次确认新密码确认后密码修改成功否则结束最终返回然后启动程序进行保护再次在键盘上输入密码系统进行扫描如果和之前一样则执行相同程序如不是则执行另一种程序图4-1主程序流程图42按键软件设计如图4-2按键功能流程图在按键当中有与输入开锁清除设置确认的程序相对应的按键并按顺序与输入的数相比较当输入正确时进入密码程序错误时进行清除输入两次新密码正确时可进行重新设置密码最后确认程序图4-2按键功能流程图43密码设置软件设计如图4-3为密码设置流程图开始按下设置键输入旧密码如果错误累计三次进行报警程序如果输入正确可以修改密码确认后再次输入新密码如果两次输入一样则输入成功如果两次输入的新密码不一样则修改密码失败重新返回设置新密码图4-3密码设置流程图44开锁软件设计如图4-4开锁流程图开始时按开锁键输入密码如果输入正确则开锁成功如果输入错误累计达到三次则执行报警程序图4-4开锁流程图第五章调试与实现51硬件调试单片机应用系统的硬件调试和软件调试是分不开的.许多硬件故障只有通过软硬件联调才能发现但一般是先排除系统中比较明显的硬件故障后才和软件一起联调
常见的硬件故障
1逻辑错误
硬件的逻辑错误是由于设计错误和过程中的工艺错误而造成的包括错线开路短路等其中最常见的是短路故障
2元器件错误
元器件错误的原因有器件损坏或性能不符合要求电解电容二极管的极性接反或集成块装反等
3可靠性差
应用系统可靠性差的原因很多如内部和外部的干扰电压纹波系数过大器件负载过重等均会造成系统的可靠性差另外走线和布置的不合理也会造成系统可靠性差
4电源故障电源故障包括电压值不符合设计要求电源功率不足负载能力差纹波太重等
硬件调试法
脱机调试是在加电前先用万用表等工具按图纸仔细核对线路是否正确并对元器件的安装型号规格等进行仔细检查特别焊接时有无走线之间相互短路等程序在KEILC51上调试采用模块程序设计技术则逐个模块调好后再进行系统程序总调
对于模块结构程序.要一个个子程序分别调试调试时一定要符合入口条件和出口条件调试可用单步运行和断点运行方式通过检查用者系统的CPU现场情况RAM的内容和I/O口的状态检测程序执行结果是否符合设计要求有无循环错误有无机器码错误以及转移地址的错误同时还可以发现系统中存在的硬件设计错误和软件算法错误
各程序模块通过后则可以把相关功能块连在一起进行总调这个阶段若有故障可以考虑各子程序运行时是否破坏了现场缓冲单元工作寄存器是否发生冲突标志位的建立和清除是否有误堆栈区是否有溢出输入设备的状态是否正常等等若用者系统是在开发机的监控程序下运行时还要考虑用者缓冲单元是否和监控程序的工作单元发生冲突
单步和断点调试后还应进行连续调试用以确定定时精度CPU的实时响应等问题当全部调试和修改完成后将程序固化到中53Proteus仿真在硬件和软件都能实现的条件下利用Proteus进行仿真通过不停的调试与改正最后终于实现了密码锁的功能Proteus仿真结果如图4-1所示当连好各个模块电路的导线后导入芯片程序运行该密码锁仿真电路通过按键可以进行密码锁的开锁修改密码错误密码3次以上报警的操作LCD显示屏显示相应的操作现象密码正确可以开锁进而可以修改密码密码错误三次以上由喇叭发出报警声如果系统出现错误还可以通过复位电路进行复位总之在原有的理论基础上通过Proteus能够成功的进行密码锁基本操作的仿真实现了相关的功能结论与展望以上为毕业期间所作的毕业论文---基于单片机的电子密码锁设计它经过多次修改和整理可以满足设计的基本要求输入密码时如三次输入错误则进行报警在输入时LCD显示为在修改密码时则显示数字次设计还具有防盗功能如对密码控制系统进行破坏有报警功能通过对该课题的研究加深对所学知识的理解提高对课外知识的学习能力增强知识的应用能力提高解决实际问题的能力培养自我创新意识积累实践经验为以后的发展打下基础也为以后我们自己在这方面的发展打下基础并能够在这方面培养自己的兴趣在设计中我们必须首先熟悉和掌握单片机的结构及工作原理单片机的接口技术及相关外围芯片的外特性控制方法以单片机核心的电路设计的基本方法和技术了解表关电路参数的计算方法单片机不是完成某一个逻辑功能的芯片而是把一个计算机系统集成到一个芯片上概括的讲一块芯片就成了一台计算机它的体积小质量轻价格便宜为学习应用和开发提供了便利条件同时学习使用单片机了解计算机原理与结构的最佳选择目前单片机渗透到我们生活的各个领域几乎很难找到哪个领域没有单片机的踪迹导航装置飞机上各种仪表的控制计算机的网络通讯与数据传输工业自动化过程的实时控制和数据处理广泛使用的各种智能IC卡民用豪华轿车的安全保障系统录像机摄像机全自动洗衣机的控制以及程控玩具电子宠物等等这些都离不开单片机更不用说自动控制领域的机器人智能仪表医疗器械了因此单片机的学习开发与应用将造就一批计算机应用与智能化控制的科学家工程师随着单片机的广泛应用将大大促进各领域的技术更新向自动化小型化智能化方向迈进而对于我们来说我们这代人的目标和任务是把这些高科技产品更升一个层次毕业设计是培养学生综合运用所学知识发现提出分析和解决实际问题锻炼实践能力的重要环节是对学生实际工作能力的具体训练和考察过程随着科学技术发展的日新日异单片机已经成为当今计算机应用中空前活跃的领域在生活中可以说得是无处不在因此作为二十一世纪的大学来说掌握单片机的开发技术是十分重要的从选题到定稿从理论到实践不仅可以巩固了以前所学过的知识而且学到了很多在书本上所没有学到过的知识只有理论知识是远远不够的只有把所学的理论知识与实践相结合起来从理论中得出结论才能真正为社会服务从而提高自己的实际动手能力和独立思考的能力谢四年的大学生活不知不觉中就要结束了在这段难忘的生活中有许多美好的回忆在毕业论文设计之中我的老师和我的同学都不吝的指导我我需要感谢的人太多太多首先要感谢我的学校感谢在这四年中让我领悟到诚实做人踏实做事扎实做学问的深刻道理让我从一个懵懂得高中生变成一个成熟的大学生其次我要感谢的是我的导师老师老师平日里工作繁多但在我做毕业设计的每个阶段都给予我悉心的指导和帮助现在即将挥别我的学校老师同学还有我四年的大学生活虽然依依不舍但是对未来的路我充满了信心最后感谢在大学期间认识我和我认识的所有人有你们的陪伴才有我大学生活的绚丽多彩作者 2011年5月9日[1]童诗白华成英模拟电子技术基础[第四版]高等教育出版社2000[2]阎石数字电子技术基础[第五版]高等教com[3]张毅刚单片机原理及应用高等教育出版社2003[4]楼苗然李光飞单片机课程设计指导北京航空航天大学出版社2007[5]蔡朝洋单片机控制实习与专题制作北京航空航天大学出版社2006[6]陈连坤单片机原理及接口技术北京交通大学出版社2010[7]李学海标准8051单片机基础教程北京航空航天大学出版2006[8]何立民单片机高级教程北京航空航天大学出版社2006[9]周立功单片机实验与实践教程北京航空航天大学出版社[10]江志红51单片机技术与应用系统开发清华大学出版社2008[11]祖龙起一种新型可编程密码锁大连轻工业学院学报200201[12]李明喜新型电子密码锁的设计机电产品开发与创新200403[13]王宽仁可靠安全的智com年第2期[14]董继成一种新型安全的单片机密码锁电子技术200403[15]任艳艳基于AT89C51单片机多功能密码锁的研究重庆职业技术com[16]周鑫何建新刘琥200908[17]王金国采用单片机的电子密码锁控制电路山东煤炭科技2000330-33[]宁爱民应用AT89C2051单片机设计电子密码锁20036
附录程序清单显示缓冲区LED1EQU6FHBUFFEQU6EHTIMERS1EQU6DH输入回车的次数TIMERS2EQU6CH报警的次数LED6EQU6AH密码缓冲区PS1EQU69HPS2EQU78HPS3EQU67HPS4EQU66HPS5EQU65HPS6EQU64HPS7EQU63HPS8EQU62HAT24C02读取缓冲区AT1EQU61HAT2EQU60HAT3EQU5FHAT4EQU5EHAT5EQU5DHAT6EQU5CHAT7EQU5BHAT8EQU5AH按键标志位F_0BIT20HF_1BIT21HF_2BIT22HF_3BIT23HF_4BIT24HF_5BIT25HF_6BIT26HF_7BIT27HF_8BIT28HF_9BIT29HCH_STATEBIT2AH系统更改的状态标志位为1表示busyFLAG1BIT2BH功能键标志位为1表示功能按键F_F1BIT2CHF_F2BIT2DHPSW_FBIT2EH密码是否正确的标志位口资源定义SPKBITP21WPBITP35SDABITP36定义串口数据端SCLBITP37ORG0000HAJMPMAINORG000BHAJMPTIMER0ORG001BHAJMPTIMER1ORG0030HMAINMOVSP70HMOVTMOD11HMOVTH03CHMOVTL00B0HMOVTH13CHMOVTL10B0HCLRF_0清除标志位CLRF_1CLRF_2CLRF_3CLRF_4CLRF_5CLRF_6CLRF_7CLRF_8CLRF_9CLRBUF_FULLCLRCH_STATECLRFLAG1CLRF_F1CLRF_F2CLRPSW_FMOVBUFF00H调用LCALLINITPS初始化环境LCALLINITATLCALLXSA调用默认显示MOVTIMERS100HNOPMOVPS111H初始化密码830620MOVPS20AHMOVPS302HMOVPS413HMOVPS50BHMOVPS602HSTARTNOP程序开始LCALLCH_KEY检查键盘AJMPSTART返回CH_KEYLCALLKS检查有没有按键按下JNZLK1AJMPCH_KEYLK1LCALLT12MSACALLKSJNZLK2RETLK2NOPLCALLSBIE按键识别子程序MOVBUFFA送缓冲区以识别是数字键还是功能键LCALLCH_KF判断按键功能JBFLAG1KEY_FUN标志为1则为功能键数字按键输入并且存放到缓冲区内等待比较KEY_DIGNOP设一标志辨别输入是否满SETBTR0INCTIMERS输入数字的位数MOVATIMERSCLRCSUBBA01HJNZPS_2MOVPS1BUFF依照顺序存放密码AJMPNEXTPS_2MOVATIMERSSUBBA02HCLRCJNZPS_3MOVPS2BUFFAJMPNEXTPS_3MOVATIMERSCLRCSUBBA03HJNZPS_4MOVPS3BUFFAJMPNEXTPS_4MOVATIMERSCLRCSUBBA04JNZPS_5MOVPS4BUFFAJMPNEXTPS_5MOVATIMERSCLRCSUBBA05JNZPS_6MOVPS5BUFFAJMPNEXTPS_6MOVATIMERSCLRCSUBBA06HJNZCH_KEYMOVPS6BUFFNEXTLCALLXSCMOVR7TIMERS比较输入的次数CJNER706HFULLFULLJCNEXT9SETBBUF_FULLMOVTIMERS06HCLRL3NOPCLRP21LCALLT100MSDSETBP21NOPAJMPCH_KEYNEXT9CLRP21密码输入一位鸣叫一声CLRL3LCALLT100MSD延时100msSETBL3SETBP21AJMPCH_KEY开门子程序CLNOPSETBL3MOVBUFF00H消密码缓冲MOVTIMERS00HLCALLINITPS消除AT缓冲调电存储后一定要加上LCALLXSCLCALLBPLCALLBPLCALLT100MSDLCALLBPCLRFLAG1AJMPCH_KEYFU4NOPLCALLBPLCALLT100MSDLCALLBPLCALLT100MSDLCALLBPLCALLT100MSDLCALLBPLCALLT100MSDLCALLBPCLRFLAG1AJMPCH_KEYFU3NOPLCALLBPLCALLT100MSDLCALLBPLCALLKILLXS关闭显示CLRFLAG1AJMPCH_KEYFU1NOPLCALLXSCJBF_F1NEXT_F1CLRL1LCALLBPSETBF_F1AJMPCH_KEYNEXT_F1SETBL1LCALLBPCLRF_F1LCALLCH_STATE查看现在的状态以防误按SETBTR1报警限制暂时不开INCF_F1CLRFLAG1AJMPCH_KEYFU2NOPJBF_F2NEXT_F2CLRL2LCALLBPSETBF_F2AJMPCH_KEYNEXT_F2SETBL2LCALLBPCLRF_F2CLRFLAG1AJMPCH_KEY各类子程序注意清楚缓冲区时AT1AT8不应在初始化中执行以防两缓冲区都为0相同开锁CLR_BUFMOVR706HMOVR06FHLOOP1MOVA00HMOVR0ADECR0DJNZR7LOOP1RET初始化显示缓冲区以及其他缓冲区INITPSPUSHACCPUSHPSWMOVR706HMOVR1PS1MOVA00HINIT_PSMOVR1ADECR1DJNZR7INIT_PSPOPPSWPOPACCNOPRETINITATPUSHACCPUSHPSWMOVR706HMOVR1AT1MOVA00HINIT_ATMOVR1ADECR1DJNZR7INIT_ATMOVTIMERS00H密码输入的次数清零POPPSW
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026湖南高速养护工程有限公司社会招聘任务型劳动合同制员工的46人笔试备考题库及答案解析
- 2026年芜湖无为市蜀山镇公开选拔村级后备干部12名笔试备考题库及答案解析
- 2026浙商中拓集团股份有限公司社会招聘19人笔试备考试题及答案解析
- 2026年石家庄信息工程职业学院单招职业技能考试备考题库含详细答案解析
- 2026四川长虹民生物流股份有限公司招聘货运专员岗位的1人笔试备考题库及答案解析
- 2026年福建莆田市城厢区顶墩实验学校中小学编外教师自主招聘若干人笔试备考试题及答案解析
- 2026年内蒙古商贸职业学院单招综合素质考试备考试题含详细答案解析
- 2026西藏华泰龙矿业开发有限公司招聘39人笔试备考题库及答案解析
- 2026浙江宁波市鄞州区公立学校招聘编外员工1人笔试备考题库及答案解析
- 2026农业农村部国际交流中心面向社会招聘编制外人员招聘2人笔试备考题库及答案解析
- 2026及未来5年中国电力工程总承包行业市场竞争态势及未来趋势研判报告
- 预备役介绍课件
- 2026元旦主题班会:马年猜猜乐新春祝福版 教学课件
- 四川省2025年高职单招职业技能综合测试(中职类)纺织服装类试卷(含答案解析)
- 2025年及未来5年市场数据中国磷化铟行业市场调研分析及投资战略咨询报告
- 《老年人误吸的预防专家共识》解读2
- 2025亚洲智能手机显现模块制造行业产能地理分布及供应链调整规划
- 项目二各类食物的营养价值9认识“五菜为充”(教案)-《食品营养与卫生》(高教第二版)同步课堂
- 非营利组织内部管理制度
- 2025年低速电动汽车市场分析报告
- 病原学标本送检及采集规范
评论
0/150
提交评论