【E348】基于51单片机的一个智能密码锁设计

2021-08-18 21:21:36      索炜达电子      385     

项目编号:E348

文件大小:14K

源码说明:带中文注释

开发环境:C编译器

简要概述:

基本功能介绍

本密码锁分为门外门内两部分。

(1). 门内用户权限

  1. 采用红外遥控器输入,均设8位密码,0~9的数字密码有效,门内用户可以输入密码开锁,输入密码错误小于三次时,红灯闪烁两秒,当密码输入三次错误时,蜂鸣器报警5s,密码锁锁住5s,此时门内用户无法输入密码。

  2. 当用户输对密码后,(只有输入密码正确后才有此权限)可以按(0x46)键设置新密码,当输入的密码够8位时按下(EQ)键再次确认输入的新密码,若两次输入的密码相同则新密码设置成功,否则失败。而且当用户输入的新密码不够8位就按下(EQ)键时,系统直接提示新密码设置错误。(成功与失败都是绿灯亮,蜂鸣器报警)

  3. 门内用户还有时间显示权限,用户按下(0x47)键时,显示屏显示当前的时间。

  4. 门内用户还支持一键开锁功能,当用户输入(0x45)键时系统自动开锁,5s后恢复原始状态。

(2). 门外用户权限

  1. 门外用户的权限相对简单,利用矩阵键盘输入8位密码,第11个键表示清除之前输入的一位密码,若一位密码都没输入就按下此键,系统提示用户还没有输入密码;第12个键表示密码输入完成,当用户输入的密码位数不够就按下此键时,系统提示用户输入的密码位数不够。

提示: 上述的0x47、0x45等值请自行对应红外遥控器的键值

2. 所需硬件资源

  1. 安装Keil C51

  2. STC12C5A60S2 单片机

  3. EEPROM(AT24C02 2K容量即可)

  4. 红外遥控器以及传感器

  5. 蜂鸣器、LED灯若干

  6. LCD1602液晶显示屏

  7. DS1302时钟芯片

  8. 制作矩阵键盘独立按键若干

目录│文件列表:

 └ Smart-Password-Lock

    ├ HEADER

    │  │ AT24C02.h

    │  │ Base.h

    │  │ DS1302.h

    │  │ Interrupt.h

    │  │ Keyboard.h

    │  │ LCD1602.h

    │  └ LedAndBuzzer.h

    ├ MAIN

    │  └ main.c

    ├ OUTPUT

    │  │ At24c02.lst

    │  │ DS1302.lst

    │  │ Interrupt.lst

    │  │ Keyboard.lst

    │  │ LCD1602.lst

    │  │ LedAndBuzzer.lst

    │  │ main.lst

    │  │ Password

    │  │ Password.build_log.htm

    │  │ Password.lnp

    │  │ Password.M51

    │  │ Password.plg

    │  │ Password.uvgui.TeslaHua

    │  │ Password.uvopt

    │  │ Password.uvproj

    │  │ Password_uvopt.bak

    │  └ Password_uvproj.bak

    └ SOURCE

       │ At24c02.c

       │ DS1302.c

       │ Interrupt.c

       │ Keyboard.c

       │ LCD1602.c

       └ LedAndBuzzer.c

TAG智能密码锁设计
  • 7 次
  • 1 分