• 大小: 78.49MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-02-28
  • 语言: 其他
  • 标签: 密码锁  C语言  

资源简介

里面含完整参考论文,电路设计图等多个文件。本设计具有设置、修改六位用户密码、超次报警、超次锁定、密码错误报警等功能(本设计由P0口控制LCD显示,密码正确显示password ok! 密码错误显示password error!超过三次输入错误自动锁定。

资源截图

代码片段和文件信息

//包含头文件
#include 
#include
//宏定义
#define LCM_Data  P0   //将P0口定义为LCM_Data
#define uchar unsigned char 
#define uint  unsigned int
#define w 6 //定义密码位数
//1602的控制脚
sbit lcd1602_rs=P2^7;
sbit lcd1602_rw=P2^6;
sbit lcd1602_en=P2^5;

sbit Scl=P3^4; //24C02串行时钟
sbit Sda=P3^5; //24C02串行数据

sbit ALAM = P2^1; //报警
sbit KEY = P3^6; //开锁

sbit open_led=P2^2; //开锁指示灯(选配)

bit  operation=0; //操作标志位
bit  pass=0; //密码正确标志
bit  ReInputEn=0; //重置输入允许标志
bit  s3_keydown=0; //3秒按键标志位
bit  key_disable=0; //锁定键盘标志

unsigned char countt0second; //t0中断计数器秒计数器

void Delay5Ms(void); //声明延时函数

unsigned char code a[]={0xFE0xFD0xFB0xF7};  //控盘扫描控制表
//液晶显示数据数组
unsigned char code start_line[] = {“password:       “};
unsigned char code name[]    = { “===Coded Lock===“}; //显示名称
unsigned char code Correct[]  = {“     correct    “}; //输入正确
unsigned char code Error[]    = {“      error     “};   //输入错误
unsigned char code codepass[] = {“      pass      “}; 
unsigned char code LockOpen[] = {“      open      “}; //OPEN
unsigned char code SetNew[]  = {“SetNewWordEnable“};
unsigned char code Input[]    = {“input:          “}; //INPUT
unsigned char code ResetOK[]  = {“ResetPasswordOK “};
unsigned char code initword[] = {“Init password...“};
unsigned char code Er_try[] = {“errortry again!“};
unsigned char code again[] = {“input again     “};

unsigned char InputData[6]; //输入密码暂存区
unsigned char CurrentPassword[6]={131420};  //管理员密码(只可在程序中修改)
unsigned char TempPassword[6];
unsigned char N=0; //密码输入位数记数
unsigned char ErrorCont; //错误次数计数
unsigned char CorrectCont; //正确输入计数
unsigned char ReInputCont;  //重新输入计数
unsigned char code initpassword[6]={000000}; //输入管理员密码后将密码初始为000000


//=====================5ms延时==============================
void Delay5Ms(void)
{
unsigned int TempCyc = 5552;
while(TempCyc--);
}

//===================400ms延时==============================
void Delay400Ms(void)
{
 unsigned char TempCycA = 5;
 unsigned int TempCycB;
 while(TempCycA--)
 {
  TempCycB=7269;
  while(TempCycB--);
 }
}

//=============================================================================================
//================================24C02========================================================
//=============================================================================================

void mDelay(uint t) //延时

uchar i;
    while(t--)
    {
    for(i=0;i<125;i++)
    {;}
    }
}
   

void Nop(void)   //空操作
{
  _nop_();   //仅作延时用一条语句大约1us
  _nop_();
  _nop_();
  _nop_();
}

/*****24c02程序参照24c02时序图*****/
/*起始条件*/

void Start(void)
{
  Sda=1;
  Scl=1;
  Nop();
  Sda=0;
  Nop();
}


 /*停止条件*/
void Stop(void)
{
  Sda=0;
  Scl=1;
  Nop();
  Sda=1;
  Nop();
}

/*应答位*/
void Ack(void)
{
Sda=0;
Nop();
Scl=1;
Nop();
Scl=0;
}

/*反向应答位*/
void NoAck(void)
{
  Sda=1;
  Nop();

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2014-09-13 16:15  1-密码锁程序+注释\
     文件        9360  2014-06-10 22:53  1-密码锁程序+注释\mimasuo
     文件       50538  2014-06-10 22:53  1-密码锁程序+注释\mimasuo.LST
     文件       41560  2014-06-10 22:53  1-密码锁程序+注释\mimasuo.M51
     文件       15035  2014-06-10 22:53  1-密码锁程序+注释\mimasuo.OBJ
     文件        2096  2014-04-09 23:59  1-密码锁程序+注释\mimasuo.Uv2.bak
     文件       17036  2014-04-09 23:59  1-密码锁程序+注释\mimasuo.bak
     文件       19540  2014-06-10 22:53  1-密码锁程序+注释\mimasuo.c
     文件        6781  2014-06-10 22:53  1-密码锁程序+注释\mimasuo.hex
     文件          46  2014-06-10 22:53  1-密码锁程序+注释\mimasuo.lnp
     文件        1012  2014-05-29 12:26  1-密码锁程序+注释\mimasuo.opt.bak
     文件         179  2014-09-13 16:04  1-密码锁程序+注释\mimasuo.plg
     文件       55832  2014-09-13 16:15  1-密码锁程序+注释\mimasuo.uvopt
     文件       13190  2014-05-29 12:26  1-密码锁程序+注释\mimasuo.uvproj
     文件        1010  2014-05-28 23:25  1-密码锁程序+注释\mimasuo_Opt.Bak
     文件        1658  2014-04-09 23:59  1-密码锁程序+注释\mimasuo_Uv2.Bak
     文件       55832  2014-07-07 17:00  1-密码锁程序+注释\mimasuo_uvopt.bak
     文件       94208  2014-04-09 23:59  1-密码锁程序+注释\程序.doc
     目录           0  2014-11-13 12:43  10-开发资料\
     目录           0  2014-06-02 15:37  10-开发资料\1602资料\
     文件      262017  2014-04-09 23:59  10-开发资料\1602资料\1602液晶说明.pdf
     文件      268206  2014-04-09 23:59  10-开发资料\1602资料\1602液晶资料[1].pdf
     文件     1205196  2014-04-10 00:00  10-开发资料\1602资料\EN_TC1602.pdf
     文件     1347951  2014-04-10 00:00  10-开发资料\1602资料\字符手册.pdf
     文件      577648  2014-05-26 22:22  10-开发资料\24c02.pdf
     文件      588052  2014-04-09 23:59  10-开发资料\AT24C0124C256中文资料.pdf
     文件     5226818  2014-05-26 21:28  10-开发资料\AT89C51.pdf
     文件     1581040  2014-05-26 21:29  10-开发资料\AT89S51.doc
     文件       52224  2014-05-26 23:08  10-开发资料\AT89S52的中文资料.doc
     文件     2655200  2014-04-10 00:00  10-开发资料\STC89C51.pdf
     文件     1598470  2014-04-10 00:00  10-开发资料\STC89C51应用介绍.pdf
............此处省略186个文件信息

评论

共有 条评论