单片机课程设计 密码锁 湖南工学院

合集下载

51单片机四位密码锁课程设计

51单片机四位密码锁课程设计

51单片机四位密码锁课程设计51单片机四位密码锁是一种常见的电子锁,它使用51单片机作为控制核心,通过输入四位密码来控制锁的开关。

本文将介绍关于51单片机四位密码锁的课程设计。

我们需要明确设计的目标和要求。

本设计的主要目标是实现一个四位密码锁系统,并且需要满足以下要求:1.能够输入四位数字密码。

2.密码输入正确时,能够解锁并输出解锁信号。

3.密码输入错误时,不能解锁。

4.能够重置密码。

接下来,我们将详细介绍设计的步骤和实现。

1.硬件设计:在硬件设计方面,我们需要准备以下器件:- 51单片机-数码管显示模块-按键模块-继电器模块-电源模块2.软件设计:在软件设计方面,我们需要编写51单片机的程序,通过编程实现密码锁的功能。

以下是设计的主要步骤:-初始化:设置输入输出引脚,并初始化时钟和数码管显示。

-输入密码:设计密码输入的函数,通过按键模块获取用户输入的密码。

-检验密码:设计密码检验的函数,将用户输入的密码与预设的密码进行比对。

-解锁信号:如果密码输入正确,输出解锁信号,通过继电器控制开关,实现解锁。

-密码错误:如果密码输入错误,通过数码管显示密码错误的提示信息。

-重置密码:设计密码重置的函数,将新设置的密码保存。

3.程序流程:根据以上设计的步骤,我们可以得到以下主要的程序流程:-初始化引脚和时钟。

-设置初始密码。

-进入主程序循环。

-接收用户输入的密码。

-检验密码是否正确。

-如果密码正确,显示解锁信号并控制继电器解锁。

-如果密码错误,显示密码错误信息。

-进入下一次循环。

4.调试和测试:完成程序编写后,我们需要进行调试和测试。

在测试过程中,我们需要输入正确和错误的密码进行验证,检查程序是否能够正常运行,并且能够正确判断和处理用户输入的情况。

5.优化改进:如果在测试中发现问题或不足之处,我们可以对程序进行优化和改进。

例如,可以增加密码输入的最大尝试次数,增加延时等待时间,增加密码保护等功能。

总结:通过对51单片机四位密码锁的课程设计,我们学习了如何使用51单片机编写程序,实现密码锁的功能。

密码锁-课程设计

密码锁-课程设计

《单片机原理与应用》课程设计报告基于单片机的密码锁的设计院系:专业(班级):姓名:学号:指导教师:职称:完成日期:《单片机原理与应用》课程设计任务书院(系):专业:指导教师:目录1 课题设计 (1)1.1 课题背景 (1)1.2 课题设计目标 (1)2系统方案论证 (2)2.1 主控部分的选择 (2)2.2 密码输入方式的选择 (2)3 系统总体设计和主要芯片介绍 (3)3.1 系统总体设计 (3)3.2 主要芯片介绍 (3)4 系统硬件构成 (10)4.1 系统整体电路图 (10)4.2 单片机最小系统原理图 (10)4.3 电源输入部分 (11)4.4 键盘输入部分 (12)4.5 密码存储部分 (12)4.6 显示部分 (13)4.7 报警部分 (14)5软件的设计与实现 (14)5.1 设计原理 (15)5.2 主程序流程图 (15)6 结论 (16)[参考文献] (17)7 附录 (18)1课题设计随着人们生活水平的提高和安全意识的加强,对安全的要求也就越来越高。

锁自古以来就是把守护门的铁将军,人们对它要求甚高,既要安全可靠的防盗,又要使用方便,这也是制锁者长期以来研制的主题。

随着电子技术的发展,各类电子产品应运而生,电子密码锁就是其中之一。

1.1 课题背景由于电子锁的密钥量(密码量)极大,可以与机械锁配合使用,并且可以避免因钥匙被仿制而留下安全隐患。

电子锁只需记住一组密码,无需携带金属钥匙,免除了人们携带金属钥匙的烦恼,而被越来越多的人所欣赏。

电子锁的种类繁多,例如数码锁,指纹锁,磁卡锁,IC卡锁,生物锁等。

但较实用的还是按键式电子密码锁。

1.2 课题设计目标本设计采用AT89S51单片机为主控芯片,通过软件程序组成电子密码锁系统,能够实现:1.正确输入密码前提下,开锁提示;2.错误输入密码情况下,蜂鸣器报警;3.密码可以根据用户需要更改;4.断电存储功能;5. 完成实际实物的焊接;2系统方案论证系统从主控部分和密码输入方式两方面进行论证2.1 主控部分的选择方案一:采用数字电路控制用以74LS112双JK触发器构成的数字逻辑电路作为密码锁的核心控制,将密码保存在JK触发器中,与输入密码通过比较器比较,判断结果是否相符合。

单片机指纹密码锁毕业设计

单片机指纹密码锁毕业设计

单片机指纹密码锁毕业设计1. 什么是单片机指纹密码锁单片机指纹密码锁是一种电子门锁系统,它使用集成在单片机芯片上的指纹识别技术和密码输入功能,实现对门锁的访问控制。

用户可以通过输入正确的密码或者将指纹与已注册的指纹进行比对来解锁门锁。

这种锁具有高安全性和方便性,适用于各种需要保护的场所,如家庭、办公室和商店等。

2. 单片机指纹密码锁的工作原理是什么单片机指纹密码锁的工作原理主要分为三个部分:指纹模块、密码输入模块和控制模块。

指纹模块负责采集和存储用户的指纹信息。

当用户将手指放在指纹传感器上时,指纹模块会对指纹进行扫描并提取关键特征信息。

然后,它会将提取的特征信息与已存储的指纹模板进行比对,以确定是否匹配。

如果匹配成功,指纹模块会发送信号给控制模块,表示门锁可以解锁。

密码输入模块负责接收用户输入的密码。

用户可以通过键盘或者其他输入设备输入密码。

密码输入模块将接收到的密码与事先存储的正确密码进行比对,如果匹配成功,则发送信号给控制模块。

控制模块是单片机芯片,它负责整个单片机指纹密码锁系统的逻辑控制。

当控制模块接收到指纹模块或者密码输入模块发送的解锁信号后,它会打开电磁锁或者其他解锁机制,让用户能够进入被保护的区域。

3. 单片机指纹密码锁的优点是什么单片机指纹密码锁具有以下几个优点:首先,安全性高。

通过指纹识别技术,单片机指纹密码锁可以准确地识别用户的指纹,大大降低了被非法进入的风险。

同时,密码输入模块也可以提供备用的解锁方式,增加了安全性。

其次,方便性高。

用户只需要将手指放在指纹传感器上或者输入正确的密码,即可快速解锁门锁。

相比传统的钥匙锁,单片机指纹密码锁更加方便快捷。

另外,可靠性强。

单片机指纹密码锁采用先进的技术和稳定的电子元件,具有较高的可靠性和耐用性。

它可以抵御一些常见的攻击手段,如暴力破解密码等。

最后,可扩展性好。

单片机指纹密码锁可以通过与其他安全系统集成,如门禁系统或监控系统,提供更全面的安全保障。

单片机电子密码锁课程设计

单片机电子密码锁课程设计

基于单片机的电子密码锁设计一、设计要求和条件1.1 设计要求根据单片机开发板所提供的元件特性和硬件电路,编写相关的程序,通过实验开发板实现电子密码锁在LCD1602上显示的功能。

1.搭建proteus仿真电路图平台,模拟单片机要实现的功能;2.焊接单片机系统开发板;3.编写程序,实现密码锁相关功能;4.下载并调试程序,实现密码锁的具体功能。

1.2 设计目的1.熟练掌握KEIL软件的使用方法;2.熟练掌握PROTEUS软件的使用方法;3.掌握单片机I/O接口的工作原理;4.掌握中断系统的工作原理;5.掌握液晶LCD1602的工作原理及编程方法;6.掌握蜂鸣器的编程使用;7.掌握行列式键盘的工作原理及编程使用方法;8.掌握单片机的ISP下载使用方法。

1.3 功能概述本设计是基于单片机的密码锁设计方案,根据要求,给出了该单片机密码锁的硬件电路和软件程序,同时给出了硬件设计方案、软件流程图、C 语言源程序及详细注释等内容,由于单片机实验板上的矩阵键盘为3*3的,则规定0-5号键为数字键,6-8号键为功能键,其中该密码锁的具体功能介绍如下:(1)按“8”号键则输入密码,初始密码为012345,在LCD1602上显示密码值为“******”(密码是保密的),输完6位后键盘就锁定,在LCD1602上显示密码是否正确,若输入的密码长度小于6位,则1602等待密码输入。

(2)若密码输入正确后,则绿色的发光二极管亮表示开锁,并且1602上显示“you are right!”,等待是否修改密码。

(3)密码输入错误时显示“code is wrong”,接着会给你第二、第三次机会输入密码,如果三次密码都错误时,发出“叮咚”的报警声,且红色报警指示灯不停闪烁,按复位键清除报警。

(4)按“7”号键表示若密码不小心输入时,可以删除输入错误的密码。

(5)按“6”修改密码,要求输入原密码是正确的,然后按该键后,蓝色密码修改指示灯会亮,并且1602上会显示“Input new code”,输入正确要求再次输入,两次输入一致提示“Modify right!!!”并返回主菜单。

单片机密码锁实习报告

单片机密码锁实习报告

单片机密码锁实习报告一、前言随着科技的不断发展,单片机技术在各个领域得到了广泛的应用。

本次实习,我选择了单片机密码锁的设计与实现作为课题,旨在掌握单片机的原理与应用,提高自己的动手实践能力。

二、实习目的1. 学习单片机的原理与编程方法,了解单片机在实际应用中的优势。

2. 掌握密码锁的设计原理,学会使用单片机实现密码锁功能。

3. 培养自己的团队协作能力和解决问题的能力。

三、实习内容1. 单片机密码锁的原理与功能介绍2. 单片机密码锁的硬件设计3. 单片机密码锁的软件编程4. 单片机密码锁的系统调试与优化四、实习过程1. 单片机密码锁的原理与功能介绍单片机密码锁是一种利用单片机作为控制核心,通过密码输入来控制电路或芯片工作的安全设备。

它具有安全性高、成本低、功耗低、易操作等优点,广泛应用于各种场合。

本次设计的单片机密码锁采用4x4矩阵键盘输入密码,当密码输入正确时,锁打开,否则锁定按键3秒钟并发出报警。

2. 单片机密码锁的硬件设计硬件设计是实现单片机密码锁功能的基础。

本次设计中,硬件部分主要包括4x4矩阵键盘、LED显示、蜂鸣器报警、电磁锁等。

其中,4x4矩阵键盘用于输入密码,LED显示用于显示输入的密码,蜂鸣器报警用于发出报警声音,电磁锁用于实现锁的开关。

3. 单片机密码锁的软件编程软件编程是实现单片机密码锁功能的关键。

本次设计中,软件部分主要实现以下功能:(1)键盘扫描:检测按键是否按下,并获取按键值。

(2)密码输入:将键盘输入的按键值转换为密码,并在LED显示上显示。

(3)密码判断:判断输入的密码是否正确,正确则开锁,错误则锁定按键3秒钟并发出报警。

(4)密码修改:提供一种方式修改密码,以提高安全性。

4. 单片机密码锁的系统调试与优化在完成硬件设计和软件编程后,进行系统调试与优化。

通过反复测试,发现并解决可能存在的问题,提高系统的稳定性和可靠性。

五、实习收获通过本次实习,我学到了很多关于单片机密码锁的知识,收获如下:1. 掌握了单片机的原理与编程方法,了解了单片机在实际应用中的优势。

单片机设计密码锁实训过程问题与问题解决思路

单片机设计密码锁实训过程问题与问题解决思路

单片机设计密码锁实训过程问题与问题解决思路单片机设计密码锁是一种常见的实训项目,旨在通过实际设计和实现密码锁系统,加强学生的单片机编程和电路设计能力。

在实践过程中,可能会遇到以下问题和解决思路:问题一:如何设置密码解决思路:密码的设置需要考虑到安全性和可操作性。

一种常见的做法是将密码保存在EEPROM中,通过编程实现密码的读写。

在设置密码时,可以要求用户输入一次密码,然后再次确认输入的密码是否一致,以防止用户输入错误。

密码长度和字符集可以根据实际需求进行设计,一般建议采用6-8位的数字密码。

问题二:如何实现密码校验解决思路:密码校验是密码锁系统的核心功能,需要采用合适的算法实现。

一种简单的做法是将用户输入的密码与保存在EEPROM中的密码进行比对,如果一致,则开启锁,否则提示密码错误。

在实现时,需要注意避免密码泄露和暴力破解等安全问题,可以采用密码输入错误次数限制和延时等措施。

问题三:如何实现开关锁功能解决思路:开关锁功能是密码锁系统的基本操作,需要采用合适的电路设计和编程实现。

一种常见的做法是通过继电器或电机控制锁的开关,通过单片机输出高低电平控制开关。

在实现时,需要注意电路设计的可靠性和稳定性,避免因电路故障导致锁无法打开或关闭。

问题四:如何实现扩展功能解决思路:密码锁系统的功能可以根据实际需求进行扩展,例如可以添加语音提示、LCD显示、外部信号输入等功能。

在实现时,需要采用合适的硬件和软件设计,保证系统的稳定性和可靠性。

同时,需要考虑系统的易用性和可维护性,避免过于复杂的设计导致操作和维护难度加大。

综上所述,单片机设计密码锁需要考虑多个因素,包括电路设计、编程实现、安全性和功能扩展等。

在实践过程中,遇到问题要注意及时调试和解决,同时注重实际操作和实验结果的验证和分析。

单片机程序设计—电子密码锁

单片机程序设计—电子密码锁

目录目录 (1)中文摘要 (2)第一章概述 (5)第二章系统总体方案设计 (6)第三章硬件电路设计 (10)3.1键盘电路设计 (10)3.2 LED显示电路 (12)3.3 开锁警电路 (15)第四章软件设计 (17)4.1 软件设计思路 (17)4.2各子程序设计 (17)第五章系统调试 (22)第六章心得体会 (23)第七章参考文献 (24)附录 (25)源程序清单 (25)中文摘要摘要:在日常生活和工作中,住宅与部门的安全防范、单位的文件档案、财务报表以及一些个人资料的保存多以加锁的办法来解决。

若使用传统的机械式钥匙开锁,人们常需携带多把钥匙,使用极不方便,且钥匙丢失后安全性即大打折扣,随着科学技术的不断发展,人们对日常生活中的安全保险器件的要求越来越高。

为满足人们对锁得使用要求,增加其安全性,用密码代替钥匙的密码锁应运而生。

密码锁具有安全性高、成本低、功耗低、易操作等优点。

在安全技术防范领域,具有防盗报警功能的电子密码锁逐渐替代传统的机械式密码锁,克服了机械式密码锁密码量少、安全性能差的缺点,使密码锁无论在技术上还是在性能上都大大提高一步。

随着大规模集成电路技术的发展,特别是单片机的问世,出现了带微处理器的只能密码锁,它除了具有电子密码锁的功能外,还引进了智能化管理、专家分析系统等功能,从而使密码锁具有很高的安全性、可靠性,应用日益广泛。

随着人们对安全的重视和科技的发展,许多电子智能锁(指纹识别、IC卡辨认)已在国内外相继面世。

但是,这些产品的特点是针对特定的指纹和有效卡,只能适用于保密要求的箱、柜、门等。

而且指纹识别器若在公共场所使用存在容易机械损坏,IC卡还存在容易丢失、损坏等特点。

加上其成本较高,一定程度上限制了这类产品的普及和推广。

鉴于目前的技术水平与市场的接收程度,电子密码锁是这类电子防盗产品的主流。

基于以上思路,本次设计使用ATMEL公司的AT89C51实现—基于单片机的电子密码锁的设计,其主要具有如下功能:密码通过键盘输入,若密码正确,则将锁打开。

毕业设计(论文)-基于单片机的电子密码锁设计

毕业设计(论文)-基于单片机的电子密码锁设计

目录单片机电子密码锁的设计 (1)第1章绪论 (3)1.1引言 (3)1.2电子密码锁的背景 (3)1.3电子锁设计的意义的本设计特点 (4)第2章系统总体方案设计 (5)第3章硬件电路设计 (8)3.1键盘电路设计 (8)3.2LED显示电路 (9)3.3开锁电路 (11)3.4报警电路 (12)第4章软件设计 (12)4.1软件设计思路 (12)4.2各子程序设计 (13)第5章系统调试 (18)第6章单片机电子密码锁的应用趋势 (19)第7章设计总结与展望 (19)附录 (23)源程序清单 (23)单片机电子密码锁的设计摘要:随着科技和人们的生活水平的提高,如何实现家庭防盗这一问题也变的尤其的突出,传统机械锁由于构造简单,被撬事件屡见不鲜;电子锁由于其保密性高,使用灵活性好,安全系数高,受到了广大用户的青睐。

本设计以单片机AT89C51作为密码锁监控装置的检测和控制核心,分为主机控制和从机执行机构(本设重点介绍主机设计),实现钥匙信息在主机上的初步认证注册、密码信息的加密、钥匙丢失报废等功能。

根据51单片机之间的串行通信原理,这便于对密码信息的随机加密和保护。

而且采用键盘输入的电子密码锁具有较高的优势。

采用数字信号编码和二次调制方式,不仅可以实现多路信息的控制,提高信号传输的抗干扰性,减少错误动作,而且功率消耗低;反应速度快、传输效率高、工作稳定可靠等。

软件设计采用自上而下的模块化设计思想,以使系统朝着分布式、小型化方向发展,增强系统的可扩展性和运行的稳定性。

测试结果表明,本系统各项功能已达到本设计的所有要求。

关键词:单片机;密码锁;单片机设计,电子锁。

The design of electronic locks SCMABSTRACT:Along with the exaltation of social science and the living level of people, how carry out the family to guard against theft, this problem also change particularly outstanding.Because of the simple construct of traditional machine lock,the affairs of theft is hackneyed.the electronics lock is safer because of its confidentiality, using the vivid good, the safe coefficient is high, being subjected to the large customer close.It can carry out the key information to register in the main on board initial attestation, the password information encrypt etc. Go to correspond by letter the principle according to the string between 51 machines, this is easy to encrypt and protect to the passwords information random. Adopt the numerical signal codes,not only can carry out many controls of the road information, raise the anti- interference that signal deliver, reduce the mistake action,but also the power consume is low,Respond quickly,the efficiency deliver is high, work stable credibility etc. The software design adoption the design thought from top to bottom, to make the system toward wear distribute type,turn to the direction development of small, strengthen the system and can expand the stability and circulate.Test the result enunciation, various functions of this system are already all request of this design.KEYWORD:singlechip;cryptogram lock;singlechip design; electronics lock.第1章绪论1.1 引言随着人们生活水平的提高,如何实现家庭防盗这一问题也变的尤其的突出,传统的机械锁由于其构造的简单,被撬的事件屡见不鲜,电子锁由于其保密性高,使用灵活性好,安全系数高,受到了广大用户的喜爱。

单片机课程设计——可改密码的电子密码锁设计

单片机课程设计——可改密码的电子密码锁设计

百度文库- 让每个人平等地提升自我目录课程设计(论文)任务书 (1)可改密码电子密码锁设计报告 (1)第一章概述 (2)第二章系统整体方案设计 (2)第三章硬件电路设计 (3)键盘电路设计 (3)显示电路 (4)开锁电路 (6)报警电路 (6)密码掉电保留电路 (6)第四章软件设计 (8)软件设计思路 (8)程序设计流程图 (9)程序设计 (10)第五章系统调试 (10)3、开锁状态: (10)第六章心得体会 (12)致谢 (13)参考文献: (13)课程设计(论文)任务书设计题目:可改密码电子密码锁设计任务:以89C52单片机为核心,制作一个能够更改6位密码的模拟电子密码锁。

设计要求:密码位数为6位。

显示利用1602液晶显示。

更改的密码支持断电保留。

支持持续输入三次错误密码报警。

密码输入状态动态显示。

别离利用两个发光二极管表示输入正确和错误密码。

可改密码电子密码锁设计报告摘要本文介绍基于MCS-51单片机的可更改密码的电子密码锁设计,并支持掉电保留密码,程序利用了C语言编写。

关键词单片机电子密码锁改变Abstract:This article describes the MCS-51 microcontroller based on the password change the design of electronic locks, and to support power-down save the password, the program uses the C language.Key word: MCU Electronic code lock Change第一章概述密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。

它的种类很多,有简易的电路产品,也有基于芯片的性价比较高的产品。

此刻应用较广的数字密码锁是以芯片为核心,通过编程来实现的。

基于单片机的电子密码锁设计

基于单片机的电子密码锁设计

基于单片机的电子密码锁设计
电子密码锁是一种常用的智能锁具,它使用数字密码代替传统的钥匙,能够提供更高的安全性和方便性。

基于单片机的电子密码锁能够实现简单的密码输入、校验和控制逻辑,下面是一种基于单片机的电子密码锁设计方案。

硬件部分:
1、MCU:选择一款高性价比的8位单片机,如AT89C51,具备足够的存储空间、操作速度和通用IO口。

2、键盘:选用16键或12键矩阵键盘,提供数字、字母和功能键,可灵活设置密码。

3、数码管:用于显示输入密码和状态信息,一般采用4位共阳数码管。

4、电路保护:此处需添加过流保护、短路保护、反向保护以及过压保护等电路。

5、电源:选择电池供电模式,例如4节AA碱性电池并联,以保证足够的电量和使用寿命。

软件部分:
1、键盘输入检测:通过IO口扫描矩阵键盘输入状态,检测按下的键位并读取对应键值,避免误触。

2、密码存储:将设定好的开锁密码存储在MCU内部的Flash或EEPROM中,以保证密码安全并避免意外丢失。

3、密码校验:将输入的数字密码与存储的密码进行比较,如一致则允许开锁,否则拒绝开锁并显示“密码错误”。

4、状态显示:通过4位共阳数码管显示输入密码、开锁状态、警报状态等信息,方便用户操作。

5、警报功能:若输入错误密码超过规定次数,则触发警报,并向指定手机号或邮箱发送警报信息。

总之,基于单片机的电子密码锁设计需要合理安排硬件和软件功能,充分保证安全性和可靠性,并考虑升级和扩展的可能性。

课程设计 基于8051单片机电子密码锁的设计

课程设计 基于8051单片机电子密码锁的设计

一、设计总说明随着人们对安全的重视和科技的发展,许多电子智能锁(指纹识别、IC卡辨认)已在国内外相继面世。

但是这些产品的特点是针对特定的指纹和有效卡,只能适用于保密要求的箱、柜、门等。

而且指纹识识别器若在公共场所使用存在容易机械损坏,IC卡还存在容易丢失、损坏等特点。

加上其成本较高,一定程度上限制了这类产品的普及和推广。

鉴于目前的技术水平与市场的接收程度,电子密码锁是这类电子防盗产品的主流。

本次基于8051单片机电子密码锁的设计,其主要具有如下功能:(1)设置6位密码,密码通过键盘输入,若密码正确,则将锁打开。

(2)密码可以由用户自己修改设定(只支持6位密码),锁打开后才能改密码。

修改密码之前必须再次输入密码,在输入新密码时候需要二次确以防止误操作。

(3)报警、锁定键盘功能。

密码输入用发光管显示,当连续3次输入错误密码,系统声光报警。

电子密码锁的设计主要由三部分组成:4×4矩阵键盘接口电路、密码锁的控制电路、输出八段显示电路。

另外系统还有LED提示灯等。

密码锁设计的关键问题是实现密码的输入、清楚、更改、开锁等功能:(1)密码输入功能:按下一个数字键,一个“-”就显示在最右边的数码管上,同时将先前输入的所有“-”向左移动一位。

(2)密码清除功能:当按下清除键时,清除前面输入的所有值,并清除所有显示。

(3)密码更改功能:将输入的值作为新的密码。

(4)开锁功能:当按下开锁键,系统将输入与密码进行检查核对,如果确锁打开,否则不打开。

主要的设计实施过程:首先,选用8051单片机,以及选购其他电子元器件。

第二步,设计硬件电路。

第三步,编写单片机语言实现功能。

第四部,分别进行软件和硬件的调试。

最后,联合软、硬件调试整个系统,完成本次课程设计。

关键词:4×4矩阵键盘;8051单片机;密码锁;密码二次确认二、绪论2.1背景随着社会物质财富的日益增长,安全防盗已成为社会问题。

而锁自古以来就是把守门户的铁将军,人们对它要求甚高,既要安全可靠地防盗,又要使用方便,这也是制锁者长期以来研制的主题。

《单片机技术》实验(2022级自动化1201~02电气1201~02)教案

《单片机技术》实验(2022级自动化1201~02电气1201~02)教案

《单片机技术》实验(2022级自动化1201~02电气1201~02)教案课程教案课程名称:单片机技术实验任课教师:王韧所属院部:电气与信息工程学院教学班级:自动化1201~02、电气1201~02教学时间:2022—2022学年第二学期湖南工学院课程基本信息湖南工学院教案用纸实验一数据传送实验一、本次实验主要内容1、Keil软件的使用方法和调试。

2、存储器之间数据传送的方法和循环程序设计。

3、MCS-51系列单片机堆栈的使用。

二、实验目的与要求1、掌握单片机的汇编指令系统及汇编语言程序设计方法。

2、掌握单片机的存储器体系结构。

3、熟悉Keil软件的功能和使用方法。

4、掌握单片机应用程序的调试方法。

三、实验重点难点MOV、MOV某指令的用法特点。

四、实验方法和手段讲授、演示、操作、仿真、提问。

五、作业与习题布置写出实验报告。

P1湖南工学院教案用纸一、实验内容或原理1、实现单片机内部RAM之间,外部RAM之间以及内部RAM与外部RAM之间的数据传送。

2、利用Keil软件编辑、汇编、调试、运行实验程序并记录实验数据。

二、设计要求1、编写程序将00H~0FH16个数据分别送到单片机内部RAM30H~3FH单元中。

2、编写程序将片内RAM30H~3FH的内容传送至片内RAM40~4FH单元中。

3、编写程序将片内RAM40H~4FH单元中的内容传送到外部RAM4800H~480FH单元中。

4、编写程序将片外4800H~480FH单元内容送到外部RAM5800H~580FH单元中。

5、编写程序将片外RAM5800H~580FH单元内容传送回片内RAM50H~5FH单元中。

三、实验报告要求1、实验目的和要求。

2、设计要求。

3、实验程序流程框图和程序清单。

4、实验总结。

5、思考题。

四、思考题1、说明MCS-51系列单片机对片内RAM和片外RAM存贮器各有哪些寻址方式?2、说明指令MOVA,20H和MOVC,20H中的20H含义有什么不同?传送指令中的助记符MOV,MOV某,MOVC各适用于访问哪个存储器空间?P2湖南工学院教案用纸实验后记:P3湖南工学院教案用纸实验二单片机并行I/O口的应用实验一、本次实验主要内容1、利用单片机并行I/O口控制流水灯。

单片机电子密码锁课程设计

单片机电子密码锁课程设计

单片机技术及应用综合训练设计报告前言随着人们生活水平的提高;如何实现家庭防盗这一问题也变得尤为突出..在科学技术不断发展的今天;电子密码防盗锁作为防盗卫士的作用显得日趋重要..本文从经济实用的角度出发;系统由STC89C52与低功耗CMOS型E2PROMAT24C02作为主控芯片与数据存储器单元;结合外围的键盘输入、LCD显示、报警、开锁等电路模块..它能完成以下功能:正确输入密码前提下;开锁;错误输入密码情况下;报警;密码可以根据用户需要更改..用C语言编写的主控芯片控制程序与EEPROMAT24C02读写程序相结合;并用Keil软件进行编译;设计了一款可以多次更改密码;具有报警功能的电子密码控制系统..本密码锁具有设计方法合理;简单易行;成本低;安全实用;保密性强;灵活性高等特点;具有一定的推广价值..关键词:电子密码锁、报警、液晶显示目录一、选题要求 (1)二、硬件电路设计 (1)2.151单片机 (2)2.2键盘电路 (2)2.3液晶显示电路 (2)2.4警报电路 (3)2.5密码储存电路 (3)2.6晶振、复位及关锁 (3)三、软件设计 (4)四、软硬件调试结果 (9)4.1电路总原理图 (9)4.2调试结果 (10)五、总结 (11)一、选题要求本文从经济实用的角度出发;设计采用单片机为主控芯片;结合外围电路;组成电子密码控制系统;密码锁共6位密码;每位的取值范围为0~9;用户可以自行设定和修改密码..用户想要打开锁;必先通过提供的键盘输入正确的密码才可以;密码输入错误有提示;为了提高安全性;当密码输入错误三次将报警;期间输入密码无效;以防窃贼多次试探密码..6位密码同时输入正确;锁才能打开..锁内有备用电池;只有内部上电复位时才能设置或修改密码;因此;仅在门外按键是不能修改或设置密码的;因此保密性强、灵活性高..其特点如下:1保密性好;编码量多;远远大于弹子锁..随机开锁成功率几乎为零..2密码可变;用户可以随时更改密码;防止密码被盗;同时也可以避免因人员的更替而使锁的密级下降..3误码输入保护;当输入密码多次错误时;报警系统自动启动..4无活动零件;不会磨损;寿命长..5使用灵活性好;不像机械锁必须佩带钥匙才能开锁..6电子密码锁操作简单易行;一学即会..二、硬件电路设计下面是整个设计的流程图:2.151单片机这次课程设计采用的是5系列单片机AT89C52..其外部封装如下图所示:AT89C52单片机有4组8位的可编程I/O口;分别位P0、P1、P2、P3口;每个口有8位8根引脚;共32根8..P0口Pin39~Pin32:8位双向I/O口线;名称为P0.0~P0.7P1口Pin1~Pin8:8位准双向I/O口线;名称为P1.0~P1.7P2口Pin21~Pin28:8位准双向I/O口线;名称为P2.0~P2.7P3口Pin10~Pin17:8位准双向I/O口线;名称为P3.0~P3.72.2键盘电路本次试验采用的是行列键盘;C语言程序中有相应的驱动程序;其硬件电路如下所示;下右对应的为各个按键所对应的数字及功能..2.3液晶显示电路实验中采用的是LM016L液晶显示;其数据端口采集数据通过单片机的P0口;接法如下图所示..不同情况下会有不同的显示;显示内容包括:Welcome、HelloBoss、Wrong、OK等内容..2.4警报电路下图是警报电路连接图;警报触发为:连续三次输错密码;警报触发后会有一个时间延迟;延迟时间内任何操作都是无效的;过后通过关锁按钮可解除..2.5密码储存电路实验中考虑到实用性方面时;就想到了密码储存及修改的问题;于是采用了FM24C02F作为面膜储存模块;电路连接如下所示:2.6晶振、复位及关锁晶振、复位及关锁电路如下所示作图所示按钮为复位按钮:三、软件设计C语言源程序:include<reg52.h> include<stdio.h> include<intrins.h> defineCHECK_BUSY defineDataPortP0 defineKeyPortP1 sbitRS=P2^4;//液晶显示的定义端口sbitRW=P2^5;sbitEN=P2^6;sbitscl=P3^0;//24c02端口定义sbitsda=P3^1;sbitbaojing=P2^1;//报警器sbitjdq=P2^0;//继电器sbitjb=P2^3;//警报灯sbitclose=P2^2;unsignedcharold1;old2;old3;old4;o ld5;old6;//原始密码000000 unsignedcharnew1;new2;new3;new4;n ew5;new6;//代表新密码voiddelay1unsignedintm{unsignedintn;forn=0;n<m;n++;}voiddelayunsignedintm{unsignedinta;unsignedcharb;fora=0;a<m;a++{forb=0;b<125;b++;}}voidDelayUs2xunsignedchart{while--t;}voidDelayMsunsignedchart{whilet--{DelayUs2x256;DelayUs2x256;}}voidbaojingqi{baojing=0;DelayUs2x256;ifbaojing==0{baojing=0;DelayUs2x256;}}bitLCD_Check_Busyvoid//判忙函数{ifdefCHECK_BUSYDataPort=0xFF;RS=0;RW=1;EN=0;_nop_;EN=1;returnbitDataPort&0x80;elsereturn0;endif}voidLCD_Write_Comunsignedcharcom/ /写入命令函数{//whileLCD_Check_Busy;//忙则等待DelayMs5;RS=0;RW=0;EN=1;DataPort=com;_nop_;EN=0;}voidLCD_Write_DataunsignedcharDat a//写入数据函数{//whileLCD_Check_Busy;//忙则等待DelayMs5;RS=1;RW=0;EN=1;DataPort=Data;_nop_;EN=0;}voidLCD_Clearvoid//清屏函数{LCD_Write_Com0x01;DelayMs5;}voidLCD_Write_Charunsignedcharx;u nsignedchary;unsignedcharData//写入字符函数{ify==0{LCD_Write_Com0x80+x;}else{LCD_Write_Com0xC0+x;}LCD_Write_DataData;}voidLCD_Write_Stringunsignedcharx ;unsignedchary;unsignedchars//写入字符串函数{whiles{LCD_Write_Charx;y;s;s++;x++;}}voidLCD_Initvoid //液晶显示的初始化函数{LCD_Write_Com0x38;//显示模式设置DelayMs5;LCD_Write_Com0x38;DelayMs5;LCD_Write_Com0x38;DelayMs5;LCD_Write_Com0x38;LCD_Write_Com0x08;//显示关闭LCD_Write_Com0x01;//显示清屏LCD_Write_Com0x06;//显示光标移动设置DelayMs5; LCD_Write_Com0x0C;//显示开及光标设置}unsignedcharKeyScanvoid//键盘扫描函数;使用行列反转扫描法{unsignedcharcord_h;cord_l;//行列值中间变量KeyPort=0x0f;//行线输出全为0 cord_h=KeyPort&0x0f;//读入列线值ifcord_h=0x0f//先检测有无按键按下{DelayMs10;//去抖ifKeyPort&0x0f=0x0f{cord_h=KeyPort&0x0f;//读入列线值KeyPort=cord_h|0xf0;//输出当前列线值cord_l=KeyPort&0xf0;//读入行线值whileKeyPort&0xf0=0xf0;//等待松开并输出returncord_h+cord_l;//键盘最后组合码值}}return0xff;//返回该值}unsignedcharKeyProvoid{switchKeyScan{case0x7e:return0;break;//0按下相应的键显示相对应的码值case0x7d:return1;break;//1case0x7b:return2;break;//2case0x77:return3;break;//3case0xbe:return4;break;//4case0xbd:return5;break;//5case0xbb:return6;break;//6case0xb7:return7;break;//7case0xde:return8;break;//8 case0xdd:return9;break;//9 case0xdb:return10;break;//10 case0xd7:return11;break;//11 case0xee:return12;break;//12 case0xed:return13;break;//13 case0xeb:return14;break;//14 case0xe7:return15;break;//15 default:return0xff;break;}}voidinit//24c02初始化子程序{scl=1;_nop_;_nop_;sda=1;_nop_;_nop_;}voidrespons //应答{unsignedchari;scl=1;_nop_;_nop_;whilesda==1&&i<250i++;scl=0;_nop_;_nop_;}voidclock//I2C总线时钟{unsignedchari=0;scl=1;_nop_;_nop_;whilesda==1&&i<255i++;scl=0;_nop_;_nop_;} voidstart//启动I2C总线{sda=1;_nop_;_nop_;scl=1;_nop_;_nop_;sda=0;_nop_;_nop_;scl=0;_nop_;_nop_;}voidstop//停止I2C总线{sda=0;_nop_;_nop_;scl=1;_nop_;_nop_;sda=1;_nop_;_nop_;}voidwritebyteunsignedchara//写一个字节{unsignedcharb;tem;tem=a;forb=0;b<8;b++{tem=tem<<1;scl=0;_nop_;_nop_;sda=CY; //temp左移时;移出的值放入了CY中_nop_;_nop_;scl=1; //待sda线上的数据稳定后;将scl拉高_nop_;_nop_;}scl=0;_nop_;_nop_;sda=1;_nop_;nop_;}unsignedcharreadbyte//读一个字节{unsignedchari;j;k=0;scl=0;_nop_;_nop_;sda=1;fori=0;i<8;i++{_nop_;_nop_;scl=1;_nop_;_nop_;ifsda==1j=1;elsej=0;k=k<<1|j;scl=0;}_nop_;_nop_;returnk;}unsignedcharread24c02unsignedchar address//从24c02的地址address中读取一个字节数据{unsignedchardate;start;writebyte0xa0;clock;writebyteaddress;clock;start;writebyte0xa1; clock;date=readbyte;stop;delay1100;returndate;}voidwrite24c02unsignedcharaddress ;unsignedcharinfo//向24c02的address地址中写入一字节数据info {start;writebyte0xa0;clock;writebyteaddress;clock;writebyteinfo;clock;stop;delay15000;//这个延时一定要足够长;否则会出错..因为24c02在从sda上取得数据后;还需要一定时间的烧录过程..}main{unsignedcharnum;i;bj;c=0; unsignedchartemp6;bitFlag;init;//初始化24C02LCD_Init;//初始化液晶屏DelayMs10;//延时用于稳定;可以去掉LCD_Clear;//清屏LCD_Write_String0;0;"welcome";//写入第一行信息old1=read24c02110;old2=read24c02111;old3=read24c02112;old4=read24c02113;old5=read24c02114;old6=read24c02115;while1//主循环{num=KeyPro;//扫描键盘ifnum=0xff//如果扫描是按键有效值则进行处理{ifi==0//输入是第一个字符的时候需要把改行清空;方便观看密码LCD_Write_String0;1;"";//清除该行ifi<6//密码是6位;大于6位时不再输入按键值{tempi=num;LCD_Write_Chari;1;'';}i++;//输入数值累加ifnum==11 //重试键{i=0;LCD_Write_String0;1;"";}}ifnum==12{i=0;LCD_Write_String0;1;"";ifbj==0{whilei<=6{num=KeyPro;//扫描键盘ifnum=0xff//如果扫描是按键有效值则进行处理{ifi==0//输入是第一个字符的时候需要把改行清空;方便观看密码LCD_Write_String0;1;"";//清除该行ifi<6//密码是6位;大于6位时不再输入按键值{tempi=num; LCD_Write_Chari;1;'';}i++;//输入数值累加ifnum==11 //重试键{i=0;LCD_Write_String0;1;"";}}ifnum==10{num=0;new1=temp0;new2=temp1;new3=temp2; new4=temp3;new5=temp4;new6=temp5; old1=new1;old2=new2;old3=new3; old4=new4;old5=new5;old6=new6;//新密码代替旧密码write24c02110;old1;write24c02111;old2;write24c02112;old3;write24c02113;old4;write24c02114;old5;write24c02115;old6;LCD_Write_String0;1;"ok";bj=1;DelayMs220;DelayMs220;DelayMs220;}ifclose==0{bj=1;i=0;LCD_Write_String0;1;"";}}}i=0;}ifnum==10 //数字10为确认键{new1=temp0;new2=temp1;new3=temp2;new4=temp3;new5=temp4;new6=temp5;ifi==7//6位后的按键输入数值;相当于确认按键任意按键即可{i=0;//计数器复位Flag=1;//先把比较位置1old1=read24c02110;old2=read24c02111;old3=read24c02112;old4=read24c02113;old5=read24c02114;old6=read24c02115;Flag=Flag&new1==old1&new2==old2&n ew3==old3&new4==old4&new5==old5&n ew6==old6;//比较输入值和已有密码ifFlag//如果比较全部相同;标志位置1{i=0;LCD_Write_String0;1;"HelloBoss";/ /密码正确显示的信息jdq=0;bj=0;delay3000;jdq=1;LCD_Write_String0;1;"";}else{i=0;c++;LCD_Write_String0;1;"error";//密码错误;提示重新输入whilec==3{baojingqi;jb=0;DelayMs255;DelayMs255; baojing=1;i=0;jb=1;LCD_Write_Stri ng0;1;"";ifclose==0{i=0;bj=1;jb=1;c=0;baojing=1;LCD_W rite_String0;1;"";}}}}else//当密码不是6位数字时按下确认键也算输错密码一次{i=0;LCD_Write_String0;1;"error"; c++;whilec==3{baojingqi;jb=0;DelayMs255;DelayMs255;ifclose==0{i=0;jb=1;bj=1;c=0;baojing=1;LCD_W rite_String0;1;"";}}}}ifclose==0{i=0;bj=1;jb=1;c=0;jdq=1;baojing=1;LCD_Write_String0;1;"";jdq=1;}}四、软硬件调试结果4.1电路总原理图电路总原理图如下所示:4.2调试结果各种情况下的的调试结果如下个图所示:依次为开机、开锁、成功修改密码、密码错误..五、总结在这次实验中;用到了单片机和C语言的知识;这两门知识都是非常具有实用性的..在这次实验中再次加深了对此的认识..首先;在一开始输程序的时候;在程序仿真过程中出现了不能打开头文件的现象;后来经老师知道后知道了头文件的具体作用和使用方式..这些都是以前所没能掌握的..在后面的硬件电路调试过程中也遇到了很多问题;经过不懈努力之后都一一解决了..本次试验为期一周;不得不说;这次试验让我学到了好多东西..也感谢老师的辛勤指导。

基于单片机的指纹密码锁系统设计

基于单片机的指纹密码锁系统设计

参考内容
基于单片机的指纹密码锁是一种集成了生物识别技术和嵌入式系统技术的安 全装置。它通过采集并比对指纹信息来决定是否授予访问权限。这种密码锁具有 很高的安全性和便捷性,因此在家庭、办公场所、工业等领域得到了广泛应用。
指纹密码锁的发展可以追溯到20世纪90年代,当时人们开始研究生物识别技 术在安全领域的应用。随着科技的发展和人们安全意识的提高,指纹密码锁逐渐 普及。现在,指纹密码锁已经成为市场上的主流产品,需求量不断增长。
指纹密码锁是一种利用指纹识别技术来控制锁的开启与关闭的设备。它通过 采集用户的指纹信息并存储在芯片中,在开锁时进行比对,以判断是否为合法用 户。单片机作为控制核心,负责处理指纹信息、控制开关门等操作。
设计指纹密码锁的主要步骤包括硬件设计和软件设计。硬件设计主要包括指 纹采集模块、控制开关和报警模块等的设计。软件设计主要涉及指纹信息的采集、 存储和比对等操作。具体步骤如下:
1、选取合适的单片机作为控制核心,例如STM32系列单片机。
2、安装指纹采集模块,并连接单片机。该模块可采用光学或电容式指纹识 别技术。
3、设计控制开关,连接单片机,实现通过单片机的控制进行开关门操作。 4、添加报警模块,如遇到非法入侵,通过单片机控制触发报警系统。
5、在单片机中编写控制程序,实现指纹信息的采集、存储和比对等功能。
总之,基于单片机的指纹密码锁是一种非常实用的安全装置,具有很高的安 全性和便捷性。随着科技的不断进步和应用场景的不断扩展,我们有理由相信它 将成为未来安全领域的重要发展方向。
参考内容二
在当今社会,随着科技的不断发展,人们对于自身财产的安全性越来越重视。 其中,门锁作为保护家庭或重要场所的第一道防线,历来受到广泛。传统门锁存 在被钥匙遗忘、复制钥匙等风险,因此,指纹密码锁作为一种新兴的安全防护设 备,逐渐进入人们的视野。本次演示将介绍一种基于单片机的指纹密码锁的设计。

51单片机课程设计密码锁

51单片机课程设计密码锁

课程设计课程名称单片机原理题目名称密码锁学生学院信息工程专业班级学号学生姓名指导教师2012 年 6 月8 日密码锁一设计构思:单片机控制的密码锁设计。

STC89C52单片机P1引脚外接独立式按键S1-S8,分别代表数字键0-5、确定键、取消键。

单片机从P3.0-P3.3输出4个信号,分别为1个电磁开锁驱动信号和密码错误指示、报警输出、已开锁指示信号,分别用发光二极管L1-L4指示。

P3.4接一有源蜂鸣器,用于实现提示音。

(1)初始密码为123450,输完后按确定键开锁,取消键清除所有输入,每次按键有短“滴”声按键提示音。

(2)密码输入正确后,输出一个电磁锁开锁信号与已开锁信号,并发出两声短“滴”声提示。

4秒后开锁信号与已开锁指示清零。

(3)密码输入错误时,发出一声长“滴”声错误指示提示音,并密码错误指示灯亮,三次密码错误时,发出长鸣声报警,并密码错误指示灯亮,报警指示灯亮,此后15秒内无法再次输入密码,15秒过后,清除所有报警和指示。

(4)5秒内无任何操作后,清除所有输入内容,等待下次输入。

二系统设计:(1)分析构思要求。

写出系统整体设计思路根据题目的要求,需要考虑如下几个任务:按键的输入,密码的判断,密码输入正确或错误的计时、输出信号的控制等。

键盘的输入:由于需要输入6个数字作为密码,先要判断按键时数字键还是功能键,若判断为数字键按下,则需要将每次键盘的输入内容依次暂存在一个数组中。

在每次按键输入时,需要启动定时器实现待机计时(5秒)。

若5秒内没有输入内容则清除已输入的内容。

密码的判断和计时:在按下确认键之后,要将输入的内容与初始密码核对,如果密码正确,输出相应的指示,同时还要启动定时器实现4s的计时。

如果密码错误,错误计数变量增1,同时输出密码指示信号,若错误次数超过3s,则输出报警等信号,同时启动定时器实现15秒的计时。

输出信号的控制主要根据按键输入与密码的核对情况来决定。

整体程序设计思想:程序分为主程序和中断服务程序两个主要部分,主程序完成变量和单片机特殊功能寄存器的初始化后,进入一个循环结构。

指纹锁毕业设计

指纹锁毕业设计

指纹锁毕业设计篇一:指纹锁毕业论文】山东农业大学毕业论文基于单片机的指纹密码锁设计院部专业班级电气工程及其自动化 2 班届次2013 届学生姓名方阳阳学号20091049 指导教师侯加林教授基于单片机的密码锁的设计 (i)1 绪论................................................... .. (1)1.1 引 (1)1.2 指纹锁的背景..................................................11.3 指纹锁的指纹识别的基本原理 (2)1.4 指纹锁设计的意义的本设计特点 (2)丿\、、............................. J2 系统设计................................................... (4)2.1 设计原则................................................... .. (4)2.2 设计方案的选择 (4)2.3 系统总设计结构图 (5)2.4 开锁机构设计..................................................3 主要元器件介绍...................................................73.1 89c51 单片介绍 (7)3.1.1 时钟电路...................................................83.1.2 复位电路 (9)3.2 stm32 单片机介绍 (10)3.2.1 stm32f103 性能特点 (11)3.2.2stm32f103 的系统作用 (12)3.3 sb2000m 指纹识别模块介绍 (13)3.3.1 结构................................................... .. (13)3.3.2 产品规格...................................................133.4 rs-232c 连接器介绍 (14)3.5 gsm 设备的介绍 (15)4 硬件电路的设计 (18)4.1 系统电源的设计 (18)4.2 系统的备用电源的设计 (19)4.2.1 备用电源的供给设计 (19)4.2.2 备用电源的使用选择设计 (21)4.3 开锁电路的设计 (22)4.4 指纹识别模块电路的设计 (23)4.5 总电路的设计 (24)5 软件程序的设计 (25)5.1 程序设计语言的选择及步骤 (25)5.1.1 c语言简介 (25)5.1.2 c语言特点...... . (25)5.1.3 c语言优点...... . (25)5.2 keil简介 (26)5.3 开锁程序的设计及流程图 (27)结论................................................... (28)致谢................................................... (29)参考文献................................................... .. (30)附录一:程序................................................... ....... 31 附录二:电路接线图及实物图 (42)design of fingerprint lock based onmcu (i)1 the firstchapter ............................................................................................ .. (1)1.1introduction ................................................................................ . (1)1.2 the background of fingerprintlock (1)1.3 the basicprinciples ......................................................................................... .. (2)1.4 the designcharacteristics ................................................................................ .. (2)2 the secondchapter ............................................................................................. . (4)2.1designprinciple ........................................................................................... (4)2.2designoptions ............................................................................................. (4)2.3the systemstructure .......................................................................................... .. 52.4 lock mechanismdesign (5)3 the thirdchapter ............................................................................................ (7)3.1 89c51introduction ..................................................................................... . (7)3.1.1 clockcircuit ............................................................................................... (8)3.1.2 resetcircuit ............................................................................................... .. 93.2stm32 ............................................................................................... (10)3.2.1 stm32f103features (11)3.2.2stm32f103systems (12)3.3sb2000m .......................................................................................... (13)3.3.1structure .......................................................................................... .. (13)3.3.2specification ..................................................................................... .. (13)3.4 rs-232c ................................................................................................ .. (14)3.5gsm .................................................................................................. (15)4 the fourthchapter ............................................................................................ .. (18)4.1 power supply systerm design (18)4.2 standbypower ............................................................................................... .. (19)4.2.1design .............................................................................................. .. (19)4.2.2 designoptions .............................................................................................214.3 lock circuitdesign ..............................................................................................224.4 the fingerprint identification circuit (23)4.5 the totalcircuit ............................................................................................... .. 245 the fifthchapter ............................................................................................ .. (25)5.1 selection and step of programming language 255.1.1 clanguage .......................................................................................... (25)5.1.2 c languagefeatures (25)5.1.3 c languageadvantages (25)5.2keil ................................................................................................... . (26)5.3 lock program design ............................................................27conclusions ...................................................................................... .. (28)thanks .............................................................................................. .. (29)reference ......................................................................................... .. (30)appendix a :programs ......................................................................................... . (31)appendix b :circuit design and the real figure 42【篇二:指纹锁的设计与实现】(2009 届)本科毕业设计(论文)资料湖南工业大学教务处2009 届本科毕业设计(论文)资料设计说明书(或毕业论文)第一部分(2009 届)本科毕业设计(论文)指纹锁的设计与实现2009 年06 月摘要随着信息技术的快速发展,传统的身份识别方式(诸如密码、证件等)已经不能满足不断增加的安全需要,身份识别已经成为信息安全领域所面临的一个难题。

湖工数电密码锁课程设计报告

湖工数电密码锁课程设计报告

目录一、设计思路与基本框图 (2)1.1数字电路简介 (2)1.2密码锁总体设计思路 (2)1.2.1 设计要求 (2)1.2.2设计目的 (2)1.2.3设计思路 (3)1.2.4 总体设计简图及电路总图 (3)二、单元电路设计 (4)2.1计时显示电路 (4)2.1.1 60进制秒计数 (4)2.1.2 35秒报警电路 (5)2.2比较电路 (5)2.3编码单元 (8)2.3.1优先编码器 (8)2.3.2 消抖电路 (8)2.4存储单元电路 (9)2.4.1 存储器 (9)三、现场接线与调试 (12)3.1现场连接 (12)3.2现场调试 (14)四、故障分析与电路改进 (16)五、总结与体会 (17)附录 (18)1.元件清单 (18)2.参考文献 (18)3.总体仿真图 (19)一、设计思路与基本框图1.1 数字电路简介用数字信号完成对数字量进行算术运算和逻辑运算的电路称为数字电路,或数字系统。

由于它具有逻辑运算和逻辑处理功能,所以又称数字逻辑电路。

现代的数字电路由半导体工艺制成的若干数字集成器件构造而成。

逻辑门是数字逻辑电路的基本单元。

存储器是用来存储二进制数据的数字电路。

从整体上看,数字电路可以分为组合逻辑电路和时序逻辑电路两大类。

1.2 密码锁总体设计思路1.2.1 设计要求该密码锁设定密码为三位,有0至9十个数字组成。

当密码输入正确时,开锁指示灯(绿灯)亮,密码错误时,报警指示灯(红灯)亮,报警时间为35秒。

第一个密码输入时开始计时,如果在60秒内没有开锁指示,则电路进入自锁状态,并发出报警指示。

1.2.2设计目的(1)进一步熟悉和掌握常用数字电路元器件的应用。

(2)巩固加深理解数字电路的基本理论知识,学习基本理论在实践中综合运用的初步经验,掌握数字电路系统设计的基本方法及在面板上接线的方法、技术、要注意的问题。

(3)培养数字电路实物制作、调试、测试、故障查找和排除的方法。

(4)培养细致、认真做实验的习惯。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《单片机技术》课程设计说明书密码锁系、部:电气与信息工程系学生姓名:黄生旺指导教师:吴乐职称讲师专业:电气工程及其自动化班级:电气本0904完成时间:2011.12.25摘要日常生活和现代办公中,住宅与办公室的安全防范,单位的文件档案,财务报表以及一些个人资料的保存等多以加锁的办法来解决,若使用机械式钥匙开锁,人们常需携带多把钥匙,使用极不方便,且钥匙丢失后安全性大打折扣,为满足人们对门锁的使用要求,增加其安全性,用密码电子锁代替传统机械锁应运而生。

目前使用的电子密码锁种类繁多,各具特色,本设计从经济实用的角度出发,以80C51单片机为控制核心,研制了一款电子密码锁。

本设计的硬件部分即为简单的单片机最小系统,通过编程,实现其电子密码锁的功能。

该密码锁设计方法合理,简单易行,成本低,符合住宅,办公室用锁要求,具有一定的推广价值。

关键词:密码锁;单片机ABSTRACTDaily life and the modern office, residential and office security, the unit of paper files, as well as some personal financial statements andother information stored in locked solutions to, the use of mechanical key lock, people often need to carry more than the keys, very convenient to use, and security compromised key is lost, to satisfy people's demands for the use of locks to increase their security, electronic lock with a password replace the traditional mechanical locks came into being. Currently use a wide range of electronic locks, distinctive, the design from the point of view, for the control of the 80C51 microcontroller core, developed an electronic lock.The design of the hardware part is simple smallest single-chip system, through programming, to achieve its electronic code lock functionThe lock design is reasonable, simple, low cost, in line with re- sidential, office with a lock request, the promotion of a certain valueKEYWORDS:code-lock;Single Chip Micro-Computer目录1 密码锁设计课题任务、功能要求说明及总体方案介绍 (1)1.1 密码锁课题任务及功能要求 (1)1.2 密码锁设计总体方案介绍及工作原理说明 (1)2 密码锁硬件系统的设计 (2)2.1 密码锁硬件系统各模块功能简要介绍 (2)2.2 密码锁电路原理图、PCB图、元器件布局图各1份 (2)2.3 密码锁元器件清单 (2)3 密码锁软件系统的设计 (3)3.1 密码锁设计使用单片机资源的情况 (3)3.2 密码锁设计软件系统各模块功能简要介绍及流程图 (3)3.2.1 键盘扫描程序 (4)3.2.2 显示程序 (5)3.2.3 密码判断程序 (6)3.2.4 错误报警程序 (7)3.3 密码锁设计程序清单 (7)4 设计结论、缺陷分析、心得体会、教学建议 (8)4.1 密码锁的设计结论及使用说明 (8)4.2 密码锁设计的缺陷分析 (8)4.3 心得体会 (8)4.4 教学建议 (8)结束语 (9)致谢 (10)参考文献 (11)附录 (12)1 密码锁设计课题任务、功能要求说明及总体方案介绍1.1 设计课题任务设计一个具有特定功能的密码锁。

该密码锁上电或按键复位后能自动显示系统提示符“P.”,进入准备工作状态。

该密码锁具有系统原始密码888888,用户可以设定并存储用户密码,密码输入时应处于保密显示状态,密码输入正确时应显示密码输入正确提示信息,否则,显示密码输入错误提示信息。

1.2 设计课题总体方案介绍及工作原理说明(1)原始密码的设定,此密码是固定在程序存储器ROM中,假设预设的密码为“888888”共6位密码。

(2)密码的输入:采用按键来完成密码的输入,输入时密码处于显示保密状态,输入六位密码后,自动结束输入,并判断其正确性(3)密码若输入错误,显示输入错误提示信息,密码输入正确后,可以用键盘任意输入数字,若按下第八个按键,则进入修改密码(4)密码修改:可以任意输入“1-7”中的六位数字作为密码,密码输入时处于保密显示状态,六位密码输入结束确认后显示P.图1 设计总框图2.1 设计课题硬件系统各模块功能简要介绍此次课程设计是基于单片机控制的电子密码锁,结合主要设计条件,本设计由单片机系统、独立式键盘、LED显示和报警系统组成,系统能完成开锁、错误报警、密码修改功能等功能,设计硬件系统如下:(1)单片机系统:此次课题采用一种是用以80C51为核心的单片机控制方案。

利用单片机灵活的编程设计和丰富的IO端口,及其控制的准确性,进行电子密码锁的设计。

此次课题用单片机P1口与键盘相连,做输入口,P0口与显示器相连,输入段控码,P2口输入位控码。

(2)独立式键盘接口电路:此次课程设计采用独立式键盘,与P1口相连,采用扫描法。

(3)LED显示:此次课程设计6密码8显示器,按键后即显示,动态显示。

P0口送示数据,P2口显示扫描,根据按键次数,第一位显示器显示第一次按的密码,第二位显示器显示第二次按的密码,第三位显示器显示第三次按的密码,依此第六位显示器显示第六次按的密码。

(4)报警系统:此次课程设计,当输入密码错误后,系统报警,报警装置由一扬声器实现,从P3.1口输出脉冲,使扬声器鸣报警。

2.2 密码锁电路原理图、PCB图、元器件布局图各1份电路原理图见附录1PCB 顶层图见附录2PCB 底层图见附录3元器件布局图见附录42.3 密码锁元器件清单元器件清单见附录53.1 密码锁设计使用单片机资源的情况原始密码存放在内部程序存储器中,78H-7FH单元做字形代码缓冲区,70H-77H单元做数据比较缓冲区,61H-66H作为新密码存放区,88H-8DH做密码缓冲区。

3.2 密码锁设计软件系统各模块功能简介及流程图密码锁软件的设计主要包括:键盘扫描、密码显示、密码比较、密码修改、错误报警。

程序设计总流程图如图2所示:图2 程序设计总流程图3.2.1 键盘扫描程序:本设计采用独立式键盘,共八个按键,程序开始时,先给P1口送高电平,有按键按下后,相应的P1口线会变为低电平,将P1口的电平取反,再送到20H 中,20H为可位寻址区,通过查询20H的八位,即可得到是哪个按键按下,就可以转向每个按键所要执行的程序。

键盘扫描程序流程框图如图3所示:图3 键盘扫描程序流程图3.2.2 显示程序:本设计采用数码管共阳极显示,位控由P0口输出,段控由P2口输出,程序开始后,先对程序初始化,选好寄存器以及查表显示的表地址,先将低位位控码送到P2口,然后通过查表得到段控码,并送到该位,这样依次查完八位,使八位数码管显示,以此循环。

显示程序流程图如图4所示:图4 显示程序流程图3.2.3 密码判断程序:原密码存放在内部程序存储器中,程序开始后,上电后通过键盘输入六位密码来解锁,六位密码输入完后,会自动判断是否与原始密码相同,相同的话可以解锁,解锁后可以更改用户密码,若与原始密码不同,则出错报警,然后按复位键可以重新输入。

修改完用户密码后若再解锁,步骤与上述相同。

密码判断程序流程图如图5所示:图5 密码判断程序流程图3.2.4 错误报警程序密码输入错误后,会进入自动错误报警,报警时数码管上会显示“ERROR”字样,蜂鸣器会响,与蜂鸣器连在一起的LED灯也会亮,从而实现错误报警。

错误报警程序流程图如图6所示:N图6 密码修改程序流程图3.3 密码锁设计程序清单程序清单见附录64 设计结论、缺陷分析、心得体会、教学建议4.1 密码锁设计结论及使用说明该密码锁基本实现了开锁,修改用户密码,错误报警等功能,具有一定的应用推广价值。

密码锁上电后,屏幕上会显示“P.”,通过键盘可以输入六位密码,密码输完后,可以自动判断与原始密码是否相同,若相同则开锁,若错误则按复位键回到原始”P.”;并可以任意输入1-7在数码管显示;按下第八个键可以修改用户密码,用户密码也应修改选取数字1-7的六位密码,按确认后又可回到输密码状态“P.”;在修改密码后,如果出现密码输入错误,则可按任意键返回到输密码状态重新输入密码。

4.2 密码锁设计的缺陷分析本设计的密码锁不能进行掉电保护,即用户修改密码后不能进行密码保存,掉电后密码就变为原始密码,在实际应用中还须进行改进,例如在硬件电路中加入存储芯片24C02。

由于硬件电路的限制,按键过少,使有些功能缺失或复杂,在实际应用中可采用行列式键盘。

4.3 心得体会回顾起此次单片机课程设计,让我感慨很多,从选题到定稿,从理论到实践,在整整两个星期的日子里,巩固了以前所学过的知识,而且学到了很多书本上所没有学到过的知识。

在本次设计的过程中,我发现很多的问题,单片机课程设计的重点就在于软件算法的设计,需要有很巧妙的程序算法,虽然以前写过几次程序,但我觉得写好一个程序不是一件简单的事情。

通过这次实习,我真正学到了不少东西,真正体会到了理论联系实际的重要性。

课堂教学考虑到大多数同学的需求,主要强调基本知识,基本理论,基本方法,基本技能。

而这次设计正是为我们提供了一个深入学习、探索的机会,成为课堂教学的有益补充。

4.4 教学建议在这一学期的单片机学习里,老师很系统的讲解了单片机这门课程,思路清晰、明了,我们也学会了很多。

但老师在布置作业的时候有时有点即兴发挥,有时我们也搞不清到底哪些是做到作业本上,所以有时候会有点迷惑。

希望老师在以后的教学过程中更出色,更完美。

通过近两周的设计,由单片机为控制核心的密码锁终于设计成功了,整个设计过程有苦有甜,从定稿到编程再到实物测试,整个过程是辛苦的,但我收获了很多,学到了许多课本上没有的东西,增强了自己的动手能力,还培养了自己查阅资料,自学的技能,总之,是获益匪浅的。

相关文档
最新文档