• 回答数

    5

  • 浏览数

    88

定州人民
首页 > 期刊论文 > 基于单片机的电子密码锁毕业论文

5个回答 默认排序
  • 默认排序
  • 按时间排序

济南别墅装修

已采纳

哈哈。快点回答吧。好几天了

358 评论

疯哥觅食

程序设计内容

(1). 密码的设定,在此程序中密码是固定在程序存储器ROM中,假设预设的密码为“12345”共5位密码。

(2). 密码的输入问题:  由于采用两个按键来完成密码的输入,那么其中一个按键为功能键,另一个按键为数字键。在输入过程中,首先输入密码的长度,接着根据密码的长度输入密码的位数,直到所有长度的密码都已经输入完毕;或者输入确认功能键之后,才能完成密码的输入过程。进入密码的判断比较处理状态并给出相应的处理过程。

(3).按键禁止功能:初始化时,是允许按键输入密码,当有按键按下并开始进入按键识别状态时,按键禁止功能被激活,但启动的状态在3次密码输入不正确的情况下发生的。

C语言源程序

#include unsigned char code ps[]={1,2,3,4,5};

unsigned char code dispcode[]={0x3f,0x06,0x5b,0x4f,0x66,                               

0x6d,0x7d,0x07,0x7f,0x6f,0x00,0x40};

unsigned char pslen=9; unsigned char templen;

unsigned char digit; unsigned char funcount;

unsigned char digitcount;

unsigned char psbuf[9];

bit cmpflag;

bit hibitflag;

bit errorflag;

bit rightflag;

unsigned int second3;

unsigned int aa;

unsigned int bb;

bit alarmflag;

bit exchangeflag;

unsigned int cc;

unsigned int dd;

bit okflag;

unsigned char oka;

unsigned char okb;

void main(void)

{  

unsigned char i,j;  

P2=dispcode[digitcount];  

TMOD=0x01;  

TH0=(65536-500)/256;  

TL0=(65536-500)%6;  

TR0=1;  

ET0=1;  

EA=1;  

while(1)   

  {      

if(cmpflag==0)        

{          

if(P3_6==0) //function key           

  {              

for(i=10;i>0;i--)              

for(j=248;j>0;j--);      

         if(P3_6==0)                

{                

   if(hibitflag==0)       

              {     

                  funcount++;  

                     if(funcount==pslen+2)

                        {  

                         funcount=0;

                          cmpflag=1;

                         }

                       P1=dispcode[funcount];

                    }

                    else

                      {

                         second3=0;

                      }  

                 while(P3_6==0);

                }

            }

          if(P3_7==0) //digit key

            {

              for(i=10;i>0;i--)

              for(j=248;j>0;j--);

              if(P3_7==0)

                {

                  if(hibitflag==0)

                    {

                      digitcount++; 

                  if(digitcount==10)

                        {

                          digitcount=0;

                        }

                      P2=dispcode[digitcount];

                      if(funcount==1)

                        {

                          pslen=digitcount;                          

templen=pslen;

                        }

                        else if(funcount>1)

                          {  

                           psbuf[funcount-2]=digitcount;

                          }

                    }

                    else

                      {

                        second3=0;

                      }

                  while(P3_7==0);

                }

            }

        }  

       else

          {

            cmpflag=0;

            for(i=0;i

              {  

               if(ps[i]!=psbuf[i])

                  {

                    hibitflag=1;

                    i=pslen;

                    errorflag=1;

                    rightflag=0;

                    cmpflag=0;

                    second3=0;

                    goto a;  

                 }

              }   

          cc=0;  

           errorflag=0;  

           rightflag=1;

            hibitflag=0;

a:   cmpflag=0;

          }

}

}

void t0(void)

interrupt 1 using 0 {   TH0=(65536-500)/256;  

TL0=(65536-500)%6;  

if((errorflag==1) && (rightflag==0))  

{

      bb++;

      if(bb==800)

        {

          bb=0;

          alarmflag=~alarmflag;

        }

      if(alarmflag==1)

        {

          P0_0=~P0_0;

        }

      aa++;

      if(aa==800)

        {

          aa=0;

          P0_1=~P0_1;

        }

      second3++;

      if(second3==6400)

        {

          second3=0;

          hibitflag=0;

          errorflag=0;

          rightflag=0;

          cmpflag=0;

          P0_1=1;  

         alarmflag=0;

          bb=0;  

         aa=0;  

       }

    }

  if((errorflag==0) && (rightflag==1))

    {

      P0_1=0;

      cc++;

      if(cc<1000)

        {

          okflag=1;

        }

        else if(cc<2000)

          {

            okflag=0;

          }

          else

            {

              errorflag=0;

              rightflag=0;

              hibitflag=0;

              cmpflag=0;

              P0_1=1;

              cc=0;  

             oka=0;

              okb=0;

              okflag=0;  

             P0_0=1;  

           }

      if(okflag==1)

        {  

         oka++;  

         if(oka==2)

            {

              oka=0;

              P0_0=~P0_0;

            }

        }

        else

          {

            okb++;

            if(okb==3)

              {

                okb=0;

                P0_0=~P0_0;

              }  

         }

    }

}

297 评论

穗宝儿yz

用STC的单片机,里面有EEPROM,把设定的密码写到里面。正常运行时 输入密码和EEPROM里面的密码比较 正确了就可以进入

291 评论

尐籹孒16

这里有 毕业论文 基于单片机的电子密码锁设计AT89S51|矩阵键盘|电子密码锁|毕业设计文件格式:word毕业论文 基于单片机的电子密码锁设计论文正文共49页。共19073个字符数(不计空格)。如需下载,请点击页面最下方“下载地址 点击下载”。基于单片机的电子密码锁设计摘 要随着人们对安全的重视和科技的发展,对日常生活中的安全保险器件的要求越来越高。为满足人们对锁的使用要求 ,增加其安全性 ,用密码代替钥匙的密码锁应运而生。电子锁由于具有报警功能,保密性高,使用灵活性好,安全系数高,设计方法合理,简单易行,成本低,符合住宅、办公室用锁要求 , 具有推广价值。受到了广大用户的亲睐。这种应用以单片机为核心 ,通过编程来实现整体基本功能和安全性要求设计。系统将能完成开锁、超时报警、超次锁定、管理员解密、修改用户密码基本的密码锁的功能。能用PROTEL99SE绘制电路原理图,并做出调试好基于单片机的电子密码锁的实物。关键词:AT89S51,矩阵键盘,电子密码锁Microcontroller-based design of electronic locksABSTRACTAs people focus on security and technology development, life insurance for the safety devices in increasingly high demand. To meet people’s use of the lock request to increase their safety, replace the key with a password lock came into being. Electronic lock as an alarm, high secrecy, use good flexibility, high safety factor, design reasonable, simple, low cost, consistent with residential, office lock request is worth promoting. By the user pro-gaze. This application to SCM is the core of the overall program to achieve the basic functions and design safety will be able to complete the unlock, alarm out, and Ultra lock, decrypt administrator, modify the basic user password lock feature. Can PROTEL99SE circuit schematic drawing and make a good debugging MCU-based electronic code lock of the words: AT89S51, matrix keyboards, electronic lock目 录第一章 绪论 引言 电子密码锁的研究现状 课题研究方法 2第二章 开发环境和开发工具 Protel 99se简介 keil介绍 开发工具在系统中的作用 主要元器件介绍 主控芯片AT89S51 数码管 掉电存储模块AT24c02 8第三章 电子密码锁设计硬件部分 电子密码锁总原理图 开锁电路设计 按键电路设计 显示电路设计 掉电存储电路设计 电源电路设计 12第四章 电子密码锁软件部分 主程序流程图: 键功能流程图: 14第五章 电子密码锁实物制作和调试过程 电路板制作中的问题和调试结果分析 制作好的实物的图片 16第六章 总结 20设计总结 20参考文献 21致 谢 22附录一 电子密码锁的电路图 23附录二 电子密码锁3D截图 24附录三 电子密码锁程序清单 24

110 评论

神之雪1314

电子密码锁的设计论文

导语:日常的生活和工作中, 住宅与部门的安全防范、单位的文件档案、财务报表以及一些个人资料的保存多以加锁的办法来解决。以下我为大家介绍电子密码锁的设计论文文章,欢迎大家阅读参考!

一、 课题背景和意义

锁是一种保安措施,是人类为了保护自己私有财产而发明的一种用钥匙才能开启的装置。随着人们生活水平的提高和安全意识的加强,对锁的要求也越来越高,既要安全可靠的防盗,又要使用方便。这就使得传统的锁防盗效果已经满足不了现代社会的防盗需要,而且还存在着随身带钥匙的不便。因此近几年,随着科学技术的不断发展,一种新型的电子密码锁应运而生。电子密码锁运用电子电路控制机械部分,使两者紧密结合,从而避免了因为机械部分被破坏而导致开锁功能失常的问题,而且密码输入错误是还有报警声,大大增加了电子密码锁的防盗功能。同时因为电子密码锁不需要携带钥匙,弥补了钥匙极易丢失和伪造的缺陷,方便了锁具的使用。传统的'锁由于构造简单,所以被撬的事件屡见不鲜,电子密码锁由于具有保密性高、使用灵活性好、安全系数高等优点,受到了广大用户的青睐。

二、国内外研究现状

电子密码锁的种类繁多,例如数码锁、指纹锁、磁卡锁、IC卡锁、生物锁等,但较实用的还是按键式电子密码锁。20世纪80年代后,随着电子锁专用集成电路的出现,电子锁的体积缩小,可靠性提高,成本较高,是适合使用在安全性要求较高的场合,而且需要有电源提供能量,使用还局限在一定范围,难以普及,所以对它的研究一直没有明显的进展。

目前,在西方发达国家,密码锁技术相对先进,种类齐全,电子密码锁已被广泛应用于只能门禁系统中,通过多种更加安全,更加可靠的技术实现大门的管理。在我国密码锁整体水平尚处在国际70年代左右,电子密码锁的成本还很高,市场上仍以按键电子锁为主,按键式和卡片钥匙式电子锁已引进国际先进水平,现国内有几个厂生产供应市场。但国内自行研制开发的电子锁,其市场结构尚未形成,应用还不广泛。国内的不少企业也引进了世界上先进的技术,发展前景非常可观。希望通过不的努力,使电子密码锁在我国也能得到广发应用。

三、 设计论文主要内容

1、电子密码锁设计方案的分析与方案选择;

2、设计一典型结构的电子密码锁,分析其电路结构及控制程序;

3、选者合适的电器元件;

4、编写控制程序;

5、将程序输入PC机,并修改进行模拟运行;

四、 设计方案

查阅文献技术资料,分析电子密码锁结构、工作原理和技术要求。以单片机为主控芯片,结合外围电路,通过软件程序组成电子密码锁系统,能够实现:

1. 正确输入密码前提下,开锁提示;

2. 错误输入密码情况下,蜂鸣器报警;

3. 密码可以根据用户需要更改。

五、 工作进度安排

— 确定毕业设计课题,提交开题报告; 查阅相关论文,调研及收集相关资料; 方案设计、审查和确定,提交中期报告 编写控制程序 整理并撰写论文 完善论文,提交论文

六、 主要参考文献

[1] 石文轩,宋薇.基于单片机MCS-51的智能密码锁设计[M].武汉工程职业技术学院学报,2004,(01);

[2] 祖龙起,刘仁杰.一种新型可编程密码锁[J].大连轻工业学院学报,2002,(01);

[3] 叶启明.单片机制作的新型安全密码锁[J].家庭电子,2005,(10);

[4] 李明喜.新型电子密码锁的设计[J].机电产品开发与创新,2004,(03);

[5] 董继成.一种新型安全的单片机密码锁[J].电子技术,2004,(03);

[6] 杨茂涛.一种电子密码锁的实现[J].福建电脑,2004,(08);

[7] 瞿贵荣.实用电子密码锁[J].家庭电子,2000,(07);

[8] 王千.实用电子电路大全[M],电子工业出版社,2001,p101;

[9] 何立民.单片机应用技术选编[M],北京:北京航空大学出版社,1998;

[10] ,(01);

282 评论

相关问答

  • 基于单片机电子秤毕业论文

    电子信息工程大学毕业论文 (张清卓)从21世纪开始,无线传感器网络就开始引起了学术界,军事界和工业界的极大关注。美国和欧洲相继启动了许多关于无线传感器网络的研

    超级吃货两枚 8人参与回答 2023-12-06
  • 基于单片机控制电子钟毕业论文

    我有现成的,采用1602液晶显示的。C语言的程序。仿真PROTEUS文件都用。money来取。

    奈奈小妖精 5人参与回答 2023-12-06
  • 电子密码锁毕业论文答辩记录

    答辩记录表的写法: (1)论文标题。向答辩小组报告论文的题目,标志着答辩的正式开始。 (2)简要介绍课题背景、选择此课题的原因及课题现阶段的发展情况。 (3)详

    哼哼家的猫猫 3人参与回答 2023-12-09
  • 电子密码门锁毕业论文

    新款的单片机都可以设置密码

    超级尺蠖爱和平 5人参与回答 2023-12-06
  • 电子密码锁研究毕业设计论文

    新款的单片机都可以设置密码

    春天的薄荷叶 5人参与回答 2023-12-09