如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
目录1系统总体方案设计11.1系统方案11.2系统设计思路:12硬件电路设计22.1键盘电路设计22.2LED显示电路32.3解锁电路52.4报警电路53软件设计63.1软件设计思路63.2每个子程序的设计64系统调试104.1系统硬件连接示意图:104.2部分系统测试115经验12参考文献13发送13附录131系统总体方案设计1.1系统方案的选择综合其他方案的优缺点,采用基于AT89S51的单片机控制方案。凭借单片机灵活的编程设计和丰富的IO口,以及其控制的精确性,不仅可以实现基本的密码锁功能,而且还增加了功率调节和存储、声光提示等功能。遥控。原理如图1-1所示。matrixWronginputlockingkeyboardkeyboardcontrol89S51DelayalarmcontrolcircuitSingle-ChipAT02power-downMicrocomputerUnlockingcontrolcircuitstorage24CSerialportdisplayIndicatingcircuit图1-1单片机控制方案该方案活动空间大,既能实现所需功能,又能在很大程度上扩展功能,还可以方便地进行系统升级。本方案采用以89S51为核心的单片机控制方案。凭借单片机灵活的编程设计和丰富的I/O端口,以及其控制的准确性,实现了基本的密码锁功能。1.2系统设计思路:1.使用矩形键盘进行密码输入,包括数字键和功能键。2.LED数码管显示输入密码,74JS247用于驱动数码管点亮并显示数字,74LS138用于控制各个位置的显示及时显示。3.将解锁电路更换为LED,表示解锁。4、密码输入错误次数超过3次,系统会报警。5、上电后显示屏显示“”,原密码为“123456”。只需输入此密码即可开门。这样可以防止断电后再次调用时没有密码可用。000000”6.按“C”键清除显示为“.000000”7.要重置密码,首先在记录“*”上输入密码。8.输入密码,然后按“D”键。如果密码与设置的密码相同,开门。否则,显示清零为“00000”。9、软件设计主要包括键盘读键、LED显示程序、密码比对程序和报警程序。2硬件电路设计2.1键盘电路设计采用矩阵键盘,因此本设计采用行列式键盘,同时可以减少键盘与单片机接口时占用的I/O线数。这种方法通常在键数较多的情况下采用。原理如图2.1所示。.图2.1矩阵键盘每条横线(行线)和竖线(列线)的交点不是相连的,而是通过一个键相连。采用这种行列式矩阵结构,只需要N行行和M列行就可以组成一个N×M键的键盘。在这种行列式矩阵键盘和非键盘编码的单片机系统中,键盘处理程序首先执行等待按键并确认按键是否被按下的程序段。确认按下某个键后,下一步就是确定按下了哪个键。通常有两种方式来识别key:一种是常用的逐行扫描查询法;另一种是更快的线反转方法。对比图2.1所示的4×4键盘,说明换行的工作原理。首先识别键盘是否有按键按下,单片机I/O口向键盘发送全扫描字,然后读取线路状态进行判断。方法是:将全扫描字00H输出到行线,将所有列线设置为低电平,然后将列线的电平状态读入累加器A中为低电平,使所有行行不为1。判断键盘上哪个键被按下是通过将列线一一设置为低电平,然后检查各行的输入状态来实现的。方法是:依次向列线发送低电平,然后检查所有行和行的状态。如果全为1,则按下的键不在此列;如果不是全1,则按下的键一定在这一列,并且是与零平行线交点处的键。具体功能设计如表2.1所示:表2.1主要功能按键键名可以说清楚1-9键数字钥匙加密代码*钥匙重新加密密钥设置新的密码D键固定键密集代码#钥匙清除键将显示清零。2.2LED显示电路本系统设计的显示电路是为了提示用户而设置的。本系统的显示采用串行显示方式。单片机只用一个串口,用74LS247驱动数码管点亮显示数字,用74LS138控制位选择信号就可以完成单片机的显示功能。显示电路的电路原理图如图2.2所示。用P0.0—P0.3连接74LS247的A、B、C、D四个端口,74LS247的输出端口接LED的七段显示;而P0.4—P0.6接74LS138的A、B、C三个输入口,74LS138的输出口接LED的位显示。数字和位控制由软件实现。图2.2LED显示电路74LS247可以用来控制输出什么字体。74LS247的逻辑功能表如表2.2所示:表2.274LS247逻辑功能表74LS138控制位用