资源简介
使用51单片机设置的门禁系统,可以输入密码开锁,可以更改密码,也可以使用AT24C02存储密码,达到断电保护的功能

代码片段和文件信息
#include
#include
#include
//#include “IIC.h“
#include “matrix_key.h“
#include “HDG12864F1.h“
#include “Word_Code.h“
#include “Rose.h“
sbit LED = P2 ^ 2;//LED灯引脚定义
sbit BEEP = P2 ^ 3;//蜂鸣器引脚定义
unsigned char Key[] = “594200“;//初始密码
//unsigned char Buff[7] = “\0\0\0\0\0\0\0“;
unsigned int length = 0;
bit Key_Flag = 1;//按键按下标志位
bit Key_Display_Flag = 0;//密码是否显示标志
//void Write_Address_String(unsigned char address unsigned char dat[]);
//void Read_Address_String(unsigned char address unsigned char dat[]);
void Delay(unsigned int z);
void Display_First();
void Main_Key_Pro();
void External_Interrupt_Init();
void Input_Key(unsigned char Input_Buff[]);
void Alter(unsigned char Input_Buff[]);
void Log(unsigned char Key_Buff[]);
bit Check_Key(unsigned char Input_Buff1[] unsigned char Input_buff2[]);
void main()
{
LED = 0;
BEEP = 0;
P1 = 0x0F;//0000 1111
//IIC_Init();
External_Interrupt_Init();
HDG12864F1_Init();
Display_First();
while(1)
{
P1 = 0x0F;//0000 1111
if(Key_Flag == 1)
{
Key_Flag = 0;
Main_Key_Pro();
}
}
}
void Delay(unsigned int z)
{
unsigned int i j;
for(i = z; i > 0; i--)
for(j = 120; j > 0; j--);
}
void Display_First()
{
length = sizeof(Welcome) / sizeof(Welcome[0]);
HDG12864F1_Write_Char(4 3 Char_Table[10]);
HDG12864F1_Write_Char(4 4 Char_Table[10]);
HDG12864F1_Write_String(2 3 length Welcome);
HDG12864F1_Write_Char(4 13 Char_Table[10]);
HDG12864F1_Write_Char(4 14 Char_Table[10]);
}
void Main_Key_Pro()
{
switch(Matrix_Key_Scan())
{
case 0x7d://修改
Alter(Key);
break;
case 0x77:
Log(Key);
break;
}
HDG12864F1_Clear();
Display_First();
}
void External_Interrupt_Init()
{
EA = 1;
EX0 = 1;
IT0 = 1;
}
void External_Interrupt_0()interrupt 0
{
Key_Flag = 1;
}
void Input_Key(unsigned char Input_Buff[])
{
unsigned int i = 0;//记录密码输入个数
unsigned int j = 0;
while(i < 7)
{
if(i < 6)
{
switch(Matrix_Key_Scan())
{
//第一行键值码
case 0xee:
Input_Buff[i] = ‘7‘;
++i;
break;
case 0xde:
Input_Buff[i] = ‘8‘;
++i;
break;
case 0xbe:
Input_Buff[i] = ‘9‘;
++i;
break;
case 0x7e://清除
i = 0;
for(j = 0; j < 7; j++)
{
HDG12864F1_Write_Char(5 6 + j Char_Table[0]);
Input_Buff[j] = ‘\0‘;
}
break;
//第二行键值码
case 0xed:
Input_Buff[i] = ‘4‘;
++i;
break;
case 0xdd:
Input_Buff[i] = ‘5‘;
++i;
bre
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 24630 2018-05-30 11:56 20180530115050.bmp
文件 32094 2018-07-08 12:49 Backup Of Experiment_7.pdsbak
文件 7559 2018-06-27 19:58 Experiment_7.c
文件 32094 2018-07-08 12:49 Experiment_7.pdsprj
文件 3100 2018-07-08 14:52 Experiment_7.pdsprj.LAPTOP-9QG1FV7R.Yu.workspace
文件 86695 2018-06-27 19:59 Experiment_7.uvgui.Yu
文件 5943 2018-05-10 22:18 Experiment_7.uvopt
文件 13893 2018-05-28 17:10 Experiment_7.uvproj
文件 4874 2018-05-30 12:08 HDG12864F1.h
文件 2234 2018-05-09 10:57 IIC.h
文件 32100 2018-05-28 16:39 Last Loaded Experiment_7.pdsbak
目录 0 2018-10-08 22:06 Listings\
文件 14767 2018-05-30 12:08 Listings\Experiment_7.lst
文件 29231 2018-05-30 12:08 Listings\Experiment_7.m51
文件 913 2018-05-06 12:31 matrix_key.h
目录 0 2018-10-08 22:06 ob
文件 27876 2018-05-30 12:08 ob
文件 1129 2018-05-30 12:08 ob
文件 21697 2018-05-30 12:08 ob
文件 97 2018-05-30 12:08 ob
文件 33516 2018-05-30 12:08 ob
文件 6581 2018-05-30 12:07 Rose.h
文件 24841 2018-05-09 08:39 Word_Code.h
- 上一篇:黑白点匹配问题代码
- 下一篇:铁塔公司选聘试题综合版含答案
相关资源
- proteus仿真 AT89C51输出各种波形
- 基于AT89C51的数据采集系统设计新方法
- 基于单片机交通灯设计
- AT89C51+ADC0808 PROTEUS仿真
- 基于AT89C51的十字路口交通灯设计pro
- at89c51单片机外文翻译
- 基于AT89C51单片机信号发生器设计.pd
- 基于AT89C51单片机的多功能函数信号发
- 基于单片机AT89C51控制的热水器设计
- 基于AT89C51单片机电烤箱的温度控制系
- DS18B20 AT89C51 单片机 protus keil 温度传感
- AT89C51_datasheet
- 基于AT89C51单片机的智能饮水机控制系
- 基于at89c51单片机的门禁系统
- 基于AT89C51单片机的水塔智能水位控制
- AT89C51单片机程序以及原理图
- 电子时钟/万年历设计报告 基于AT89c
- 基于AT89C51单片机的水位检测计的设计
- 基于AT89C51单片机LED显示控制系统的设
- 基于AT89C51单片机的步进电机控制及驱
- 基于AT89C51单片机控制的双闭环直流调
- 基于AT89C51单片机红外遥控系统毕业设
- AT89C51单片机波形发生器 附加论文
- 基于单片机的温度控制系统设计毕业
- 基于AT89C51的温度报警器
- 电赛历年赛题+优秀作品+备赛方案
- 甲醛浓度检测设计
- AT89C51单片机常用封装函数.rar
- 单片机课程设计 短跑计时器的设计
- 毕业设计(论文)-基于AT89C51单片机的
评论
共有 条评论