1、基于单片机的电子密码锁的设计毕业设计论文本科毕业设计(论文)题 目 基于单片机的电子密码锁的设计 基于单片机的电子密码锁的设计 摘 要科学技术在不断的发展,带动了人们的生活各方面的逐渐进步,人们对保护家庭财产安全的意识也随之增加。然而以前人们家中普遍使用的是比较落后的机械锁,这就导致很多被偷窃事故的发生。所以开发出安全性能更好,保密性能更高,操作相对简单的锁具成为一大课题,最终电子密码锁横空出世,并且得到普遍的认可。本设计是将单片机AT89S51作为核心部件,单片机的外围接入密码锁的检测、监控和执行的各种程序,最终可以达到输入密码,检测正确与否,执行开关,错误时报警等诸多功效。本设计具有以下三
2、方面的创意点,第一:利用51单片机之间串行通信的这一特点进行设计,可以使该产品的密码内容更具有随机性,保护起来能好,并且因为使用键盘键入的方式优势更加明显。第二:本设计的编码方式是用二次编码,调制方式是用二次调制,这些方式不仅可以在许多条线路上进行控制信息,并且提高信号在传输过程中的抗干扰性能,更加减少错误的动作,而且功率的消耗更低;反应的速度更快速、传输的效率更高、工作的稳定性更可靠等。第三:软件设计思路是利用从上到下的分层模块法,最终可以实现系统的扩展性能更高,运行稳定性更强,体积更加缩小的目的。关键词:AT89S51单片机;LED;电子锁;自动报警Based on single chip
3、 microcomputer electronic combination lock design AbstractThe development of science and technology constantly, led the life of people all aspects of the gradual progress, people to protect the family property safety consciousness also will increase. Ago, people commonly used in the home is, however
4、, the relatively backward mechanical lock, and this leads to a lot of stolen accident. So developed better safety performance, higher security performance, relatively simple operation locks become a big issue, the final consumer electronic combination lock, and universally recognized. This design is
5、 the single chip microcomputer AT89S51 as core parts, MCU peripheral combination lock access to the detection, monitoring, and perform a variety of procedures, can achieve input password, eventually detect correctly or not, switches, error alarm, and many other effects. The creative point of this de
6、sign has the following three aspects, first, by using the characteristic of serial communication between 51 single-chip microcomputer to carry on the design, can make the products password content has more randomness, can well protected, and because of the way using the keyboard type advantages more
7、 apparent. Second: the design of coding method is to use the secondary coding, modulation method is to use a second modulation, not only can these ways on many routes to control information, and improve the anti-jamming performance, the signals in the transmission process more reduce the wrong actio
8、n, and lower power consumption; Reaction speed is more rapid and transmission work more efficient and more reliable stability, etc. Third: the software design idea is using the method of layered modules from top to bottom, can finally realize the expansion of the system performance is higher, runnin
9、g stability is stronger, more smaller.Keywords: AT89S51 MCU; LED display; trick lock; the automatic alarm1 绪 论1.1 课题背景在日常的生活和工作中,住宅与部门的安全问题、公司的重要文件、账簿报表以及公司员工资料的安全问题多用加密码锁的方式去解决。如果用传统的金属弹簧锁,人们经常需要多把钥匙,一点也不方便,而且钥匙一旦丢失会带来很多困扰。当前科学技术飞速发展,日常生活中人们对于安全的防护要求日趋严厉,为了符合当下的需求增强锁的安全度,不需要钥匙的电子锁出现了。密码锁具有安全性高、成本低、
10、功耗低、易操作等优点。根据本设计要求,密码输入控制电路或芯片的工作,以便控制所述机械开关被关闭时,完全锁定,锁定和其他任务。它的产品多种多样,有一个简易的电路产品,而且还有比较便宜的以芯片为基础的产品。当前用变成实现,以芯片做为核心的数码锁被广泛应用。其性能和安全性已大大超过了机械锁。其主要优点有:(1) 保密性好,编码量多,远比传统金属弹簧锁强。不容易被轻易开锁。(2) 密码可变。用户可以固定时间变换密码,避免密码被他人盗取,而且也会避免人员的替换造成被盗的风险。(3) 自动保护功能。当输入密码错误时,系统会报警。(4) 操作简单,一学就会。1.2 课题的目的和意义以及设计特点随着现在快速发
11、展的科学技术,单片机的性能不断被提高,产品性价比提高,相关技术不断提升趋于完成。单片机对国家和人民生活帮助、军事设备和民用生活电器等各个方面起到了非常大的作用。本设计采用的收集数据和算法控制是通过单片机和其他设备来实现的,用于某个功能的实现,还可以测试提高学生对整体电路设计和把握能力,知道单片机的系统的设计过程,还有针对实际制作和手动调试电路板的能力。同时加强数字电路的现实使用,也奠定了理论和实践依据同类产品的进一步发展。上世纪80年代以来,作为电子锁和电子锁的ASIC容积减少,改进的可靠性和成本高的到来,适于使用安全性要求高的场合,以及需要提供能源的使用也是在一定范围内有限的功率,也难以扩散
12、,所以也没有显著研究。现在西方国家生产密码锁的技术比较成熟,而且种类繁多,在防盗安全系统发面应用广泛,社会中的各种门运用了更安全靠谱的技术。中国的电子锁的总体水平仍然在国际上是50年前左右,电子锁的价格还是很高的,电子锁的主要市场仍是关键,按键式和卡片钥匙锁已引进了国际先进水平,只有国内几家工厂供应市场。但国内自行开发的电子锁,其市场格局尚未形成,应用并不广泛。国内的不少企业也引进了世界上先进的技术,发展前景非常可观。未来通过人们的不懈努力,能让电子锁在我们的国家可以广泛应用。2 核心芯片及元件介绍2.1 AT89S51介绍图2.2 AT89S51引脚图AT89S51是一个低功耗,高性能CMO
13、S八位单片机,单片机内部含有4k字节的可以反复擦写1000次的Flash只读程序存储器,器件是通过高密度,非易失性存储技术制造的,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,AT89S51在众多嵌入式控制应用系统中得到广泛应用。AT89S51引脚如图2.2。2.1.2 AT89S51主要特性1. 与MCS-51 兼容2. 4K字节可编程闪烁存储器寿命:3. 寿命:1000写/擦循环4. 数据保留时间:10年5. 全静态工作:0Hz-24MHz6. 三级程序存储器锁定7. 1288位内部RAM8. 32可编程I/O线9. 两个16
14、位定时器/计数器10. 5个中断源11. 可编程串行通道12. 低功耗的闲置和掉电模式13. 片内振荡器和时钟电路2.1.1 AT89S51芯片的引脚VCC:供电电压,其工作电压为5V。GND:接地。XTAL1:通过一个引脚外部晶振。在内部,它是放大器,放大器片上振荡器的反相输入端。当使用外部振荡器HMOS单片机,该引脚应接地;对于SHMOS微控制器,该引脚用作驱动端。XTAL2:连接外部晶体的另一端。RST/VPD:当振荡器运行时,该引脚上出现两个机器周期的高电平将使单片机复位。ALE/PROG:即使没有访问外部存储器,ALE端仍然是相同的频率发生周期性的正脉冲信号,1/6的振荡频率的频率。
15、但是,请注意,每当访问外部数据存储器,一个ALE脉冲被跳过。EPROM在编程的时候,对于如8751的微控制器,这个引脚主要用来编程脉冲的输入。PSEN:该引脚的输出是外部程序存储器读选通信号。在取指令(或常量)从外部程序存储器在每个机器周期两次PSEN有效。PSEN也可驱动(吸收或输出)8 LS型TTL输入。EA/VPP:为常用8031,没有内部程序存储器,那么EA脚必须始终接地只选择外部程序存储器。P0口:是一个双向八三态I/ O端口,外部存储器,地址总线和数据总线低8复用,能够吸收电流驱动器8的LS TTL负载的类型。P1口:是一个准双向8位I/O口。因为此接口的输出不是高阻抗状态,输入不
16、能锁存,它不是真正的双向I/ O端口。P1口可驱动(吸收或输出电流)4个LS型的TTL负载。当EPROM编程和程序验证时,它接收低8位地址。P2口:是一个准双向8位I/O口。在对EPROM编程和程序验证时,它接收高8位地址。P2可驱动(吸收或输出电流)4个LS型的TTL负载。作为第一个特征,使用时,将作为通用I/ O口使用,功能和操作使用相同的P1口。作为第二功能使用每个引脚的定义示于表2.1每个端口可以独立地为P3被定义为第一或第二功能的输入和输出的功能。表2.1 P3口管脚备选功能P3.0RXD(串性输入口)P3.1TXD(串行输出口)P3.2/INT0(外部中断0)P3.3/INT1(外
17、部中断1)P3.4T0(计时器0外部输入)P3.5T1(计时器1外部输入)P3.6/WR(外部数据储存器写选通)P3.7/RD(外部数据储存器读选通)2.2 储存芯片AT24C02如图2.2 位AT24C02的芯片引脚图。图2.2 AT24C02的芯片引脚图特点:低压和标准电压运行模式 2.7 (VCC = 2.7V to 5.5V) 1.8 (VCC = 1.8V to 5.5V)设备操作:CLOCK和DATA变化:SDA管脚通常外部要拉高。SDA管脚上的数据只能在SCL低期间改变。数据在SCL高期间改变定义为一个开始或停止信号。开始状态:之前的任何操作都必须有一个启动信号产生于SDA的下降
18、沿- SCL为高。0停止状态:SDA产生是停止信号的上升沿,当SCL是高状态的时候,所有通信会在这个信号以后停止。在一个读的序列之后,停止信号将让EEPROM进入备用电源模式。2.3 LCD16022显示器LCD液晶显示模块是一个通用装置的许多电子产品,在计算器,万用表,电子表格,和许多家用电子产品可以在主显示数字,特殊字符和图形中可以看出。具有体积小,功耗低1602型液晶显示模块,显示内容丰富等特点。接口信号说明:1602型LCD的接口信号说明如表2.3所示。表2.3 LCD1602接口信号说明编号符号引脚说明编号符号引脚说明1GND电源地9D2数据2VDD电源正极10D3数据3VL液晶显示
19、偏压11D4数据4RS数据/命令选择12D5数据5R/W读/写选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源正极8D1数据16BLK背光源负极1602型LCD的技术参数:容量:162字符;芯片工作电压:4.55.5V;工作电流:2.0mA(5.0V);模块最好的电压:5.0V;字符:2.954.35(WH)mm。1602型LCD基本操作程序如下表所示:表2.3 LCD1602基本操作程序读状态输入RS=L,R/W=H,E=H输出D0D7=状态字写指令输入RS=L,R/W=L,D0D7=指令码,E=高脉冲输出无读数据输入RS=H,R/W=H,E=H输出D0D7=状态字写数据输
20、入RS=H,R/W=L,D0D7=数据,E=高脉冲输出无2.4 晶体振荡器晶体振荡器,简称晶振,其作用在于产生原始的时钟频率,这个频率经过频率发生器的放大或缩小后就成了电脑中各种不同的总线频率。以声卡为例,要实现对模拟信号44.1kHz或48kHz的采样,频率发生器就必须提供一个44.1kHz或48kHz的时钟频率。如果需要对这两种音频同时支持的话,声卡就需要有两颗晶振。但是现在的娱乐级声卡为了降低成本,通常都采用SCR将输出的采样频率固定在48kHz,但是SRC会对音质带来损害,而且现在的娱乐级声卡都没有很好地解决这个问题。现在应用最广泛的是石英晶体振荡器。石英晶体振荡器是一种高精度和高稳定
21、度的振荡器,石英晶体振荡器也称石英晶体谐振器,它用来稳定频率和选择频率,是一种可以取代LC谐振回路的晶体谐振元件。石英晶体振荡器广泛地应用在电视机、影碟机、录像机、无线通讯设备、电子钟表、单片机、数字仪器仪表等电子设备中。用于产生一个时钟信号和一个特定的系统中提供一个基准信号的数据处理设备。在单片机中为其提供时钟频率。石英晶体振荡器是由压电效应的石英晶体谐振器装置(结晶二氧化硅),其结构基本上:从石英晶体按照一定角度切片(叫做晶片,有正方形、矩形或圆形等),其中,所述银层的两个相应表面涂覆作为在每个焊接在连接到管脚引线的一个电极的电极,与所述封装外壳一起构成了一个石英晶体谐振器中,称为石英晶体
22、或晶体振荡器。其产品一般包装用金属外壳,也有用玻璃壳,陶瓷或塑料封装。只要在晶体振子板极上施加交变电压,就会使晶片产生机械变形振动,此现象即所谓逆压电效应。当外加电压频率等于晶体谐振器的固有频率时,就会发生压电谐振,从而导致机械变形的振幅突然增大。3 总体方案设计该设计的组件主要有矩阵键盘、液晶显示器、单片机和密码存储。键盘主要在于数字密码的输入和实现其他功能。通过连接到单片机的键盘输入用户的密码,输入的用户密码与存储的密码经过单片机对比,然后判断是否密码正确,接着传到警报或是开锁电路控制开锁还是报警,实际应用时只要吧单片机的负载继电器换成电子锁的电磁铁线圈就可以了,也能用继电器的触点来控制电
23、磁铁线圈的吸合。该系统由两个部分组成,软件和硬件部分。软件部分是由主程序、初始化程序、LCD显示程序、键盘扫描程序、启动程序、关闭程序、建功能程序、密码设置程序、EEPROM读写程序和延时程序等组成,硬件部分是由电源、键盘、密码存储器、复位电路、晶振电路、液晶显示模块、报警电路、开锁电路构成。图3.1 系统总体框图3.2 电路总体构成知道用什么型号的单片机后,就应该确定外围电路,外围电路包括电源输入、键盘、密码存储器、复位电路、晶振电路、液晶显示模块、报警电路、开锁电路组成,根据实际情况键盘选择4*4矩阵键盘,液晶显示选择字符型LCD1602,用AT24C02来作为密码存储芯片完成。其原理图如
24、图3.2所示:图3.2 电路总体结构图3.3 电源输入电路密码锁主要控制部分电源需要用5V直流电源供电,其电路如图3-3所示,而5V电源输入时往往伴有杂波,所以加一个2.2uF的电容滤波。这样输出的电压一般能满足要求。图3.3 电源输入电路原理图3.4 键盘输入电路独立按键式键盘由于按键数量较多不适合本设计。所以用矩阵键盘,也成为列式键盘有行线和列线构成,和独立式按键键盘比较,按键位于行列的交叉位上,密码锁的密码由键盘输入完成,要节省很多I/O口。使用的这个44键盘除了能正常的输入密码还可以当做特别功能键使用,例如显示清空等等。每个按键的功能都可以在程序中设定 。其大体功能(看键盘按键上的标记
25、)及与单片机引脚接法如图3-4所示图3.4 键盘输入原理图3.5 密码存储电路ATMEL公司的2KB字节的电可擦除存储芯片AT24C02,使用两线串行的总线与单片机通信,2.5V的最低电压,1mA的额定电流,10uA (5.5V)的静态电流,内部数据的芯片,断电情况下和8引脚DIP封装存储超过40年,使用方便。其电路如图3.5所示。图3.5 密码存储电路原理图图中1、2、3脚是三条地址线,用于确定芯片的硬件地址,在AT89S51上它们都能接地,第5脚和第8脚分别为正、负电源。AT24C02中带有片内地址寄存器,每写入或读出一个数据字节后,该地址寄存器自动加1,以实现对下一个储存单元的读写,所有
26、字节均以单一操作方式读取3.6 复位电路单片机复位是使CPU和系统中的其他功能部件都处在一个确定的初始状态,并从这个状态开始工作,例如复位后PC0000H,使单片机从第个单元取指令。无论是在单片机刚开始接上电源时,还是断电后或者发生故障后都要复位。在复位期间(即RST为高电平期间),P0口为高组态,P1P3口输出高电平;外部程序存储器读选通信号PSEN无效。地址锁存信号ALE也为高电平。根据实际情况选择如图2-8所示的复位电路。电路中的最简单的复位电路增加了一个手动复位按钮,电源在瞬间,对电容器C1的电压为小,在下拉电阻接近供电电压,也就是复位电压,RST为高,则的端电压在充电期间电容器的RS
27、T逐渐下降,当电压低于一定值的RST端子,从复位状态的CPU,因为电容器C1足够大,以确保RST活性高振荡周期时间大于24,CPU可以可靠复位。增加手动复位按钮不能可靠重置,以避免崩溃。当复位按键按下后电容C1通过R5放电。当电容C1放电结束后,RST端的电位由R11与R15分压比决定。由于R11R15 因此RST为高电平,CPU处于复位状态,松手后,电容C1充电,RST端电位下降,CPU脱离复位状态。R11的作用在于限制按键按下瞬间电容C1的放电电流,避免产生火花,以保护按键触电。图3.6 复位电路原理图3.7 晶振电路AT89S51引脚XTAL1和XTAL2晶体振荡器和电容器C2,C1连接
28、在如图3-7所示的方式。晶体,电容器C2 / C3和片上非门(作为一个反馈放大器元件)构成电容三点式振荡器,该信号的振荡频率和振荡器频率和电容器C1,有关容量C2,但是主要在0确定由晶体频率范围33MHz的,电容器C2,C3在530pF的之间的范围内。根据实际情况,外部晶振系统采用这种设计的12MHZ。 20pF的电容值。图3.7 晶振电路原理图3.8 显示电路为了提高密码锁的密码显示效果能力。本设计的显示部分由液晶显示器LCD1602取代普通的数码管来完成。只有按下键盘上的开启按键后,显示器才处于开启状态。同理只有按下关闭按键后显示器才处于关闭状态。否则显示器将一直处于初始状态,当需要对密码
29、锁进行开锁时,按下键盘上的开锁按键后利用键盘上的数字键09输入密码,每按下一个数字键后在显示器上显示一个*,输入多少都会显示*。当输入的密码,按回车键,如果你输入的密码正确,LCD子显示“打开”,这将输出低电平,晶体管T2导通时,电磁拉力,电子密码SCM P2.0导角锁被打开,如果密码不正确,液晶显示屏会显示“ERROR”,P2.0输出为高电平,电子锁无法打开。通过液晶显示屏,可以清楚地确定锁的状态。其显示部分引脚接口如图3-8所示:图3.8 显示电路原理图3.9 报警电路报警部分由蜂鸣器及外围电路组成加电后不发声,当一个键被按下时,“叮”的一声,每一次点击,声音一次,当密码是正确的,不健全的
30、直接解锁,当密码输入错误,单片机P2.1引脚为低电平时,晶体管T3导游喇叭发出的噪音声光报警。如图3-9所示:图3.9 报警电路原理图3.10 开锁电路当用户输入正确的密码,单片机将输出信号开门,传到驱动电路,然后驱动电磁锁,成功的开门。其实际电路如图3.11所示。 电路通过驱动程序和解锁两个组成部分。由D1,R12,Q1的驱动电路,其可以被选择Q1普通的小功率晶体管作为8050,9018组成都能够满足要求。 D1解锁指标;通过D2,C5组成解锁。其中,D2,C5是能够消除电磁锁反向高压和电磁干扰,可能会发生。电磁锁的选择取决于不同的情况,但抽吸力是足够的,并有一定的余量。在设计中,暂时用发光
31、二极管代替电磁锁,发光管亮,表示开锁;灭,表示没有开锁。图3.11 开锁电路原理图4 软件程序设计本系统软件设计由主程序、初始化程序、LCD显示程序、键盘扫描程序、键功能程序、密码设置程序、EEPROM读写程序和延时程序等组成。4.1 主程序流程图如图4-1 为主程序流程图,开始接上电源,程序进行初始化设置,然后在键盘上输入密码,此系统进行键盘扫描,密码正确,开锁成功,密码错误3次出错报警,选择是否修改密码,若要修改密码,先输入原来的密码,密码正确后设置新密码,错误时报警,需要两次确认新密码,确认后,密码修改成功,否则结束最终返回。然后启动程序,进行保护,再次在键盘上输入密码,系统进行扫描,如果和之前一样,则执行相同程序,如不是,则执行另一种程序。图4.1 主程序流程图4.2 按键软件设计如图4.2按键功能流程图,在按键当中,有与输入、开锁、清除、设置、确认的程序相对应的按键,并按顺序与输入的数相比较,当输入正确时,进入密码程序,错误时进行清除,输入两次新密码正确时,可进行重新设置密码,最后确认程序。图4.2 按键功能流程图4.3
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1