单片机控制的密码锁设计(含电路图及源程序)

[09-11 23:01:38]   来源:http://www.88dzw.com  单片机学习   阅读:8782

文章摘要:单片机控制的密码锁设计(含电路图及源程序)单片机控制的密码锁设计。AT89S52单片机P1引脚外接独立式按键S1-S8,分别代表数字键0-5、确定键、取消键。单片机从P3.0-P3.3输出4个信号,分别为1个电磁开锁驱动信号和密码错误指示、报警输出、已开锁指示信号,分别用发光二极管L1-L4指示。P3.4接一有源蜂鸣器,用于实现提示音。基本要求:(1)初始密码为123450,输完后按确定键开锁,取消键清除所有输入,每次按键有短“滴”声按键提示音。(2)密码输入正确后,输出一个电磁锁开锁信号与已开锁信号,并发出两声短“滴”声提示。4秒后开锁信号与已开锁指示清零。(3)密码输入错误时,发出一声长“

单片机控制的密码锁设计(含电路图及源程序),标签:单片机开发,单片机原理,单片机教程,http://www.88dzw.com

单片机控制的密码锁设计(含电路图及源程序)


单片机控制的密码锁设计。AT89S52单片机P1引脚外接独立式按键S1-S8,分别代表数字键0-5、确定键、取消键。单片机从P3.0-P3.3输出4个信号,分别为1个电磁开锁驱动信号和密码错误指示、报警输出、已开锁指示信号,分别用发光二极管L1-L4指示。P3.4接一有源蜂鸣器,用于实现提示音。
基本要求:
(1)初始密码为123450,输完后按确定键开锁,取消键清除所有输入,每次按键有短“滴”声按键提示音。
(2)密码输入正确后,输出一个电磁锁开锁信号与已开锁信号,并发出两声短“滴”声提示。4秒后开锁信号与已开锁指示清零。
(3)密码输入错误时,发出一声长“滴”声错误指示提示音,并密码错误指示灯亮,三次密码错误时,发出长鸣声报警,并密码错误指示灯亮,报警指示灯亮,此后15秒内无法再次输入密码,15秒过后,清除所有报警和指示。
(4)5秒内无任何操作后,清除所有输入内容,等待下次输入。

3.3.1模块1 系统设计
(1)分析任务要求。写出系统整体设计思路
根据题目的要求,需要考虑如下几个任务:按键的输入,密码的判断,密码输入正确或错误的计时、输出信号的控制等。
 键盘的输入:由于需要输入6个数字作为密码,先要判断按键时数字键还是功能键,若判断为数字键按下,则需要将每次键盘的输入内容依次暂存在一个数组中。在每次按键输入时,需要启动定时器实现待机计时(5秒)。若5秒内没有输入内容则清除已输入的内容。
密码的判断和计时:在按下确认键之后,要将输入的内容与初始密码核对,如果密码正确,输出相应的指示,同时还要启动定时器实现4s的计时。如果密码错误,错误计数变量增1,同时输出密码指示信号,若错误次数超过3s,则输出报警等信号,同时启动定时器实现15秒的计时。
 输出信号的控制主要根据按键输入与密码的核对情况来决定。
 整体程序设计思想:
程序分为主程序和中断服务程序两个主要部分,主程序完成变量和单片机特殊功能寄存器的初始化后,进入一个循环结构。在循环中,首先判断有无按键按下,若有按键则判断是否数字键还是功能键,根据按键的情况执行相应的功能。然后根据密码是否正确的判断情况,执行相应的操作。循环中最后将需要显示的内容通过动态扫描在数码管上显示。
 中断服务程序只要实现三个状态的计时,待机时需要计时5秒,密码正确需要计时5s,密码3次输入错误需要计时15秒。当前处于何种计时,由主程序根据密码判断结果来决定。
(2)选择单片机型号和所需外围器件型号,设计单片机硬件电路原理图
 采用MCS51系列单片机At89S51作为主控制器,外围电路器件包括数码管驱动、蜂鸣器的输出驱动、独立式键盘以及发光二极管的输出等。
数码管驱动采用2个四联共阴极数码管显示,由于单片机驱动能力有限,采用74HC244作为数码管的驱动。在74HC244的7段码输出线上串联100欧姆电阻起限流作用。
蜂鸣器的驱动采用PNP三极管8550来驱动,低电平有效。
独立式按键使用上提拉电路连接,在没有键按下时,输出高电平。发光二极管串联500欧姆电阻再接到电源上,当输入为低电平时,发光二极管导通发光。
硬件电路原理图如图3-9所示。

图3-9 密码锁电路原理图
(3)分析软件任务要求,写出程序设计思路,分配单片机内部资源,画出程序流程图
  软件任务要求主要包括按键扫描、密码判断、动态扫描输入的内容、计时、指示信号输出以及蜂鸣器提示音的输出等。主程序主要完成变量与寄存器的初始化、按键的扫描与判断、密码的判断以及数码管动态扫描显示等。主程序流程图如图3-10所示。

[1] [2] [3] [4] [5] [6] [7]  下一页


Tag:单片机学习单片机开发,单片机原理,单片机教程单片机学习
分类导航
最新更新
热门排行