已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
设计方案系统设计方案 利用所学的电子技术知识和电子设计方法,设计出一个电子密码锁有以下两种基本方案可以选择:方案一:利用数字逻辑电路,运用各种门电路,计数器,触发器,锁存器,编/译码器等数字逻辑器件实现电子控制。从而实现想要设计的电子密码锁的功能。此方法设计简单,但硬件电路比较多,操作起来比较复杂。方案二:使用MCS-51系列单片机为核心控制附加一些简单的外围电路,利用单片机的一个I/O端口组成44键盘作为输入电路,采用汇编语言编写程序来实现电子密码锁的各项功能,程序语言功能强大,调试较为简单。具有很强的实用性。设计方案选择综上提出的两种方案,方案一给出的采用数字逻辑电路的设计方法的好处就是设计简单,因为采用数字逻辑电路可以分成各个功能模块来设计,每个模块实现各自的一个功能。这钟方法设计的密码锁电路大致包含:按键输入、密码核对、密码修改、开锁电路、错误提示电路等功能模块。采用数字电路虽然设计简单但是操作繁琐,要运用很多数字逻辑器件,硬件电路复杂,而且可能会出现较多器件故障,同时难以检查和维护。方案二提出的使用单片机为核心控制的方案,利用单片机丰富的I/O端口和灵活的编程设计,不但能实现密码锁的功能,而且控制准确性高,外围电路少硬件电路简单,方便灵活,调试简单不易出错,体积小成本低也利于现实中实现,具有较高的实际意义和实用价值。这个设计方案的最关键的地方就在于编程,利用程序的执行来实现密码锁的基本功能,因此单片机方案还有较大活动空间,能在很大程度上扩展功能,方便对系统进行升级。针对第一种方案:系统vhdl设计功能描述: 假设设计的密码锁有7个数据输入键,分别用K1到K7表示;一个“确认键”(按一下确认键,密码锁内部就产生一个正脉冲),用CLK_AFFIRM表示;一个“重置和修改密码使能键”,用S/W表示;一个开锁状态指示灯GREENLED;一个密码输入错误报警器REDLED.1. 密码预置。未使用过的密码锁初始状态为“打开”,内部密码为随机数,故使用前必须进行密码预置。通过按键将S/W调为“1”,密码锁进入密码预置模式,按照K1K7确认键K1K7确认键的顺序输入想要设置的密码,其中K1K7表示的意思是,给K1到K7赋值,赋值顺序可任意改变,但一旦按下确认键,K1到K7分别对应的数值便不可改变。整个过程中只要按下两次确认键,密码预置便成功完成。2. 密码验证。通过按键将S/W调为“0”,密码锁进入密码验证模式。按照K1K7确认键K1K7确认键的顺序输入密码,如果密码与预置的密码(如果修改过密码,则与最后一次修改成功后的密码)相匹配,开锁指示灯GREENLED变亮,同时锁子被打开。如果没反应,需要重新输入密码,但是输入密码的次数最多为3次,如果3次都输入了错误密码,那么错误报警器REDLED就会报警,如果继续输入了正确密码,报警器就会解除警报。3. 密码修改。用户必须提供正确的密码后方能进入密码修改模式,否则,修改无效。如果用户通过了密码验证,那么此时将S/W调为“1”便可顺利进入密码修改模式。修改密码过程与重置类似,即按照K1K7确认键K1K7确认键的顺序输入更改后的密码,便可顺利完成密码的修改。电路设计:电路原理图原理图分析 主要部分为寄存器与比较器构成。其中R1与R2分别存储预置密码或修改密码的低七位与高七位;R3和R4分别寄存输入密码的低七位与高七位。下面主要介绍一下各个模块的功能实现。1) 确认键CLK_AFFIRM与预置或密码修改使能键S/W的功能实现。确认键每按下一下产生一个正脉冲,作为R1,R2或R3,R4的时钟,实现数据读入相应寄存器的功能。S/W为“1”时,R3与R4被锁死,无法输入密码;同时与其相连的下面那个与门打开,确认键的信号便能顺利进入中的与门,为密码锁进入预置或密码修改模式提供必要条件。S/W为“0”时,R1与R2被锁死,R3,R4被打开,确认信号只能进入R3与R4,密码锁进入密码验证模式。2) 由四位减计数器组成,时钟输入为R3与R4的时钟信号,可记录在密码验证过程中用户共按了几下确认键,间接记录密码输入次数。当用户连续3次输入错误的密码时,计数器由1111计到1010,此时QAQBQC由0变为1,相当于一个上升沿,作为中上面那个D触发器的时钟信号,使该触发器输出1,此时如果密码仍不匹配,即与REDLED相连的与门另一个输入端也为1,那么输出REDLED为1,启动报警装置。如果在3次之内输入了正确密码,中或非门的输入有1,输出为0,对计数器清零操作。3) 在中已介绍。4) 当验证密码通过时,比较器输出为1,在中的与非门使能的情况下,最终输入到中下面的D触发器的时钟端的信号经历了由0到1的变化,相当于时钟上升沿,D触发器被打开,输出为1,开锁指示灯GREENLED变亮,同时锁被打开。5) 中计数器的QA端对时钟进行了二分频,即对S/W=0的情况下的确认信号进行了二分频,亦即QA经历一个周期说明用户完成了一次完整的密码输入。也可以说QA=0的期间都对应用户刚输入了一次完整的密码。所以在QA=0的情况下,再让后面的电路判断密码的匹配情况并做相应操作,就避免了用户输入密码的过程中就偶然的打开了锁的情况。6) 该模块实现进入密码修改模式前用户是否提供了正确的密码验证的检验功能。若密码验证通过,该模块中的D触发器的D端就为0,此时如果用户试图进入密码修改模式,即将S/W由0改变成了1,D触发器使能,将D的值送到Q端,此时QN为1,接入该模块中的与门后将与门打开,允许确认信号进入R1,R2,也就是进入了密码修改模式。否则,如果密码不匹配,D=1,S/W由0变1后,QN=0,将与门锁死,确认信号无法进入R1与R2,也就无法进入密码修改模式。即使按照修改密码的步骤操作,修改的密码也是无效的。7) 该模块是对S/W取非后接入与GREENLED相连的触发器清零端。及当S/W为1时,对GREENLED触发器清零,密码锁上锁。实现在修改密码过程中维持密码锁为关闭的状态。同时可见,S/W还有“上锁”的功能。一、 基于maxplus的原理图(graphic)仿真原理图与之前的原理图一样。下面分别仿真几种典型情况。1密码预置与报警。预置密码为0010101 1000011(顺序为K1,K2, ,K7),用户将S/W调为0后,连续按了6次确认键,相当于输错了三次密码,于是在第6个时钟(即确认键CLK_AFFIRM)上升沿处REDLED由0变为1,启动报警。此时用户由输入了正确密码,然后REDLED变为0,警报解除,GREENLED变为1,锁打开。2.密码修改失败的情况仿真密码预置为0101001 0011001,然后退出密码预置模式,即S/W = 0,然后未进行密码验证相当于密码验证失败,此时就令S/W =1,试图进入密码修改模式,并输入了0000010 0010000,然后令S/W = 0, 用0000010 0010000进行密码验证,结果GREENLED仍为0,然后再以预置密码0101001 0011001进行验证,结果GREENLED变为1,锁打开。说明密码修改失败,因为修改前未进行密码验证。3密码修改成功的情况仿真预置密码为0101001 0011001,然后退出密码预置模式,然后使用0101001 0011001进行密码验证,结果GREENLED变为1,说明密码验证通过。此时将S/W改为1,键入新密码为0010010 1011000,然后将S/W 调为0,使用0010010 1011000进行密码验证,结果GREENLED变为1,说明密码修改成功。方案改进:1. 如果单次输入密码错误,应该有相应的指示灯予以显示。改进可在3次连续输入错误 的基础的进行简化便可实现。2. 由实际应用分析可知,修改密码一般要连续输入两次以保证密码的正确性。由此可将方案作如下改进: 另加入两个8位寄存器R5和R6,连接方式与预置或修改密码寄存器相同。在预置或密码修改模式下,用门电路对确认信号进行分流,即前两个信号进入R1,R2,后两个信号进入R3,R4, 然后通过数据比较器看R1,R2是否分别与R3,R4的数据相等,将结果用指示灯显示。如果两次密码不匹配,用户便可根据指示灯的提示重新输入密码。针对第二种方案:设计拟采用以Intel公司的8051单片机为核心的单片机控制方案,利用单片机丰富的I/O端口和灵活的编程设计及其控制的准确性,实现基本密码锁功能。设计方框图如图:开锁控制电路8051单片机复位时钟电路44矩阵键盘输入错误提示显示 单片机控制方案系统硬件设计 系统总体设计原理 本设计利用所学电路知识,单片机知识和EDA方面的知识设计一电子密码锁。目的是要有较高的安全性, 密码位数高,错误提示,使用方便,显示界面友好等特点。确定方案与原理框图,设计出硬件线路,给出软件程序。根据设计目的,本设计以单片机8051AH为核心,用单片机的通用I/O接口P1口组成一个44键盘作为输入电路,用发光二极管和蜂鸣器作为指示和警报提示设计一个十四位数字电子密码锁电路。密码锁的开锁密码应是(0-9)中的十四位数字,密码输入完全正才确能控制开锁装置打开密码锁,并且指示灯亮;输入的密码错误则不能打开密码锁,并且发出声音警报提示。采用单片机来完成此电路设计,硬件电路简单,但是需要编程序来实现相应功能。完成此密码锁设计主要有几个方面问题需要解决:1、输入的问题,输入键中包含0-9十四位数字键、一个删除键(删除上一个输入的数字)、开锁键、确认键、改密码键和复位键;2、开锁和改密码的问题,密码输入正确了怎样控制电路开锁,密码输入不正确则不能开锁,如何实现修改密码,必须输入了正确的密码后才能修改密码;3、设计出电路图,编出程序,然后仿真,看是否能实现相应功能。综上所述,决定采用以下思路来完成十四位数字密码锁电路的设计。用单片机的P1口8根I/O接口线组成44键盘有16个按键,本设计用到其中11个键,这11个键包括0-9十个数字键和A(十)键,将A键用作确认键。此外,拟用单片机的外中断0来用作删除(删除上一位输入值),利用单片机的外中断1来修改密码,通过中断优先级寄存器IP把外中断0的中断优先级顺序设为高,这样外中断0优先级高于外中断1,所以即使在执行外中断1的中断服务程序时可以利用中断嵌套来响应外中断0,即当用户修改密码时一样可以使用删除键。这样以来,删除(删除上一位输入)程序和改密码程序只需要写作单片机的外中断0和1的中断服务程序即可。另外要注意的是,改密码只能在输入正确密码后进行改密码,所以外中断1在输入正确的密码时才允许中断,也就是说必须先输入正确的密码后改密码键才能有效,这时按改密码键就可以进行密码修改。如果在输入了正确的十四位密码后的十秒时间内没有其他任何动作,那么密码锁将自动结束本次运转,回到程序初始位置执行等待输入密码,即用户需在输入正确密码后的十秒时间内执行需要的操作开锁或者修改密码。最后,由于此设计的为十四位数字密码锁,有十四位密码,密码位数较多,所以使用一般的数码管显示电路已不能满足要求,这里选用1602LCD显示器作为显示电路,这样不仅能方便的显示密码,而且显示界面更加友好,显示内容也可以更加丰富。本设计中设有复位键,实际运用中可以将复位键设在锁内,即开锁后才能按到复位键,因为按了复位键单片机将恢复默认设置,密码也将恢复为默认密码。当然复位键也可以不设,可以将单片机复位方式设为上电复位。总体设计框图如第一章的图1-1所示。单片机作为整个硬件系统的核心,它既是协调整机工作的控制器,又是数据处理器。整个系统由单片机、时钟电路、复位电路等组成。本系统采用的8051AH单片机,它是一款MCS-51系列中的高性能单片机内部自带有4KB的Flash存储器及256KB RAM单元的芯片,因此可以不需另外扩展EEPROM及静态RAM就可以实现所需功能。单片机最小系统是软硬件系统连接的桥梁。其中单片机最小系统的电路图如图所示。单片机的时钟信号用来提供单片机片内各种微操作的时间基准,时钟信号通常用两种电路形式得到:内部振荡和外部振荡。MCS-51单片机内部有一个用于构成振荡器的高增益反向放大器,引脚XTAL1和XTAL2分别是此放大电器的输入端和输出端,由于采用内部方式时,电路简单,所得的时钟信号比较稳定,实际使用中常采用这种方式,如图所示在其外接晶体振荡器(简称晶振)或陶瓷谐振器就构成了内部振荡方式,片内高增益反向放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起可构成一个自激振荡器并产生振荡时钟脉冲。图中C1和C2构成并联谐振电路,它们起稳定振荡频率、快速起振的作用,其值均为30PF左右,晶振频率选12MHz。为了初始化单片机内部的某些特殊功能寄存器,必须采用复位的方式,复位后可使CPU及系统各部件处于确定的初始状态,并从初始状态开始正常工作。单片机的复位是靠外电路来实现的,在正常运行情况下,只要RST引脚上出现两个机器周期时间以上的高电平,即可引起系统复位,但如果RST引脚上持续为高电平,单片机就处于循环复位状态。复位后系统将输入/输出(I/O)端口寄存器置为FFH,堆栈指针SP置为07H, SBUF内置为不定值,其余的寄存器全部清0,内部RAM的状态不受复位的影响,在系统上电时RAM的内容是不定的。复位操作有两种情况,即上电复位和手动(开关)复位。图中就是上电复位方式, R2和C3组成上电复位电路,其值R取为1K,C取为22F。单片机最小系统硬件设计原理图51单片机是整个电路的核心部分,利用51单片机内部自带振荡器产生12MHz的时钟信号作为赖以工作的时序;指示灯发光二极管和蜂鸣器是通过CPU输出的电平信号来控制亮灭和是否发声;密码通过44键盘输入,密码存储就是地址位加1,密码位数减1,当十四位密码全部输入时密码位数减为零,输入完毕。此时按下确认键即进行密码检测工作,密码位数输入不够就按下确认键时会退出当前密码输入,需要从新输入;CPU输出的控制开锁与否的电平信号即为检测结果的反映;密码删除即为覆盖输入,通过地址位减一,密码位数加1即可实现;密码修改功能需先输入正确密码后才开放次功能,而且必须在30秒内按下改密码键,方可进入改密码程序,改密码就是将输入的新密码覆盖旧密码的过程,输入的密码位数不够时按下确认键会退出密码修改并且有指示灯和声音提示,退出密码修改后CPU继续先前的等待,30秒的等待结束后返回待机检测等待下一次密码输入;开锁的前提条件是密码输入正确,CPU通过将P0.0口置0反映密码正确,这时按下开锁键即可开锁,同样,开锁也必须在10秒的时间内按下才能开锁。系统设计原理图如图 系统原理图键盘电路本设计用的按键较多,所以这里采用矩阵键盘,用了44矩阵键盘的16个键中的11个。矩阵键盘又叫行列式键盘,行列式键盘的特点是能减少键盘与单片机接口时所占用的I/O线的数目,使硬件资源得到合理利用,但判键速度慢,在按键比较多时,往往采用矩阵式键盘。矩阵式键盘的链接方法有多种,可以利用扩展的并行I/O接口线;可以利用可编程的键盘、显示接口芯片进行连接、也可以直接连接于单片机的I/O接口线;利用扩展的并行I/O接口连接方便灵活,在单片机应用系统中比较常用。这里直接用单片机的P1口连接,P1的低四位作为行线,高四位作为列线。第一行的首键码就是0,第二行的首键码是4,第三行的首键码是8,第四行首键码是12。编码情况如图所示。矩阵键盘的每一条水平(行线)与垂直线(列线)的交叉处不相通,而是通过一个按键来连通,利用这种行列式矩阵结构只需要N条行线和M条列线,即可组成具有NM个按键的键盘。在这种行列式矩阵键盘非键盘编码的单片机系统中,键盘处理程序首先执行等待按键并确认有无按键按下的程序段。当确认有按键按下后,下一步就要识别哪一个按键按下。对键的识别通常有两种方法:一种是常用的逐行扫描查询法;另一种是速度较快的线反转法。矩阵键盘的工作过程可分为两步;第一步是CPU首先检测键盘上是否有键按下;第二步是识别哪一个键按下。对照图的44矩阵键盘,说明键盘的工作原理。判断键盘中有无键按下的处理方法是:由单片机I/O口向键盘送全扫描字,然后读入行线状态来判断。其具体过程如下:先向P1口输出#0F0H,把全部行线置为低电平,然后将列线电平状态读入累加器A中。如果有键按下,总会有一根列线电平被拉至低电平,从而使列输入状态不全为“1”否则则可判定无键按下。本设计中还用类似的方法将列线置为低电平,读行线状态,这样用两次读得的结果判断是否有键按下。具体设计方法在第四章中详细介绍,这里先说明原理。辨别键盘中哪一个键被按下的处理方法是:将列线逐列置低电平后,检查行输入状态来实现的,称为逐列扫描。其具体过程如下:从P1.4开始,依次给列线送低电平(通过向P1口写入扫描字实现,然后读入所有行线状态,如果全为1,则所按下的键不在此列;如果不全为1,则所按下的键必在此列,而且是在此列与零电平行线相交的交点上的那个键。为求取键码,在逐列扫描时,可用计数器或寄存器记录下当前扫描的列号,检测到第几行有键按下,就用该行的首键码加列号得到当前按键的编码。本设计用到44矩阵键盘的16个键中的11个,这11个键如图中所示,图中还有5个键的另一端未连线,表示这5个键未被使用,为了方便理解键盘的组成原理于是将所有按键全部画出,这样更清楚地看到P1口被用作矩阵键盘的连接状况。图 44矩阵键盘开锁电路当密码输入后并经过与约定的密码对比后,如果输入的密码正确,那么单片机将输出开锁信号给开锁执行机构,才能开锁。实际运用中,开锁机构一般就是利用电磁吸合原理构成的电磁锁,单片机输出的微弱信号需要经过驱动电路的放大处理后才能驱动电磁锁吸合,从而达到开锁的目的。开锁电路如图所示。开锁电路由驱动电路和开锁两级组成。由D5、R1、T10组成驱动电路,其中T10可以选择普通的小功率三极管如9014、9018都可以满足要求。发光二极管D5作为开锁的提示,亮表示开锁;开锁电路由D6、C24、T11和电磁锁组成。其中D6、C24是为了消除电磁锁可能产生的反向高电压以及可能产生的电磁干扰。T11可选用中功率的三极管如8050,电磁锁的选用要视情况而定,但是吸合力要足够且有一定的余量。在本次设计中,着重于密码锁的核心部分的设计,为了简明的讲清设计原理和方便仿真调试,暂时用发光二极管和蜂鸣器来代替此部分电路,发光二极管亮时蜂鸣器不会响,表示开锁;灭,表示没有开锁,并且蜂鸣器鸣响。 开锁电路本设计中用发光二极管D1代替以上开锁电路。电路中有两个指示灯通过P0口的P0.0和P0.1驱动点亮,P0.0和P0.1在正常情况下均输出高电平,P0.0口接开锁键后接蜂鸣器并且通过反相器(非门)发光二极管D1,当密码输入正确时,会将
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- JJF 2460-2026近距离治疗用井型电离室剂量仪校准规范
- GB/T 48160-2026航空航天流体系统用螺纹和密封联轴器
- GB/T 22185-2026体育场馆公共安全通用要求
- 模型制作工诚信测试考核试卷含答案
- 合成碳膜电位器制造工岗前实操知识水平考核试卷含答案
- 磁头制造工岗前生产安全考核试卷含答案
- 蚕饲养员变更管理评优考核试卷含答案
- 墨水墨汁制造工安全演练强化考核试卷含答案
- 稀土化工操作工操作技能模拟考核试卷含答案
- 液体洗涤剂制造工岗位工作规范考核试卷含答案
- 华为知识管理平台研究
- 2026届北京海淀区九年级英语中考三模模拟试卷(含答案逐题解析与听力原文)第009套
- 2025国家义务教育质量监测小学四年级语文试题
- 2025年全国农产品质量安全检测技能竞赛理论知识考试题库(含答案)
- 北大青鸟消防控制主机操作知识培训课件
- 2026年电信公司转正考试试题
- 2025年合成生物学与合成生物学知识产权保护
- 2024版美罗培南治疗新生儿脓毒症的临床实践指南课件
- 监护仪使用管理安全质量目标及管理细则2026年
- 《养老机构重大事故隐患判定标准》解读与分析
- 园林植物生长发育基本规律
评论
0/150
提交评论