六位数电子锁电路设计毕业论文

上传人:汽*** 文档编号:470047729 上传时间:2023-03-15 格式:DOC 页数:18 大小:1.39MB
返回 下载 相关 举报
六位数电子锁电路设计毕业论文_第1页
第1页 / 共18页
六位数电子锁电路设计毕业论文_第2页
第2页 / 共18页
六位数电子锁电路设计毕业论文_第3页
第3页 / 共18页
六位数电子锁电路设计毕业论文_第4页
第4页 / 共18页
六位数电子锁电路设计毕业论文_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《六位数电子锁电路设计毕业论文》由会员分享,可在线阅读,更多相关《六位数电子锁电路设计毕业论文(18页珍藏版)》请在金锄头文库上搜索。

1、 单片机课程设计论文学校:西安科技大学学院:电气与控制工程学院专业:微电子学姓名:朱善旭 1206080205 王敏敏 1206080202 王会登 1206080216 王 磊 1206080124六位数电子锁电路设计摘要: 电子密码锁在生活中十分常见,广泛运用于各种控制电路中。电子密码锁应该具有输入功能和比较功能,同时具有控制功能。在本次设计中,密码锁的输入设备为4*3矩阵键盘,其中包括09数字键,确认、清除功能键。比较功能在单片机内部程序中实现,将输入数字与预设密码比较,相同则触发控制功能,比如设备的开启,不同则清零,用户需要重新输入。为了用户方便使用,在输入时需要将所输入数字显示出来,

2、所以利用数码管做显示设备。关键词:密码锁,矩阵键盘,扫描,数码管 1设计任务分析1.1原理电子锁,就是利用一个固定的或人为设定的电子号码来控制锁的开启状态的电路。我们常见的电子锁,如密码箱、保险柜、密码门等,都是在使用者输入的号码与之前设定的号码顺序及内容均相同时,电路控制的锁或者门等就会开启。由于电子锁要求的输出数据为数字0-9,同时为了方便使用者的输入、修改和确定,还应该有输入的清除按键和确认按键。1.1.1键盘控制的一般方法在单片机的输入设备中,键盘是最为常见的一种。它有多种形式,有独立按键式、矩阵键盘式等。矩阵按键式键盘就是用行列矩阵的方式来构成键盘的一种控制方式。行线与列线分别可由单

3、片机的控制I/O引脚和电源的Vcc(也可是GND)来连接,行线与列线的交汇点上连接有按键。当按键有动作时,相应点上行与列的电平就导通。若此时用单片机程序来检测,就可发现相应引脚上的电平发生了变化。对于键盘的控制是有多种方法的。(1) 独立式按键这种方式是采用JNB或JB指令来实现检测的目的。(2) 键盘扫描法这种方式是将行线与列线分别与单片机的引脚相连,然后在初始程序中令其中的行(列)所在的引脚电平为低电平。之后,再不断地同时检测行与列所对应的引脚状态。当某个位置有按键动作时,相应行与列的引脚状态就会发生变化,系统从而获知有按键的动作。这种方式有时也可进行一定的变化,比如,用行(或列)线通过限

4、流电阻与电源正极或负极相连,然后将列(或行)线与单片机的引脚相连,这样,在程序中就只需检测列线上的电平状态即可。(3) 键盘中断法这种方法是利用中断来使单片机系统响应按键的动作,从而使系统在无按键动作时,可以进行其他的操作。比如四根列线与电源的正极和单片机I/O引脚相连并通过一个与门连接到单片机INT0中断引脚,行线与单片机I/O引脚相连,在初始程序中使行线连接引脚为低电平。这样,当某一位置有按键动作时,相应列线上就会出现低电平,从而使的INT0引脚上有低电平输入,这就可以触发INT0中断。然后系统就可以在中断服务子程序中去具体检测是哪一根行列点上的按键有动作了。在本次设计中,选用键盘扫描法来

5、控制键盘。1.1.2键盘扫描的一般设置步骤当需要的按键数量较多时,通常使用矩阵式键盘来作为输入的按键方式。同时,在功能比较简单的系统中,用处都是采用键盘扫描的方式来控制键盘。例如一个3*3矩阵键盘,使用P1.2P1.0和P1.7P1.5分别控制键盘的行线和列线。可以先编写一个键盘码的数据表TABLE,这个表的数据与图中标明的按键所代表的含义应当相同。比如图中,9个按键分别指代19的数字键。因此,可以令TABLE表中的数据为01H,02H,03H,04H,05H,06H,07H,08H,09H。然后,在程序的初始化中,可以定义P1端口引脚的状态初值,其中P1.2=0。之后,令P1数据依次左移,以

6、便检测到列线P1.7-P1.5的状态。列线状态检测完毕后,再将P1数据依次右移来检测行线上的P1.2-P1.0的状态。当检测到有按键信息时,就利用计数指针到TABLE表中去取数据码,从而指示程序做相应的操作。当然,键盘扫描的方法和应用步骤实际上还有很多种,在此不一一例举。1.2具体任务分析本次设计实验就是要设计一个6位数的电子号码锁。要求有0-9数字按键、清除数字的按键“#”和输入完成后的确认按键“*”。同时正确的6位数电子密码是在程序中就已经指定好了的,在程序执行时,只需去比较即可。另外,为了简化设计,本设计中的电子密码被固定设置为161225,而且它在程序运行过程中不可被人为修改设定。各按

7、键的定义为:当按数字0-9时,数码管中应当有相应的显示,而且显示的数字应根据按键的先后在具体的位置上显示。当清除数字的按键“#”有动作时,当前数码管显示的最右边一位应当被清空不再显示数字;同时,当再有数字被输入时,之前清空的数码管上应当显示这个输入的数字。当输入完成后的确认按键“*”有动作时,所有在数码管上被显示的数字应当与系统定义的正确电子密码相比较,若完全相同,则电路控制的锁打开;若不相同,则清空数码管上显示的数字,等待重新输入数字。2电路设计根据前面的设计任务要求,电路中应当有12个按键(09数字按键、清除数字的按键“#”和输入完成后的确认按键“*”),有六位数显示的数码管、电子锁的模拟

8、应用电路等基本单元模块。电路中的按键,采用矩阵式键盘来完成设计任务。用P0.7P0.5以及P0.3P0.0分别控制键盘的行线和列线。数码管显示是运用6个七段数码管,用单片机P0端口的P1.0P1.3来显示输送的数据,用P1.4P1.6来输送控制显示位数译码的数据。电路中,P2.0接一个发光二极管,这是模拟电子号码锁的控制开启装置。当有正确的按键之后,发光二极管就会被点亮。从而可以模拟电子锁的开启。本次设计的实验电路如图2.1所示。图2.1 6位数电子锁实验电路3程序设计3.1程序流程在本次设计实验中,由于所要实现的设计功能比较简单,因此可以将主程序用于检测按键的状态以及修改对应数据寄存器值这些

9、操作。另外,还应设计按键处理子程序,显示子程序和比较子程序。首先,在按键处理子程序中,应将主程序中检测到的按键信息与数字键以及“#”和“*”两按键值比较,若是数字键,则将数字存入数据寄存单元并显示;若非数字键“#”或者“*”,则转去修改显示数据寄存器的数值或者是启动最终的比较子程序去执行。其次显示子程序中,系统应将输入到数据寄存器中的数字数据与程序中设定的密码数字逐个相比较,当比较完全一致时,就启动电子锁开启(即使P2.0输出高电平)。程序设计的流程图如图3.1所示。图3.1 6位数电子锁程序设计流程图3.2源程序清单见附录。4实验结果4.1 PROTUES仿真结果仿真开始,六个数码管显示数字

10、为0,如图4.1所示。图4.1 电路仿真结果1按键输入密码值“161225”后,数码管上显示的密码值“161225”。如图4.2所示。图4.2 电路仿真结果2密码输入完成,按“*”键开始检测。与程序中预设密码相同,P2.0输出高电平,所连发光二极管点亮。如图4.3所示。图4.3 电路仿真结果34.2实际电路实验结果 开启电源,六个数码管显示为0,如图4.4所示。图4.4 实际电路仿真结果1 输入密码161225,如图4.5所示。图4.5 实际电路仿真结果2 密码输入完成,按“*”键,P2.0所连发光二极管点亮,表示密码输入正确。如图4.6所示。图4.6 实际电路仿真结果3参考文献:1 肖婧,单

11、片机入门与趣味实验设计M.北京,北京航空航天大学出版社.2008年4月2 柴钰,单片机原理及应用M.西安,西安电子科技大学出版社.2009年2月设计心得体会两周的单片机课程设计结束了,这次课程设计让我受益匪浅。作为一名微电子学专业的大三学生,我觉得做单片机课程设计是十分有意义的,而且是十分必要的。在已度过的大学时间里,我们大多数接触的是专业课。我们在课堂上掌握的仅仅是专业课的理论知识,如何去锻炼我们的实践能力?如何把我们所学的专业基础课理论知识运用到实践中去呢?我想做类似的课程设计就为我们提供了良好的实践平台。我们做的题目是密码锁,即通过比较键盘按键与设定密码值,来确定密码是否正确,密码正确即

12、通过P2.0点亮二极管,同时将按键值显示在数码管上。实习中遇到了很多困难,程序就修改了七八次之多。起始地址要设为0000H,初始值设置的重要性以及流程方面的修正等等都进行了修改。当程序在软件上仿真正确的时候,自己兴奋的感觉是难以名状的。理想的仿真环境中程序运行成功了,但是实际中还是出了不少问题。首先,74LS47只能驱动共阳极数码管,74LS48只能驱动共阴极数码管,74LS138输出为低电平,所以如果选用74lLS138作数码管的位选,只能选用共阴极数码管以及和它配套的74LS48。然后,有的数码管亮度较低,可以采用增大那个数码管显示延时的方法增大其亮度。这次实习让我受益匪浅,无论从知识上还

13、是其他的各个方面。上课的时候的学习从来没有见过真正的单片机,只是从理论的角度去理解枯燥乏味。但在实习中见过甚至使用了单片机及其系统,能够理论联系实际的学习,开阔了眼界,提高了单片机知识的理解和水平。在这次课程设计中又让我体会到了合作与团结的力量,当遇到不会或是设计不出来的地方,我们就会在QQ群里讨论或者是同学之间相互帮助。团结就是力量,无论在现在的学习中还是在以后的工作中,团结都是至关重要的,有了团结会有更多的理念、更多的思维、更多的情感。我们通过查阅大量有关资料,并在小组中互相讨论,交流经验和自学,若遇到实在搞不明白的问题就会及时请教老师,使自己学到了不少知识,也经历了不少艰辛,但收获同样巨

14、大。通过这次课程设计我也发现了自身存在的不足之处,虽然感觉理论上已经掌握,但在运用到实践的过程中仍有意想不到的困惑,经过一番努力才得以解决。这也激发了我今后努力学习的兴趣,我想这将对我以后的学习产生积极的影响。单片机是很重要的一门课程,老师和一些工作的朋友都曾说过,如果学好一门单片机,就凭这个技术这门手艺找一个好工作也不成问题。尽管我们在课堂学到的内容很有限,但在以后的学习中单片机还需要好好的深入研究和学习,学好了单片机也就多了一项生存的本钱。最后感谢老师对我们的精心指导和帮助,感谢同学们对我的帮助。朱善旭1206080205时光飞逝,一转眼,一个学期又进尾声了,本学期的单片机综合课程设计也在

15、两周内完成了。俗话说“好的开始是成功的一半”。说起课程设计,我认为最重要的就是做好设计的预习,认真的研究老师给的题目,选一个自己有兴趣的题目。其次,对实验要一丝不苟的去想去做,因为只有都明白了,做起设计就会事半功倍,如果没弄明白,就迷迷糊糊的去选题目做设计,到头来一点收获也没有。最后,要重视程序的模块化,修改方便,也要注重程序的调试,掌握其方法。硬件的设计跟焊接都要我们自己动手去焊,软件的编程也要我们不断的调试,最终一个能完成课程设计的劳动成果出来了,很高兴它能按着设计的思想与要求运动起来。当然,这其中也有很多问题,第一、不够细心比如由于粗心大意焊错了线,由于对课本理论的不熟悉导致编程出现错误。比如,程序首地址一般应为0030H,所用地址、I/O口等初始化时一般置零等。第二,是在学习态度上,这次课设是对我的学习态度的一次检验。对于这次单片机课程设计,我的第一大心得体会就是作为一名学生,要求具备的首要素质绝对应该是严谨。我们这次课程设计

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号