课程设计(论文)-基于单片机的电子密码锁设计1.doc_第1页
课程设计(论文)-基于单片机的电子密码锁设计1.doc_第2页
课程设计(论文)-基于单片机的电子密码锁设计1.doc_第3页
课程设计(论文)-基于单片机的电子密码锁设计1.doc_第4页
课程设计(论文)-基于单片机的电子密码锁设计1.doc_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

目 录第一章 前言- 1第二章 基本功能设计- 2n 2.1 实验任务- 2n 2.2基本设计- 2n 2.3 系统框图- - 2第三章 硬件设计- 3 3.1硬件工作接线口- 3 3.2 led显示器结构与原理- 3 3.3复位电路- 5 3.4按键方式- 5 3.5电路原理图- 6 第四章 软件设计- 74.1功能说明- 74.2软件结构- 74.3源程序-9第五章 心得体会- 14第六章 参考文献- 15元器件清单-16第一章 前言一种能防止多次试探密码的基于单片机的密码锁设计方案,根据基本要求规划单片机密码锁的硬件电路和软件程序,同时对单片机的型号选择、硬件设计、软件流程图、单片机存储单元的分配等都有注释。我们知道现在很多行业都需要密码锁,电子密码锁的性能和安全性大大超过了机械锁,为了提高密码的保密性,可以经常更改密码,防止密码被盗;当密码输入错误多次时,报警系统可自动启动。它们有很多扩展功能:用户可以根据实际情况随意改变密码值或密码长度,按下“密码修改键”提示用户输入原密码,通过校验后提示输入新密码,一次写入cpu存储器中,另一次写入单片机内部ram中,以便机器确认密码的正确性。输入完毕后,按修改确认键,两次的密码完全一致时,密码修改完成。我们这可以在输入的密码与程序中设定的密码相比,若失误,会有灯亮提示,但三次后都错误,系统可自动报警。防盗报警功能是利用断线方式报警,当cpu检测不到返回信号时,系统自动报警单元报警,正常开启锁时,系统自动切断报警单元的电源。第二章 基本功能设计1、实验任务根据设定好的密码,采用矩阵式按键实现密码的输入功能,当密码输入正确之后,锁就打开(即绿灯亮),如果输入的三次密码不正确,就锁定按键3秒钟,同时报警(即红灯亮)。2、基本设计我们将密码程序存在eprom中,用户通过单片机上p1.0口上的12按键进行选择。具体操作如下:首先按一下p1.0口上的按键,然后再逐渐输入密码,最后按#号确认即可。设置显示初始符号“”,为了帮助用户确认是否有键按下,并且防止密码外泄,在输入显示时,并不是显示用户按下的数字符号,而是以一个特定的字母符号提醒用户是否有键按下。有键按下,就会显示字符“f”,没有键按下就是初始状态。首先按下p1.0口上的按键,然后输入密码,正确则绿灯亮,输入三次都不正确的则红灯亮。3、系统框图at89c51cpu显示键盘复位晶振第三章 硬件设计1、硬件工作接线口p0口接数码管,用来显示按键是否按下,p1口接键盘, p2口按串行方式传送信号给数码管,p2.0口显示电磁锁开还是闭合状态。把单片机系统区域中的p0口用导线连接“四路静态数码显示”的任一端口上,把单片机系统区域中的p1口上接独立式键盘。2、led显示器结构与原理led显示块是由发光显示二极管显示字段的显示器件。在单片机中我们通常用七段led,这种显示共有共阴极和共阳极两种,本设计是用共阳极,是led显示块的发光二极管与阳极并接,如图所示通常的七段显示块中共有8个发光二极管,其中7个发光二极管构成七笔字形“8”,一个发光二极管构成小数点。七段显示块与单片机接口非常容易。只要将一个8位并行输出与显示块的发光二极管引脚相连即可。8位并行输出口输出不同的字节数据即可获得不同的数字或字符,通常将控制发光二极管的8位字节数据称为段选码。显示字符共阳极段选码显示字符共阳极段选码0c0ha88h1f9hb7ch2a4hcc6h3b0hda1h499he86h592hf8eh682h7f8h880h990h3、复位电路如图所示为80c51型单片机上电复位电路。80c51型单片机将复位,为保证微分脉冲宽度足够大,一般取10f电容。4、按键方式按键方式有独立式和行列式两种,本设计是采用独立式,共设置5个按键。独立式按键是指直接用i/o口线构成的单个按键电路。每个独立按键单独占有一根i/o口线,每根i/o口线上的按键工作状态不会影响其他i/o口线的工作状态。若按键an1an5分别代表数码15,an0代表#号。在没有键按下时,p1.0p1.7都是高电平1,若某个键被按下,相应的接口线就变为低电平0。开锁时必须先按an1,使从p1口读入的第一个值与存储单元的设定值相同,再顺序按按钮将密码输入,才能开锁。5、电路原理图第四章 软件设计1、功能说明1.1将密码存放在table(db 02h,02h,01h,05h,08h,02h),输入221582时,再按“*”就可打开电锁,然后清除显示器为“000000”.1.2 如按错则重新输入或按“#”,将显示器清除为“000000”2、软件结构密码锁主程序设置初始密码初始显示/关闭锁读端口p1,取按键状态有按键按下么?有按键按下么?再次读端口p1送列扫描字读行线状态第1行按下?第2行按下?第3行按下?4列扫描完第0行按下?保护现场a=00a=12a=08a=04相加计算键号调用按键查询子程序按键释放么?a=设定密码么?键号给a显示“f”显示“e”nynyyyyynnnnnynyyn11222、源程序 org 0000hstart:orl p2,#0ffh mov r4,#06h mov r0,#30hclear:mov r0,#00h inc r0 djnz r4,clearl1: mov r3,#0f7h mov r1,#00hl2: mov a,r3 mov p1,a mov a,p1 mov r4,a setb c mov r5,#03hl3: rlc a jnc keyin inc r1 djnz r5,l3 call disp mov a,r3 setb c rrc a mov r3,a jc l2 jmp l1keyin:mov r7,#60hd2: mov r6,#248 djnz r6,$ dknz r7,d2d3: mov a,p1 xrl a,r4 jz d3 mov a,r1 mov dptr,#table movc a,a+dptr mov r7,a xrl a,#0ah jz comp mov a,r7 xrl a,#0bh jz start mov a,r7 xch a,30h xch a,31h xch a,32h xch a,33h xch a,34h xch a,35h call disp jmp l1disp: mov a,#35h add a,#50h mov p0,a call delay mov a,#34h add a,#40h mov p0,a call delay mov a,#33h add a,#30h mov p0,a call delay mov a,#32h add a,#20h mov p0,a call delay mov a,#31h add a,#10h mov p0,a call delay mov a,#30h add a,#00h mov p0,a call delay retcomp: mov r0,#35h mov r2,#06h mov r7,#12x4: mov a,r7 mov dptr,#table movc a,a+dptr xrl a,r0 jnz x7 dec r0 inc r7 djnz r2,x4 mov p2,#0ffh mov r2,#200x6: mov r6,#248 djnz r6,$ djnz r2,x6x7: jmp startdelay:mov r7,#06d1: mov r6,#248 djnz r6,$ djnz r7,d1 rettable:db 01h,02h,03h db 04h,05h,06h db 07h,08h,09h db 0ah,00h,0bh db 02h,02h,01h,05h,08h,02h end五、心得体会自己写-第六章 参考文献1、 王迎旭编.单片机原理与应用m.机械工业出版社.2004.2、 楼然苗编.51系列单片机设计实例m.北京航空航天大学出版社.3、 黄勤编.计算机硬件技术基础实验教程m.重庆大学出版社4、刘乐善编.微型计算机接口技术及应用m.华中科技大学出版社.5、陈光东编.单片微型计算机原

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论