电子密码锁 单片机.docx
- 文档编号:25960315
- 上传时间:2023-06-16
- 格式:DOCX
- 页数:12
- 大小:266.12KB
电子密码锁 单片机.docx
《电子密码锁 单片机.docx》由会员分享,可在线阅读,更多相关《电子密码锁 单片机.docx(12页珍藏版)》请在冰豆网上搜索。
电子密码锁单片机
课程设计报告书
课程名称电子密码锁
姓名
学号
专业
班级
指导教师
课程设计成绩□不合格□合格□良好□优秀
2012年06月25日
课程设计任务书
课程设计
题目
电子密码锁
课程设计
时间
2012年06月20日~2012年06月26日
课程设计
小组成员
课程设计
目的
1、熟练掌握单片机指令系统
2、具备一定单片机硬件电路设计和软件编程的能力
3、掌握单片机编程软件、仿真软件的应用
4、完成设计方案的论证、编程以及调试运行
5、完成课程设计报告的撰写
课程设计
任务
用单片机设计密码锁控制器,要求工作稳定可靠,保密性高,实用性强,并具有报警控制功能。
课程设计
主要技术
指标
1密码正确时,绿灯点亮
2密码错误时,红灯点亮,用户可再次输入密码
3连续3次密码错误,黄灯点亮,同时启动报警信号
课程设计
进度计划
6月21日确定课题查找资料完成课程设计任务书
6月22日寻找资料并完成摘要、绪论
6月23日完成课题设计,设计总结,参考文献
6月24日全部完结并打印提交课题报告
任务签发时间
2012年6月21日
任务完成时间
2012年6月26日
学生签名
指导教师签名
课程设计报告书
一:
功能描述
1设计的意义
在工业生产中,一些关键的控制核心部分,为防止非法进入或修改,需设置密码电路。
在一些保密场合,为防止非法人员进入,也需设置密码电路。
本任务主要讲解用单片机设计的密码锁控制器,要求工作稳定可靠,保密性高,实用性强,并具有报警控制功能。
2应用
密码锁的应用非常广泛,例如档案室,保险箱,电梯等等。
3功能说明
密码的输入由键盘输入,若密码正确解锁指示灯D1亮;若输入密码错误指示灯D2亮,报警指示灯D3亮,需复位后方能重新输入密码。
每次按键都能有数码管显示。
二:
硬件电路的设计与说明
1单片机应用系统说明
单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器RAM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、AD转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域的广泛应用。
从上世纪80年代,由当时的4位、8位单片机,发展到现在的32位300M的高速单片机。
由于单片机在工业控制领域的广泛应用,单片机由芯片内仅有CPU的专用处理器发展而来。
最早的设计理念是通过将大量外围设备和CPU在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。
而最小系统是就是能让单片机运行起来的最少部件构成的系统。
一般而言,单片机系统由主芯片,电源电路,时钟电路,复位电路,调试电路等构成。
最小系统是由5v电源,12MHZ时钟电路,复位信号组成
1显示电路
P1口接3个共阳极二极管。
470K电阻起限流作用。
密码正确V5绿灯亮;密码错误,V6红灯亮;连续3次密码错误,V7黄灯亮。
P0口接数码管,显示按键输入键号。
2输入电路
输入键盘有4*4共16个按键组成,15个数字或字母键,1个输入键。
每位字符可为0~9及A~E的15个数字或字母中的任意义一个
3报警电路
报警电路密码连续3次输入错误,黄灯亮,同时启动报警信号。
R9电阻限流。
4原理图
输入密码正确,绿灯亮,数码管显示按键号;输入密码错误,黄灯亮,用户可再次输入密码;连续三次密码错误,黄灯亮同时启动报警系统。
三:
程序设计
1程序流程图
密码锁控制器主程序流程图
按键操作子程序流程图
2程序及说明
ORG0000H;主程序
MOVP1,#0FFH;P1口输出FFH
MOVR4,#00H;输入密码错误次数寄存器R4清0
MOVR0,#1FH;输入密码暂存区指针R0赋初值1FH
MOVR3,#00H;输入密码位数寄存器R3清0
KEY:
MOVP2,#0FH;键盘扫描及计算键值
MOVA,P2
ANLA,#0FH
CJNEA,#0FH,KEY1
SJMPKEY
KEY1:
MOVP1,#0FFH
LCALLDEL12
MOVA,#0EFH
KEY2:
MOVR2,A
MOVP2,A
MOVA,P2
ANLA,#0FH
CJNEA,#0FH,KEY3
MOVA,R2
SETBC
RLCA
JCKEY2
SJMPKEY
KEY3:
MOVB,#0FBH
KEY4:
RRCA
INCB
JCKEY4
MOVA,R2
SWAPA
KEY5:
RRCA
INCB
INCB
INCB
INCB
JCKEY5
KEY6:
MOVA,P2
ANLA,#0FH
CJNEA,#0FH,KEY6
LCALLDEL12
LCALLOPREAT;调用按键操作程序
LJMPKEY
ORGO100H;按键操作子程序
OPREAT:
INCR0;将输入密码暂存区指针加1
MOVA,B;将键值送入A
MOV@R0,A;输入密码(按键号)暂存于片内RAM
CJNEA,#0FH,COUNT;判断输入按键是否为“输入”键,不是
;转COUNT处
CJNER3,#08H,ERROR;判断输入按键是否为8位,不为8为
;转ERROR处
MOVR1,#20H;将R1置20H
MOVB,#00H;将设定密码数据表索引值寄存器B清0
MOVDPTR,#TAB;将设定密码表的首地址送DPTR
LOOP:
MOVA,B;将索引值送入A
MOVCA,@A+DPTR;查表取得设定密码数据
CLRC;C清0
SUBBA,@R1;输入密码与设定密码比较
JNZERROR;不相等则转至ERROR处
INCR1
INCB
DJNZR3,LOOP;逐位比较
OPEN:
MOVR1,#0FEH;输入的8位密码与设定的8位密码全相等
;则输出开锁信号
LCALLLUCKDEL;开锁延时3S
MOVP1,#0FFH;重新锁定
MOVR0,#1FH;将密码暂存区指针R0重新赋值为1FH
MOVR3,#00H;将密码位数寄存器R3清0
MOVR4,#00H;将密码错误次数寄存器R4清0
RET
ERROR:
MOVP1,#0FDH;输入密码错误,则输出密码错误信号
INCR4;密码错误次数寄存器R4加1
CJNER4,#03H,AGAIN;判断是否为3次密码输入错误,不是则转
;AGAIN处
ALARM:
MOVP1,#0F9H;3次密码输入错误,则输出报警信号
LJMP$;动态停止
AGAIN:
MOVR0,#1FH;密码输入错误不到3次,则重新输入密码
MOVR3,#00H;R0重新赋值为1FH,R3清0
RET
COUNT:
INCR3;输入密码位数寄存器R3加1
RET
ORG0200H;按键延时子程序
DEL12:
MOVR6,#1EH
DEL2:
MOVR7,#64H
DEL1:
DJNZR7,DEL1
DJNZR6,DEL2
RET;开锁延时子程序
ORG0250H
LUCKDEL:
MOVR5,#06H
K1:
MOVR6,#0FAH
K2:
MOVR7,#0FAH
K3:
NOP
NOP
DJNZR7,K3
DJNZR6,K2
DJNZR5,K1
RET
TAB:
DB01H,03H,05H,07H,02H,04H,06H,08H;设定密码数据表
RET
END
四:
心得体会
通过这次课程设计,我深刻体会到了自己单片机知识的贫乏,编程时总是出现错误,导致我需要不断的翻书、查资料。
在设计中有很多问题都是因为理论知识不够扎实。
在有些管脚的置0置1上,概念的模糊,这使我明白要把所学到的理论知识转化为实践需要一段努力学习的过程。
此次课程设计之前,我了解了相关的单片机理论知识的基础上通过自己动手实践,理论与实践的结合使得对知识的理解更加深刻,并且慢慢学会培养自己的创新精神,感觉很有成就感,但同时我也认识到自己在单片机方面还有很多不足。
这使我明白,在做一个设计的过程中,一定要注意理论和实践的同步进行。
光有理论知识是远远不够的,要用实践去检验理论,用理论指导实践。
因为能力有限,没有充分利用所学的理论知识。
如果适当的对该设计增加功能,并对程序进行改进,就可以既充分利用资源,还可以充分节约资源,更加适应市场的需求。
五:
参考文件
《单片机应用技术》李秀忠编著;中国劳动社会出版社。
\
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电子密码锁 单片机 电子 密码锁