• 大小: 43KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-12
  • 语言: 其他
  • 标签: 51单片机  密码锁  

资源简介

51单片机开发板 密码锁程序 具体要求里面都有 很哈珀的

资源截图

代码片段和文件信息

#include //52系列单片机头文件
#include 
#define uchar unsigned char //宏定义
#define uint unsigned int

uchar old1=1;
uchar old2=2;
uchar old3=3;
uchar old4=4;
uchar old5=5;
uchar old6=6; //原始密码
uchar new1=1;
uchar new2=2;
uchar new3=3;
uchar new4=4;
uchar new5=5;
uchar new6=6;//密码输入值
uchar a=16b=16c=16d=16e=16f=16;
uchar weikeytempysnumbeeptshigenum1suo;
uchar wrong=1;

bit allowgenggaiokwanbiretryclose;  //各个状态位

sbit dula=P2^6;
sbit wela=P2^7;
sbit beep=P2^3;

unsigned char code table[]={0x3f0x060x5b0x4f0x660x6d0x7d0x070x7f
0x6f0x770x7c0x390x5e0x790x710x000x400x38};  //编码定义



void delay(uint xms) //延时函数  
{
uint ij;
   for(i=xms;i>0;i--) //延时xms毫秒
     for(j=110;j>0;j--);
}

void display(uchar auchar buchar cuchar duchar euchar f)

   dula=0;
   P0=table[a];
   dula=1;
   dula=0;
   wela=0;
   P0=0xfe;
   wela=1;
   wela=0;
   delay(1);
  //显示函数第2位
   P0=table[b];
   dula=1;
   dula=0;
   P0=0xfd;
   wela=1;
   wela=0;
   delay(1);
  //显示函数第3位
   P0=table[c];
   dula=1;
   dula=0;
   P0=0xfb;
   wela=1;
   wela=0;
   delay(1);
  //显示函数第4位
   P0=table[d];
   dula=1;
   dula=0;
   P0=0xf7;
   wela=1;
   wela=0;
   delay(1);
  //显示函数第5位
   P0=table[e];
   dula=1;
   dula=0;
   P0=0xef;
   wela=1;
   wela=0;
   delay(1);
  //显示函数第6位
   P0=table[f];
   dula=1;
   dula=0;
   P0=0xdf;
   wela=1;
   wela=0;
   delay(1);
}


void keyscan()
{
  {
    P3=0xfe;
    temp=P3;
    temp=temp&0xf0;
    if(temp!=0xf0)
    {
      delay(10);
      if(temp!=0xf0)
      {
        temp=P3;
        switch(temp)
        {
          case 0xee:
               key=0;
   wei++;
               break;

          case 0xde:
               key=1;
   wei++;
               break;

          case 0xbe:
               key=2;
   wei++;
               break;

          case 0x7e:
               key=3;
   wei++;
               break;
         }
         while(temp!=0xf0) 
        {
           temp=P3;
           temp=temp&0xf0;
           beep=0;
         }
         beep=1;
      }
    }
    P3=0xfd;
    temp=P3;
    temp=temp&0xf0;
    if(temp!=0xf0)
    {
      delay(10);
      if(temp!=0xf0)
      {
        temp=P3;
        switch(temp)
        {
          case 0xed:
               key=4;
   wei++;
               break;

          case 0xdd:
               key=5;
   wei++;
               break;

          case 0xbd:
               key=6;
   wei++;
               break;

          case 0x7d:
               key=7;
   wei++;
               break;
         }
         while(temp!=0xf0)
         {
           temp=P3;
           temp=temp&0xf0;
           beep=0;
         }
         beep=1;
      }
      }
    P3=0xfb;
    temp=P3;
    temp=temp&0xf0;
    if(temp!=0xf0)
    {
      delay(10);
      if(temp!=0xf0)
      

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2015-08-06 11:06  密码锁\
     文件        6376  2009-05-07 14:37  密码锁\STARTUP.A51
     文件       14048  2015-08-06 11:05  密码锁\STARTUP.LST
     文件         749  2015-08-06 11:05  密码锁\STARTUP.OBJ
     文件       15654  2015-08-06 11:05  密码锁\mimasuo
     文件       18983  2015-08-06 11:05  密码锁\mimasuo.LST
     文件       21165  2015-08-06 11:05  密码锁\mimasuo.M51
     文件       18670  2015-08-06 11:05  密码锁\mimasuo.OBJ
     文件        8729  2015-08-06 11:04  密码锁\mimasuo.bak
     文件        8729  2015-08-06 11:05  密码锁\mimasuo.c
     文件        4301  2015-08-06 11:05  密码锁\mimasuo.hex
     文件          62  2015-08-06 11:05  密码锁\mimasuo.lnp
     文件         580  2015-08-06 11:06  密码锁\mimasuo.plg
     文件       60785  2015-08-06 11:06  密码锁\mimasuo.uvopt
     文件       13407  2015-08-03 09:33  密码锁\mimasuo.uvproj
     文件       61294  2015-08-04 17:24  密码锁\mimasuo_uvopt.bak
     文件           0  2015-08-03 07:21  密码锁\mimasuo_uvproj.bak
     文件       21504  2015-07-30 20:59  密码锁\密码锁设计要求.doc

评论

共有 条评论