单片机应用课程设计密码锁设计说明书.doc

上传人:laozhun 文档编号:4147358 上传时间:2023-04-07 格式:DOC 页数:20 大小:4.94MB
返回 下载 相关 举报
单片机应用课程设计密码锁设计说明书.doc_第1页
第1页 / 共20页
单片机应用课程设计密码锁设计说明书.doc_第2页
第2页 / 共20页
单片机应用课程设计密码锁设计说明书.doc_第3页
第3页 / 共20页
单片机应用课程设计密码锁设计说明书.doc_第4页
第4页 / 共20页
单片机应用课程设计密码锁设计说明书.doc_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《单片机应用课程设计密码锁设计说明书.doc》由会员分享,可在线阅读,更多相关《单片机应用课程设计密码锁设计说明书.doc(20页珍藏版)》请在三一办公上搜索。

1、 重庆邮电大学单片机应用课程设计2013-2014(1)课设题目: 单片机密码锁 指导教师: 电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。它的种类很多,有简易的电路产品,也有基于芯片的性价比较高的产品。现在应用较广的电子密码锁是以芯片为核心,通过编程来实现的。本文以SST89E51单片机为核心器件,结合按键电路、LED数码管显示电路、报警指示电路和开锁指示电路,利用单片机灵活的编程设计和丰富的I/O端口,及其控制的准确性通过软件程序来控制整个系统实现电子密码锁的基本功能,其主要具有如下功能:(1) 使用LED来显示密码输入的相关信息

2、;(2) 可以设置4位数字(09)密码;(3) 内定的数字密码为“1234”;(4) 密码输入正确,蜂鸣器鸣叫一声,然后4个二极管全亮,表示进入系统;(5) 当密码错误时LED显示“CUO”,蜂鸣器报警1.2s。此外还拓展了以下功能:(1) 开机时LED显示“HELLO”字样;(2) 增加了语音功能,按键时发出声音,4个二极管全亮提示;(3) 锁定功能,密码错误3次,系统锁定,灯闪烁报警,蜂鸣器鸣叫;(4) 密码输入正确及密码错误3次,蜂鸣器发出不同的声音。1. 系统的主要设计和主要元器件介绍1.1 系统总设计结构图数码管及LED灯显示电路AT89C51单片机键盘输入电路报警电路(蜂鸣器提示电

3、路)开锁提示电路图1 单片机控制密码锁的系统原理框图图2 单片机控制密码锁总电路图1.2 系统硬件设计1.2.1 报警电路报警电路由蜂鸣器、PNP三极管和单片机组成。图3 报警电路1.2.2 4*4矩阵键盘输入电路键盘是系统中的手动控制部分,所以键盘的设计就显得尤为的重要。每一条水平(行线)与垂直线(列线)的交叉处不相通,而是通过一个按键来连通,利用这种行列式矩阵结构只需要M条行线和N条列线,即可组成具有MN个按键的键盘。由于本设计中要求使用16个按键输入,为减少键盘与单片接口时所占用的I/O线的数目,故使用矩阵键盘。键盘扫描采用行扫描法,即依次置行线中的每一行为低电平,其余均为高电平,扫描列

4、线电平状态,为低电平即表示该键按下。图4 矩阵键盘原理图 图5 键盘实物图具体的功能设计如表1 所示:按键键名功能说明K0-K9键数字键输入密码KA键清除键清除当前键入的数据KB键修改密码键在输入正确密码后按下,可修改密码KC键退出系统键密码输入正确后退出系统KD键退格键删除前一位键入KE键确认键确认输入的数据RET键断电键死机、锁定时按键断电 表1 按键说明 操作说明:密码锁初始密码为:1234l 开锁:连上电脑程序之后,系统出现欢迎界面,可以看到LED显示HELLO。程序自动调入初始密码,按数字键输入密码,然后按“KE”(确认)键,此时锁会打开,可以看到4个二级管发亮,蜂鸣器一直鸣叫。l

5、退出并关锁:按下“KC”(退出系统)键,此时锁关闭,所有输入清除,继电器关闭,灯暗。l 修改密码:在输入正确密码下,按下“KB”(修改密码)键,此时可以输入新密码,然后按下确认键。l 报警并锁定键盘:当1次输入密码错误后,LED显示“CUO”字样,蜂鸣器发出短警报。当连续3次输入密码错误后,LED显示“ERROR”字样,系统锁定键盘,二极管闪烁,蜂鸣器发出长警报,系统锁定。1.2.3 显示电路显示是系统的输出部分,用于观察当前的输入状态。显示电路采用LED数码管对位码进行驱动。其实际上是由七个发光管组成8字形构成的,加上小数点就是8个。发光二极管的阳极连接到一起连接到电源正极的称为共阳数码管,

6、发光二极管的阴极连接到一起连接到电源负极的称为共阴数码管。本次实验采用的是共阴数码管。 图6 共阴数码管显示方式有静态显示和动态显示两种显示方式。动态显示占用口线数目较少,适合用在显示位数较多的场合,但显示位数的增多,将占用大量的CPU时间。 图7 四位数码管1.2.4 开锁电路开锁电路以蜂鸣器的长鸣以及发光二极管全亮提示开锁,以继电器的动作来模拟锁的开闭,。通过单片机送给开锁执行机构,电路驱动继电器吸合,从而达到开锁的目的。当用户输入的密码正确时,单片机便输出开门信号,送到继电器驱动电路,然后驱动继电器常开触点闭合,达到开门的目的。本次设计中,继电器选用固态继电器,信息通过数码管显示,并利用

7、蜂鸣器和发光二极管声光指示。四盏二极管长亮,蜂鸣器长鸣,表示开锁。 图8 继电器控制电路开机 LED显示“HELLO”输入密码按确认键确认输入N输入密码正确?报警模块 Y返回开锁成功图9 开锁程序流程图1.3 元器件采购原件名称备注学习板2个三极管3个蜂鸣器2个电阻1K欧2个,100欧2个,5.1K欧3个,610欧3个继电器4个杜邦线若干排针1排表2 采购清单1.4 电路焊接1.4.1 焊接所需工具工具名称数量焊烙铁1个焊丝若干万用表1个表3 焊接工具1.4.2 实物图 图10 电路板正面实物图 图11 电路板背面实物图 图12 电路板正面实物图 图13 电路板背面实物图2. 系统软件设计2.

8、1 欢迎界面模块代码如下:void hello_() for(j=0;j300;j+) for(i=0;i8;i+) P0=huanyingi; segce=1; segce=0; P0=digi; digce=1; digce=0; delay(1); 2.2输入密码错误显示模块代码如下:void miss_()P2_0=0x0; for(j=0;j300;j+) for(i=0;i4;i+) P0=missi; segce=1; segce=0; P0=digi; digce=1; digce=0; delay(1); P2_0=1; 2.3按键扫描模块代码如下:void keyscan(

9、unsigned int x)/键盘扫描 unsigned char temp1,temp2; P0=0; segce=1; segce=0; P0=digx; digce=1; digce=0;/ 拉低第x行 keyce=0; /开启按键使能 temp1=P0; /读P0口 temp1=temp1&0x0f; /提取低四位,是哪一行 if(temp1!=0x0f) /判断按键是否按下 delay(12); /延时消抖 temp2=P0; temp2=temp2&0x0f; if(temp1=temp2) switch(temp2) case 0x0e: /键盘第一列 if(x!=3) key

10、=3*(x+1)-(3-x); else key=numcount; break; case 0x0d:/键盘第二列 if(x!=3) key=3*(x+1)-(3-x)+1; else if(count!=0) count-;else count=-1;numcount+1=0; break; case 0x0b: /键盘第三列 if(x=0|x=1) key=3*(x+1)-(3-x)+2; else if(x=2) clear();key=0; else yanzheng_mima();if(1=change) change=0; for(x=0;x4;x+) mimax=numx; c

11、lear(); break;if(0=right) miss_(); wrong+; fault=1; count=-1; if(1=right&change!=1) right=0; check=1; key=0; break; case 0x07:/键盘第四列 if(x=0|x=1) key=3*(x+1)-(3-x)+3; else if(x=2) yanzheng_mima();if(1=right) change=1; key=0; else key=numcount; clear(); else key=numcount; break; default:break; if(x!=3

12、) count+; if(4=count) count=0; numcount=key; while(temp2!=0x0f)/判断按键是否松开 temp2=P0;temp2=temp2&0x0f;P2_0=0;ledce=0;/此处三行可使每按一下同时亮四盏灯P0=0xf0;ledce=1; P2_0=1; keyce=1;2.4数码管显示模块代码如下:void display() /显示函数 if(0=check|3=wrong)&count!=-1) for(n=0;n=count;n+) P0=dign;digce=1;digce=0;P0=segnumn;/每按一次count计数一次

13、,也就是说,每按一个数显示一个,在错误的情况显示特定的示数segce=1;segce=0;delay(1); 3. 测试方案与测试结果3.1 测试方案及优化最先的设计是密码输入正确与密码输入错误时,LED显示的是闪烁花纹。开锁状态下蜂鸣器长鸣,将设计好的电路在电脑上经过仿真,测试通过之后,在硬件上进行测试,发现效果不理想。最终改为密码输入正确时,二极管长亮,蜂鸣器长鸣;密码输入错误时,LED显示字符“CUO”,蜂鸣器短暂报警。3.2 结果的完整性以及测试结果分析以下是在硬件上进行仿真的实物图: 图14 系统欢迎界面图15 输入密码界面图16 密码错误界面图17 系统锁定界面图18 输入正确密码

14、 图19 密码通过界面图20 按键后二极管闪亮4. 总结 对于每一个小组成员,我们都应明确他所善长和能胜任的方面,并且每一成员都应自发地承接自己所擅长的工作,遇到问题时要与大家一起商量讨论,找出切实可行的方案,这样才能发挥每一个成员的作用,发回出小组真正的能力,更好的完成课题。我们小组在本此课题中正是这样做的。我们首先共同商讨,根据小组成员能力和一些技术上的问题,发挥自己的创新意识和对现实的应用价值,一起确定了“单片机密码锁”这一课题的实施步骤,进而,一起确定了大体思路。小组成员根据自己能力提出自己想成接的任务,最后再根据实际情况,大家一起均衡分配工作任务。并在各自完成任务的同时,周期地一起讨论课程的进程,并对遇到的一些问题,提出来一起解决,这样我们小组成员可以对整个项目有一个全面的了解,这倒自己下一步该如何做,最重要的是解决遇到的问题,不致因一个小方面的问题而使整个项目无法完成,与此同时还要善于与其他小组交流,并一起对所交流问题一起研讨。这样才能从中找出最好的方法。 这就是我们小组在本次课题中的基本过程,虽然我们遇到了很多问题和困难,但我们合作得很愉快,很团结,直到项目完全结束。 最后,也是最重要的一点,通过这次课题,我们学到了很多有关单片机方面的知识,也对单片机有了更深入的了解,这使我们受益匪浅。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号