智能密码锁单片机课程设计
单片机数字密码锁课程设计报告
.专业:电子信息工程一、设计内容:数字密码锁二、设计要求:(一)基本要求1、利用889C51作为控制器组成一数字型码锁。
2、开锁动作用LED管模拟。
3、开锁代码由小健盘输入,且同时有4位LED显示器上显出来,当你输入的四位数字与原存的密码完全相同时,则将锁打开。
4、密码可由小键盘输入进行改写。
5、修改密码,必须在30秒内完成,否则将发出报警号。
6、锁门与否,可由一开关控制,每次按Enter键时,89C51根据此开关的状态决定锁住或打开。
(二)扩展功能1、键盘增加退格键、清除键和复位键。
2、三次输入密码不正确,系统将锁定,输入代码将无效。
按复位键后,将解除锁定。
三、设计所需硬件及结构图:(一)硬件:AT69C52,8255A,MAX232,2803,按钮键盘,电容,排阻若干(二)硬件结构图:6位数码管AT89C52 8255A小键盘发光二极管四、程序流程图五、软件软程序代码PA EQU 7CFFH;A 口地址PB EQU 7DFFH;B 口地址CTR EQU 7FFFH;控制字地址YR1 EQU 30H;密码存储单元YR2 EQU 31H;YR3 EQU 32HYR4 EQU 33HNEW1 EQU 45H;用户输入密码存储单元NEW2 EQU 46HNEW3 EQU 47HNEW4 EQU 48HLOCK_TIMES EQU 35HORG 0000HJMP START_00ORG 0100H ;START_00:MOV YR1,#1H;初始密码为1234 MOV YR2,#2HMOV YR3,#3HCLR 02HMOV YR4,#4H;修改MAIN:MOV IE,#86H;开定时器0和外部中断1的中断SETB IT1LCALL KEYJB 02H,START;已经开始计时就不要再开始了MOV 50H,#08H;若是12mhz来算则R7应为0FFH,R3应为0F4HMOV 51H,#06HMOV TMOD,#01H;定时器定时工作方式1MOV TH0,#15HMOV TL0,#0AHSETB 02H;开始计时标志置1SJMP STARTSTART:MOV DPTR,#CTRMOV A,#80HMOVX @DPTR,ACLR PSW.1 ;PSW.1是是否进入重设密码功能的标志位,为0则没进入;反之则进入。
电子密码锁单片机课程设计
电子密码锁单片机课程设计一、课程目标知识目标:1. 学生理解单片机的基本原理,掌握其编程方法;2. 学生掌握电子密码锁的工作原理,了解其电路组成;3. 学生了解数字输入输出接口的使用,能运用相关知识进行密码锁设计。
技能目标:1. 学生能运用C语言进行单片机编程,实现电子密码锁的功能;2. 学生能够运用仿真软件对设计的电子密码锁进行调试与优化;3. 学生能够运用所学知识,解决实际电子密码锁单片机课程设计过程中遇到的问题。
情感态度价值观目标:1. 学生培养对单片机及电子技术的兴趣,提高学习积极性;2. 学生培养团队协作精神,提高沟通与协作能力;3. 学生培养创新意识,提高动手实践能力,增强自信心。
课程性质:本课程为实践性较强的课程,要求学生在理解理论知识的基础上,动手实践,完成电子密码锁单片机课程设计。
学生特点:学生处于高年级阶段,已具备一定的单片机编程和电子技术基础,具备独立思考和解决问题的能力。
教学要求:教师应注重理论与实践相结合,引导学生主动参与,培养学生的创新能力和实践能力。
在教学过程中,关注学生的学习进度和需求,及时调整教学策略,确保课程目标的达成。
通过本课程的学习,使学生能够将所学知识应用于实际项目中,提高综合运用能力。
二、教学内容1. 单片机基础理论:包括单片机结构、工作原理、编程语言(C语言)等,对应教材第1章至第3章内容。
- 单片机内部结构及功能;- 单片机工作原理及指令系统;- C语言编程基础及单片机程序设计方法。
2. 电子密码锁原理与设计:包括密码锁电路组成、工作原理、设计方法等,对应教材第4章内容。
- 电子密码锁电路组成及各部分功能;- 电子密码锁工作原理及设计要求;- 数字输入输出接口的使用及编程。
3. 单片机编程与调试:包括编程环境搭建、程序编写、仿真调试等,对应教材第5章内容。
- 编程环境(如Keil)的安装与使用;- 单片机程序编写、编译、下载;- 仿真软件(如Proteus)的使用及调试技巧。
51单片机四位密码锁课程设计
51单片机四位密码锁课程设计51单片机四位密码锁是一种常见的电子锁,它使用51单片机作为控制核心,通过输入四位密码来控制锁的开关。
本文将介绍关于51单片机四位密码锁的课程设计。
我们需要明确设计的目标和要求。
本设计的主要目标是实现一个四位密码锁系统,并且需要满足以下要求:1.能够输入四位数字密码。
2.密码输入正确时,能够解锁并输出解锁信号。
3.密码输入错误时,不能解锁。
4.能够重置密码。
接下来,我们将详细介绍设计的步骤和实现。
1.硬件设计:在硬件设计方面,我们需要准备以下器件:- 51单片机-数码管显示模块-按键模块-继电器模块-电源模块2.软件设计:在软件设计方面,我们需要编写51单片机的程序,通过编程实现密码锁的功能。
以下是设计的主要步骤:-初始化:设置输入输出引脚,并初始化时钟和数码管显示。
-输入密码:设计密码输入的函数,通过按键模块获取用户输入的密码。
-检验密码:设计密码检验的函数,将用户输入的密码与预设的密码进行比对。
-解锁信号:如果密码输入正确,输出解锁信号,通过继电器控制开关,实现解锁。
-密码错误:如果密码输入错误,通过数码管显示密码错误的提示信息。
-重置密码:设计密码重置的函数,将新设置的密码保存。
3.程序流程:根据以上设计的步骤,我们可以得到以下主要的程序流程:-初始化引脚和时钟。
-设置初始密码。
-进入主程序循环。
-接收用户输入的密码。
-检验密码是否正确。
-如果密码正确,显示解锁信号并控制继电器解锁。
-如果密码错误,显示密码错误信息。
-进入下一次循环。
4.调试和测试:完成程序编写后,我们需要进行调试和测试。
在测试过程中,我们需要输入正确和错误的密码进行验证,检查程序是否能够正常运行,并且能够正确判断和处理用户输入的情况。
5.优化改进:如果在测试中发现问题或不足之处,我们可以对程序进行优化和改进。
例如,可以增加密码输入的最大尝试次数,增加延时等待时间,增加密码保护等功能。
总结:通过对51单片机四位密码锁的课程设计,我们学习了如何使用51单片机编写程序,实现密码锁的功能。
51单片机四位密码锁课程设计
51单片机四位密码锁课程设计
课程设计如下:
1. 首先,介绍51单片机的基本知识和密码锁的原理,包括输入和输出端口的使用方法。
2. 确定密码锁的功能需求,如输入密码、验证密码、更改密码等。
3. 设计密码锁的硬件电路,包括矩阵键盘、LCD显示屏和继电器等。
4. 编写51单片机的程序代码,实现密码锁的功能。
5. 进行硬件和软件的调试,确保密码锁功能正常。
6. 进一步扩展密码锁的功能,如增加报警器、记录错误密码次数等。
7. 进行综合实验,将密码锁与其他设备或系统结合起来使用,如与门禁系统、智能家居系统等。
8. 对课程设计进行总结和展示,包括电路图、程序代码和实验结果等。
9. 学生通过实验,掌握51单片机的基本原理、密码锁的设计方法和调试技巧。
10. 学生能够在实际应用中灵活运用所学知识,设计和实现各种密码锁系统。
以上为课程设计的大纲,可以根据具体的实际情况进行细化和调整。
单片机密码锁课程设计
单片机课程设计报告题目:电子密码锁系别:班级:姓名:学号:指导老师:时间:目录一系统总体设计方案 (2)1设计课题任务 (2)2 功能要求说明 (2)3 总体方案介绍及工作原理 (2)二方案选择 (3)1 控制器: (4)2 键盘模块: (4)3显示模块: (5)三硬件部分 (5)四软件部分 (7)五总结 (8)1 系统总体设计方案1.1 设计课题任务设计一个具有特定功能的密码锁。
该密码锁上电或按键复位后显示小数点,进入准备工作状态。
该密码锁设有系统原始密码000000。
1.2 功能要求说明密码锁主要实现的功能是:在输入的密码正确时驱动继电器开锁,但错误时,蜂鸣器发出警报音。
1.3 总体方案介绍及工作原理电子密码锁的总体功能原理是以AT89S51单片机为主要的控制核心,通过外接4*4矩阵式键盘作为信号源,七段数码管阵列,继电器,蜂鸣器作为提示音器件,单片机实时的去执行相应的功能。
CPU控制原理图如下图所示。
三、方案选择1、控制器:由于这个题目不是很复杂,使用8位的单片机就可以完成,这里我们选用价格便宜使用较为广泛的AT89S51单片机。
2、键盘模块:数字密码锁的设计肯定是离不开键盘的,这里根据题目的要求只需要一个自制一个4*4的小键盘就能够满足要求了。
键盘在整个设计中也是很重要的,这里我们使用的是行扫描的方法读取键盘的值,其程序流程图如下:行扫描的原理就是逐行对键盘进行扫描,先扫描第一行,如果没有健按下就继续扫描第二行直道某一行有键按下就跳出扫描重头再来,若是扫描完四行后都没有键按下就返回。
键盘扫描和显示如下:3、显示模块:显示的方法有很多,比较简单的就是数码管的显示,这样就需要数码管阵列。
显示函数与片选信号要调整好;四、硬件部分硬件连接图:图2图2是整个设计的硬件连接图,由图可以看到键盘接在P1口,数码管的数据端口接在P0口,其控制端口和两个指示灯都接在P3口,总体的电路结构不是很复杂。
五、软件部分既然硬件部分比较简单那主要的任务就在程序的编写上了,总体程序流程图如下:图3进入系统后,首先的界面是输入密码,密码对就驱动继电器开锁,否则驱动蜂鸣器发声。
单片机课程设计密码锁设计
单片机课程设计密码锁设计在当今社会,安全问题越来越受到人们的重视,密码锁作为一种常见的安全防护设备,在保护个人财产和隐私方面发挥着重要作用。
本次单片机课程设计的任务就是设计一款基于单片机的密码锁。
一、设计要求本次设计的密码锁需要具备以下功能:1、能够设置和修改 4 位数字密码。
2、输入密码正确时,锁打开,并有相应的指示灯提示。
3、输入密码错误时,有错误提示,且错误次数超过 3 次则报警。
4、具备密码重置功能。
二、系统方案设计1、硬件设计单片机选型:选择 STC89C52 单片机作为核心控制器,其具有性能稳定、价格低廉、易于编程等优点。
输入模块:采用 4×4 矩阵键盘作为密码输入设备,可方便地输入数字和功能按键。
显示模块:选用 1602 液晶显示屏,用于显示密码输入状态、提示信息等。
存储模块:使用 EEPROM 芯片 AT24C02 来存储密码,以保证断电后密码不丢失。
报警模块:当密码输入错误次数超过 3 次时,通过蜂鸣器发出报警声音。
2、软件设计主程序:负责系统的初始化、键盘扫描、密码输入处理、密码验证、显示控制等。
键盘扫描程序:检测矩阵键盘上的按键动作,并将按键值返回给主程序。
密码处理程序:包括密码设置、修改、存储和验证等功能。
显示程序:控制 1602 液晶显示屏的显示内容。
三、硬件电路设计1、单片机最小系统包括单片机芯片、晶振电路和复位电路。
晶振为单片机提供时钟信号,复位电路用于系统的初始化。
2、矩阵键盘电路由16 个按键组成 4×4 矩阵,通过行线和列线的扫描来确定按键值。
3、显示电路1602 液晶显示屏通过数据总线和控制总线与单片机相连,实现数据的传输和显示控制。
4、存储电路AT24C02 通过 I2C 总线与单片机进行通信,用于存储密码数据。
5、报警电路蜂鸣器通过三极管驱动,当单片机输出高电平时,蜂鸣器发声报警。
四、软件程序设计1、主程序流程系统初始化,包括单片机端口初始化、液晶显示屏初始化、EEPROM 初始化等。
单片机电子密码锁课程设计
基于单片机的电子密码锁设计一、设计要求和条件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 引言 (1)2主要元器件介绍 (2)2.1主控芯片AT89S51 (2)2.1.1 AT89S51性能简介 (2)2.1.2 AT89S51引脚功能说明 (3)2.2 LCD1602显示器 (5)2.2.1接口信号说明 (5)2.2.2主要技术参数 (5)2.2.3 1602基本操作步骤 (5)3系统硬件 (7)3.1设计原理 (7)3.2电路总体构成 (7)3.3键盘输入部分 (8)3.4 LCD1602显示 (8)4系统软件设计 (10)4.1主程序模块 (10)4.2按键功能模块 (11)4.3修改密码模块 (13)4.4开锁模块 (14)参考文献 (16)附录 (17)1引言锁任务的电子产品。
它的种类很多,有简易的电路产品,也有基于芯片的性价比较高的产品。
现在应用电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁的电子密码锁是以芯片为核心,通过编程来实现的。
其性能和安全性已大大超过了机械锁。
在日常生活和工作中,住宅与部门的安全防范、单位的文件档案、财务报表以及一些个人资料的保存多以加锁的办法来解决。
目前门锁主要用弹子锁,其钥匙容易丢失;保险箱主要用机械密码锁,其结构较为复杂,制造精度要求高,成本高,且易出现故障,人们常需携带多把钥匙,使用极不方便,且钥匙丢失后安全性即大打折扣。
针对这些锁具给人们带来的不便若使用机械式钥匙开锁,为满足人们对锁的使用要求,增加其安全性,用密码代替钥匙的密码锁应运而生。
它的出现为人们的生活带来了很大的方便,有很广阔的市场前景。
由于电子器件所限,以前开发的电子密码锁,其种类不多,保密性差,最基本的就是只依靠最简单的模拟电子开关来实现的,制作简单但很不安全,在后为多是基于EDA来实现的,其电路结构复杂,电子元件繁多,也有使用早先的20引脚的2051系列单片机来实现的,但密码简单,易破解。
随着电子元件的进一步发展,电子密码锁也出现了很多的种类,功能日益强大,使用更加方便,安全保密性更强,由以前的单密码输入发展到现在的,密码加感应元件,实现了真正的电子加密,用户只有密码或电子钥匙中的一样,是打不开锁的,随着电子元件的发展及人们对保密性需求的提高出现了越来越多的电子密码锁。
单片机课程设计:智能密码锁系统
智能密码锁系统一、电子密码锁概述随着社会物质财富的日趋增加和人们生活水平的提高,安全成为现代居民最关心的问题之一。
而锁自古以来就是把守门的铁将军,人们对它要求甚高,即要求靠得住地防盗,又要利用方便,这也是制锁者长期以来研制的主题。
传统的门锁既要备有大量的钥匙,又要担忧钥匙丢失后的麻烦。
另外,如:宾馆、办公大楼、仓库、保险柜等,由于装修施工等人住时也要把原有的锁胆改换,何况钥匙随身携带也诸多便。
随着单片机的问世,出现了带微处置器的密码锁,它除具有电子密码锁的功能外,还引入了智能化、科技化等功能。
从而使密码锁具有很高的安全性、靠得住性。
目前西方发达国家已经大量应用智能门禁系统,设计本课题时构思的方案:采用以AT89S52为核心的单片机控制方案,能避免多次试探而不被破译,从而有效地克服了现实生活中存在的许多缺点。
二、设计要求(1)总共能够设置8位密码,每位密码值范围1—8。
(2)用户能够自行设定和修改密码。
(3)按每一个密码键时都有声音提示。
(4)若键入的8位开锁密码不完全正确,则报警5秒钟。
(5)开锁密码错3次要报警1分钟,报警期间输入密码无效,以防窃贼多次试探密码。
(6)键入的8位开锁密码完全正确才能开锁,开锁时要有1秒的提示音。
(7)电磁锁的电磁线圈每次充电5秒,然后恢复初态。
(8)密码键盘上只有8个密码按键,锁内有备用电池,只有内部上电复位时才能设置或修改密码,因此,仅在门外按键是不能修改或设置密码的。
(9)密码设定完毕后要有2秒的提示音。
三、系统主要功能和特点1.系统主要功能本系统主要由AT89S52单片机系统、键盘、复位电路、晶振电路、LED显示、驱动、电磁阀、蜂鸣器报警系统等组成。
系统能完成开锁、超时报警、超次锁定、管理员解密、修改用户密码大体的密码锁的功能。
除上述大体的密码锁功能外,还具有开锁充电、声光提示等功能。
本系统本钱低廉,功能实用。
2.系统主要特点电子密码锁控制是一种通过密码输入来控制电路工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。
单片机课程设计密码锁设计
1 设计课题任务、功能要求说明及总体方案介绍1.1 设计课题任务设计一个具有特定功能的密码锁。
该密码锁上电或按键复位后能自动显示系统提示符“P.”,进入准备工作状态。
该密码锁具有系统原始密码888888,用户可以设定并存储用户密码,密码输入时应处于保密显示状态,密码输入正确时应显示密码输入正确提示信息,否则,显示密码输入错误提示信息。
1.2 总体方案介绍及工作原理说明(1)原始密码的设定,此密码是固定在程序存储器ROM中,假设预设的密码为“888888”共6位密码。
(2)密码的输入:采用按键来完成密码的输入,输入时密码处于显示保密状态,输入六位密码后,自动结束输入,并判断其正确性(3)密码若输入错误,显示输入错误提示信息,密码输入正确后,可以用键盘任意输入数字,若按下第八个按键,则进入修改密码(4)密码修改:可以任意输入“1-7”中的六位数字作为密码,密码输入时处于保密显示状态,六位密码输入结束确认后显示P.。
图1 设计总框图2 密码锁硬件系统的设计2.1 密码锁硬件系统各模块功能简要介绍此次课程设计是基于单片机控制的电子密码锁,结合主要设计条件,本设计由单片机系统、独立式键盘、LED显示和报警系统组成,系统能完成开锁、错误报警、密码修改功能等功能,设计硬件系统如下:(1)单片机系统:此次课题采用一种是用以AT89S52为核心的单片机控制方案。
利用单片机灵活的编程设计和丰富的IO端口,及其控制的准确性,进行电子密码锁的设计。
此次课题用单片机P1口与键盘相连,做输入口,P0口与显示器段控相连,输入段控码,P2口输入位控码。
(2)独立式键盘接口电路:此次课程设计采用独立式键盘,与P1口相连,键按下则会使该端口变成低电平,单片机读P1口,通过对P1口数据的判断来确定哪一个键按下。
(3)数码管显示模块:此次课程设计采用的是共阴数码管,P0口段控,P2口送位控,八个数码管共用八根段控,由位控决定在哪一位显示。
单片机课程设计——数字密码锁
课程设计课程名称:单片机原理与应用课题名称:数字密码锁设计所在学院名称:湖南大学电气与信息工程学院目录一、前言..................................... - 3 -二、总体方案设计.............................. - 3 -2.1方案论证与比较 ................................................................. - 3 -2.2方案选择............................................................................. - 4 -三、单元模块设计.............................. - 4 -3.1硬件支持............................................................................. - 4 -3.2功能单元模块设计.............................................................. - 4 -3.2.1 开锁机构 .................................................................. - 4 -3.2.2 矩阵键盘设计电路 ................................................... - 5 -3.2.3 声音提示电路设计 ................................................... - 6 -3.2.4 显示模块设计........................................................... - 7 -四、程序设计与系统仿真.......................... - 8 -4.1 模块介绍............................................................................ - 8 -4.1.1 主程序模块............................................................. - 10 -4.1.2 密码比较判断模块 ................................................. - 10 -4.1.3 键盘扫描模块......................................................... - 10 -4.1.4 修改密码模块......................................................... - 11 -五、系统功能 .................................. - 13 - 六.设计总结 .................................. - 13 - 七、附录:源程序............................... - 13 -一、 前言随着社会物质财富的日益增长和人们生活水平的提高,安全成为现代居民最关心的问题之一。
单片机密码课程设计
单片机密码课程设计一、课程目标知识目标:1. 理解单片机的基本原理和功能,掌握密码锁的基本工作原理;2. 学会使用C语言或汇编语言进行单片机编程,实现对密码锁的控制;3. 掌握单片机密码锁系统的硬件连接和调试方法。
技能目标:1. 能够运用所学的单片机知识,设计并实现一个简单的密码锁系统;2. 培养学生动手实践能力,学会使用相关工具和仪器进行硬件调试;3. 提高学生的问题分析和解决能力,能够在遇到问题时进行有效排查和修改。
情感态度价值观目标:1. 培养学生对单片机及嵌入式系统的兴趣,激发学生学习主动性和创新精神;2. 培养学生的团队协作意识,学会与他人共同分析和解决问题;3. 增强学生的自信心,让他们在实际操作中体验成功,形成积极的学习态度。
分析课程性质、学生特点和教学要求,本课程旨在通过单片机密码锁的设计与实现,使学生掌握单片机基本知识和技能,培养实际操作能力,提高解决实际问题的能力。
课程目标具体明确,可衡量,便于后续教学设计和评估。
通过本课程的学习,学生将能够独立完成一个简单的单片机密码锁项目,为今后的学习和工作打下坚实基础。
二、教学内容1. 单片机基础理论:介绍单片机的组成、工作原理和性能特点,涉及课本第二章内容。
- 单片机内部结构- 工作原理和指令系统- 性能参数与选型2. 单片机编程语言:学习C语言或汇编语言编程,针对单片机密码锁项目进行编程实践,涉及课本第三章内容。
- 编程语法基础- 单片机编程技巧- 编程实例解析3. 硬件设计:介绍单片机密码锁硬件设计,包括原理图绘制、元器件选型、电路板设计等,涉及课本第四章内容。
- 原理图绘制方法- 元器件选型原则- 电路板设计技巧4. 系统编程与调试:学习单片机密码锁系统的编程与调试方法,包括程序下载、硬件调试等,涉及课本第五章内容。
- 程序下载与烧录- 硬件调试方法- 故障排查与解决5. 项目实践:根据教学进度,安排学生进行单片机密码锁项目实践,将所学知识应用于实际项目中,巩固所学内容。
单片机电子密码锁课程设计
单片机电子密码锁课程设计一、课程目标知识目标:1. 让学生理解单片机的基本原理和功能,掌握电子密码锁的基本工作原理。
2. 使学生掌握电子密码锁设计中涉及的编程知识,如C语言基础、寄存器操作等。
3. 帮助学生了解电子密码锁电路的组成,熟悉相关电子元器件的使用。
技能目标:1. 培养学生运用所学知识设计并实现一个简单的单片机电子密码锁的能力。
2. 提高学生动手实践能力,学会使用编程软件、烧录器和相关调试工具。
3. 培养学生团队协作和问题解决能力,学会分析电子密码锁故障并找出解决办法。
情感态度价值观目标:1. 激发学生对电子制作的兴趣,培养创新意识和动手能力。
2. 培养学生严谨的科学态度,注重实验数据和实验结果的准确性。
3. 引导学生关注单片机技术在日常生活中的应用,提高对科技的认识和热爱。
本课程针对高年级学生,他们在之前的学习中已经具备了一定的电子和编程基础。
因此,课程设计将注重实践操作,以项目为导向,让学生在动手实践中巩固知识,提高技能。
通过本课程的学习,学生将能够独立设计并实现一个具有实用价值的单片机电子密码锁,提升解决实际问题的能力。
二、教学内容1. 单片机基础原理:回顾单片机的组成、工作原理,重点讲解51单片机的内部结构、时钟电路和复位电路。
教材章节:第三章《单片机原理与接口技术》2. C语言编程基础:介绍C语言在单片机编程中的应用,讲解数据类型、运算符、控制语句等基本语法。
教材章节:第四章《单片机C语言编程》3. 电子密码锁原理:讲解电子密码锁的基本工作原理,分析锁体的电路组成和功能。
教材章节:第七章《单片机应用实例》4. 硬件设计:学习并设计电子密码锁的硬件电路,包括键盘输入、显示模块、锁驱动电路等。
教材章节:第五章《单片机接口技术》5. 软件设计:编写电子密码锁的控制程序,实现密码输入、校验、开锁等功能。
教材章节:第四章《单片机C语言编程》6. 系统调试与优化:学习使用调试工具,对电子密码锁系统进行调试和优化。
51单片机密码锁课程设计
51单片机密码锁课程设计一、课程目标知识目标:1. 掌握51单片机的基本原理与编程方法;2. 了解密码锁的工作原理,理解51单片机在密码锁中的应用;3. 学会使用相关电路元件,如按键、显示屏等,实现与51单片机的交互;4. 掌握密码锁程序的设计与调试,学会使用开发工具进行编程。
技能目标:1. 能够运用C语言编写51单片机程序,实现密码锁的基本功能;2. 能够独立设计电路图,连接相关元件,搭建51单片机密码锁的硬件系统;3. 学会使用调试工具,对密码锁程序进行调试,找出并解决问题;4. 提高动手实践能力,培养团队协作和问题解决能力。
情感态度价值观目标:1. 培养学生对电子制作的兴趣和热情,激发创新意识;2. 培养学生严谨、细心的科学态度,提高学生对工程实践的认识;3. 增强学生的自信心和成就感,鼓励学生积极参与科技竞赛和实践活动;4. 培养学生的团队协作精神,提高沟通与表达能力。
课程性质:本课程为实践性课程,结合理论知识,注重培养学生的动手能力和实际问题解决能力。
学生特点:学生具备一定的电子基础知识,对单片机编程有一定了解,但实践经验不足。
教学要求:教师需引导学生从理论到实践,注重培养学生的创新意识和实际操作能力,关注个体差异,因材施教。
通过课程学习,使学生能够独立完成51单片机密码锁的设计与制作。
二、教学内容1. 理论部分:a. 51单片机原理及结构介绍;b. C语言编程基础,重点讲解与51单片机相关的语法和编程技巧;c. 密码锁工作原理及其在51单片机中的应用;d. 介绍相关电路元件的原理及使用方法。
2. 实践部分:a. 搭建51单片机密码锁硬件系统,包括按键输入、显示输出等;b. 编写密码锁程序,实现密码设置、修改、验证等功能;c. 使用调试工具进行程序调试,分析并解决可能出现的问题;d. 优化程序,提高密码锁的稳定性和安全性。
教学大纲:1. 第一周:51单片机原理介绍,C语言编程基础;2. 第二周:密码锁工作原理,电路元件介绍;3. 第三周:搭建硬件系统,编写基础程序;4. 第四周:调试与优化程序,完善密码锁功能;5. 第五周:总结与展示,课程评价。
单片机课程设计密码锁
单片机课程设计密码锁一、课程目标知识目标:1. 理解单片机的基础知识,掌握其基本原理和编程方法;2. 学习并掌握密码锁的原理与设计,能够运用单片机实现密码锁功能;3. 了解并掌握相关传感器和执行器的使用,实现密码锁的输入和输出控制。
技能目标:1. 能够运用所学知识,设计并编写出实现密码锁功能的单片机程序;2. 掌握使用相关调试工具,对单片机程序进行调试和优化;3. 提高学生的动手能力,培养实际操作中解决问题的能力。
情感态度价值观目标:1. 激发学生对单片机及电子制作的兴趣,培养创新意识和实践精神;2. 培养学生团队协作精神,学会与他人共同解决问题;3. 引导学生关注科技发展,了解单片机在现实生活中的应用,增强社会责任感。
课程性质:本课程为实践性较强的课程,旨在通过单片机实现密码锁的设计与制作,让学生在动手实践中掌握单片机知识。
学生特点:学生处于高年级阶段,已具备一定的单片机基础,对实际应用有较高的兴趣。
教学要求:结合学生特点和课程性质,注重实践操作,强调理论知识与实际应用相结合。
通过课程学习,使学生能够独立完成一个具有实际应用价值的单片机项目。
在教学过程中,关注学生的学习进展,及时调整教学策略,确保课程目标的实现。
将目标分解为具体的学习成果,便于后续教学设计和评估。
二、教学内容1. 单片机基础知识回顾:C语言编程基础,单片机工作原理,I/O口编程。
教材章节:第一章单片机基础。
2. 密码锁原理与设计:- 密码锁的组成和工作原理;- 矩阵键盘原理与编程;- 密码比对算法;教材章节:第三章输入输出接口,第六章矩阵键盘。
3. 单片机与外部设备接口:- 传感器与执行器的应用;- 单片机与继电器、电磁锁等执行器的连接;教材章节:第四章传感器与执行器,第五章单片机与外部设备接口。
4. 程序设计与调试:- 程序结构设计;- 程序编写与调试;- 优化程序性能;教材章节:第七章程序设计与调试。
5. 实践操作:- 搭建电路,连接硬件;- 编写程序,实现密码锁功能;- 调试与优化;教材章节:实践操作部分。
单片机密码锁课程设计
单片机密码锁课程设计一、课程目标知识目标:1. 学生能够理解单片机的基本原理,掌握密码锁设计的硬件组成和工作原理。
2. 学生能够运用C语言编写简单的程序,实现密码锁的功能。
3. 学生了解密码锁的安全性,掌握基本的安全防护措施。
技能目标:1. 学生能够独立完成单片机密码锁的硬件连接,具备实际操作能力。
2. 学生能够运用所学知识,编写和调试程序,实现密码锁的开锁和关锁功能。
3. 学生能够通过小组合作,分析问题,解决问题,提高团队协作能力。
情感态度价值观目标:1. 学生培养对单片机及电子制作的兴趣,激发创新精神。
2. 学生树立安全意识,认识到技术在实际应用中的重要性。
3. 学生在团队协作中,学会尊重他人,提高沟通表达能力。
课程性质:本课程为实践性课程,结合理论知识,培养学生的动手操作能力和实际应用能力。
学生特点:学生处于初中阶段,对新鲜事物充满好奇,具备一定的逻辑思维能力,但实践经验不足。
教学要求:教师需注重理论与实践相结合,引导学生主动探究,关注学生的个体差异,提高学生的实践操作能力。
在教学过程中,将课程目标分解为具体的学习成果,便于教学设计和评估。
1. 理论知识:- 单片机原理与结构:介绍单片机的基本组成、工作原理及功能。
- C语言基础:讲解C语言的基本语法、数据类型、运算符、控制结构等。
- 密码锁原理:分析密码锁的硬件组成、工作原理及安全性。
2. 实践操作:- 硬件连接:指导学生完成单片机、键盘、显示模块等硬件的连接。
- 程序编写:教授学生编写密码锁程序,实现开锁、关锁等功能。
- 调试与优化:引导学生分析程序运行过程中出现的问题,并进行调试和优化。
3. 教学大纲:- 第一周:单片机原理与结构学习,C语言基础学习。
- 第二周:密码锁原理学习,讨论密码锁的安全性。
- 第三周:硬件连接,小组合作进行程序编写。
- 第四周:程序调试与优化,总结与反思。
4. 教材章节:- 单片机原理与结构:教材第1章。
- C语言基础:教材第2章。
单片机课程设计―智能密码锁.
湖南工程学院课程设计课程名称单片机原理与应用课题名称智能密码锁设计专业电子信息工程班级0981 班学号200913020109姓名刘维新指导教师汪超、李晓秀、李世军等2012 年5 月18 日湖南工程学院课程设计任务书课程名称单片机原理与应用课题智能密码锁设计专业班级电子信息0981班学生姓名刘维新学号200913020109指导老师汪超、李晓秀、李世军等审批任务书下达日期2012 年 5 月7 日任务完成日期2012 年5 月18 日设计内容与设计要求设计内容:1、密码的设定,此密码是固定在程序存储器ROM中,假设预设的密码为“12345”共5位密码。
2、密码的输入:采用两个按键来完成密码的输入,其中一个按键为功能键,另一个按键为数字键。
在密码都已经输入完毕并且确认功能键之后,才能完成密码的输入过程。
然后进入密码的判断比较处理状态并给出相应的处理过程。
3、按键禁止功能:初始化时,允许按键输入密码,当有按键按下并开始进入按键识别状态时,按键禁止功能被激活,但启动的状态是在3次密码输入不正确的情况下发生的。
设计要求:1、设计方案要合理、正确;2、系统硬件设计及焊接制作;3、系统软件设计及调试;4、系统联调;5、写出设计报告。
主要设计条件1、MCS-51单片机实验操作台1台;2、PC机及单片机调试软件;3、单片机应用系统板1套;4、制作工具1套;5、系统设计所需的元器件。
说明书格式1.封面2.课程设计任务书3.目录4.系统总体方案设计5.系统硬件设计6.软件设计(包括流程图7.系统的安装调试说明8、总结9、参考文献10、附录(源程序清单及硬件原理图等;11、课程设计成绩评分表。
进度安排设计时间为两周第一周星期一、上午:布置课题任务,讲课及课题介绍下午:借阅有关资料,总体方案讨论星期二、确定总体设计方案星期三、硬件模块方案设计星期四、软件模块方案设计星期五、设计及调试第二周星期一、设计及调试星期二、设计及调试星期三、总调星期四、写说明书星期五、上午:写说明书,整理资料下午:交设计资料,答辩参考文献[1]、《微型计算机原理及应用》许立梓编机械工业出版社 2002[2]、《微型计算机接口技术及应用》刘乐善编华中理工大学出版社 2000[3]、《计算机硬件技术基础试验教程》邹逢兴编高等教育出版社 2000[4]、《16位微型计算机原理接口及其应用》周佩玲编中国科学技术大学出版社2000[5]、《微型计算机原理与接口技术》吴秀清编中国科学技术出版社 2001[6]、《微型计算机接口技术》邓亚平编清华大学出版社 2001[7]、《单片机原理及及应用》王迎旭编机械工业出版社 2001[8]、《单片机应用程序设计技术》周航慈著北京航空航天大学出版社 2002[9]、《单片机实用技术问答》谢宜仁主编人民邮电出版社 2002第1章单片机系统概述1.1 单片机的介绍随着科技的飞速发展,单片机随之诞生,它被人么运用到生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。
基于单片机电子密码锁的课程设计
基于单片机电子密码锁的课程设计本文将介绍基于单片机电子密码锁的课程设计,包括设计目的、设计理念、硬件设计、软件实现和实验结果。
通过这篇文档,读者可以了解到使用单片机进行电子密码锁设计的方法和步骤,并了解到电子密码锁在现代生活中的应用。
一、设计目的本次课程设计的主要目的是为了加深学生对单片机的理解和应用,同时锻炼学生的设计能力和实践能力。
通过电子密码锁的设计,可以培养学生的系统思维和解决问题的能力,同时也可以让学生了解到电子密码锁在现代生活中的应用。
二、设计理念电子密码锁是一种智能化的安全设备,其设计理念是通过输入密码来进行开锁,实现门禁控制和安全防护的功能。
本次课程设计的设计理念是通过单片机控制电子密码锁的开关,实现对门禁的控制和管理。
同时,本次设计还考虑到了密码的安全性和可靠性,确保用户信息的安全和可靠性。
三、硬件设计1、硬件模块本次课程设计的硬件模块主要包括单片机模块、显示屏模块、键盘模块、电子锁模块和电源模块。
2、模块连接单片机模块、显示屏模块、键盘模块、电子锁模块和电源模块之间通过连线进行连接。
其中,单片机模块和显示屏模块之间通过串口进行通讯,单片机模块和键盘模块之间通过IO 口进行通讯,单片机模块和电子锁模块之间通过IO口进行通讯,电源模块则为整个系统提供电源供应。
四、软件实现1、程序流程本次课程设计的程序流程主要包括初始化、密码输入、密码验证、开锁和关闭等步骤。
其中,初始化主要是对各个模块进行初始化和设置,包括显示屏、键盘、电子锁等模块的初始化和设置;密码输入是通过键盘输入密码,将密码存储在单片机中;密码验证是对密码进行比对,如果密码正确,则开锁,否则显示密码错误的提示信息;开锁则是对电子锁进行控制,将开关状态进行切换;关闭则是对电子锁进行控制,将开关状态进行切换。
2、代码实现本次课程设计的代码实现主要采用C语言进行编写,并通过Keil C IDE进行编辑和调试。
具体代码可以参照下面的代码:int main(void){ //初始化模块Init_LCD(); Init_Keypad(); Init_Lock(); while (1) { //获取用户输入的密码Get_Password(); //判断密码是否正确if(Check_Password()) { //解锁Unlock_Lock();//显示解锁成功信息Display_LCD("UnlockSuccessed"); } else { //显示解锁失败信息Display_LCD("Unlock Failed"); } }}五、实验结果通过本次课程设计,设计并制作出了一款基于单片机电子密码锁。
智能密码锁单片机课程设计
--湖南工程学院课程设计课程名称单片机技术与应用课题名称智能电子密码锁专业自动化班级学号姓名指导教师李晓秀、王迎旭2013年12月09日湖南工程学院课程设计任务书课程名称单片机原理及应用课题智能密码锁设计专业班级自动化1191学生姓名学号指导老师审批任务书下达日期2013年12月2日任务完成日期2013年12月15日目录第1章概述 01.1 课题设计要求 01.1.1 设计内容: 01.1.2 设计要求: 01.2 课题设计目的及意义 0第2章系统总体设计方案与说明 (1)2.1 系统硬件设计框图 (1)2.2 系统硬件工作原理 (1)第3章硬件电路设计 (3)3.1 I/O端口分配表 (3)3.2 时钟电路设计 (3)3.4 显示电路设计 (4)3.6 报警电路设计 (5)第4章应用软件设计 (6)4.1 主程序流程图 (7)4.2 子程序流程框图 (8)4.2.1 判断密码子程序流程图 (8)4.2.2 上锁子程序流程图 (8)4.2.3 修改密码子程序流程图 (9)4.2.5 报警子程序流程图 (10)第5章系统仿真 (11)5.1 系统仿真 (11)第6章硬件调试与结果分析 (12)6.1 硬件调试 (12)6.2 系统性能与操作说明 (13)6.3 系统结果分析 (14)第7章系统设计总结 (15)致谢 (15)附录A 系统硬件电路原理图 (16)附录B 程序清单 (17)电气与信息工程系课程设计评分表 (34)第1章概述1.1课题设计要求1.1.1 设计内容:本课题是要发设计一种基于单片机控制的智能电子密码锁,主要功能有:按用户使用要求可设置、修改密码,遥控或按键开锁,错误报警、显示等辅助功能。
①密码可设4~8位,并可在线修改并存储;②密码输错3次应有报警信号提示,并有特殊密码解除;③出开锁时外的时候,要求显示的是北京时间;④信号可以通过继电器输出。
1.1.2设计要求:⑴根据课题要求,确定智能电子密码锁的硬件;⑵进行系统的硬件设计;⑶完成必要的参数计算与元器件选择;⑷完成应用程序设计;⑸进行单元电路及应用程序的调试;1.2 课题设计目的及意义学会灵活运用单片机,包括编程、下载和运行等,学会使用keil和protues编程和仿真。
基于单片机的电子密码锁的课程设计
基于单片机的电子密码锁的课程设计随着科技的发展,电子密码锁在日常生活中得到越来越广泛的应用。
电子密码锁具有安全性高、易于操作、使用方便等优点,受到了广泛的欢迎。
因此,在大学的课程设计中,基于单片机的电子密码锁也成为了一个热门的课程设计课题。
本文将介绍这个课程设计的步骤、具体内容和实现方法。
一、课程设计的步骤课程设计步骤主要包括需求分析、电路设计、程序设计和实验验证。
在需求分析阶段,需要明确电子密码锁的基本功能与操作流程,包括输入密码、判断密码正确性、开关门等。
在电路设计阶段,需要考虑到电路的可靠性、安全性以及实现的复杂度等因素。
在程序设计阶段,需要编写代码和测试程序。
在实验验证阶段,需要将课程设计投入实际应用,并测试其功能、稳定性等指标。
二、课程设计的具体内容1.硬件设计硬件设计主要包括电路设计和元器件选择两个部分。
电路设计主要包括输入密码电路、密码储存电路、密码判断电路和驱动开锁电路等。
元器件选择主要包括单片机、键盘、LCD屏幕和驱动芯片等。
2.软件设计软件设计主要包括系统流程设计、密码的输入和储存、密码的判断和开锁等功能的编写和测试。
3.系统整合系统整合是将硬件和软件组合到一起,实现功能的完整性并检测系统的稳定性和实用价值。
三、实现方法1.铁电非易失存储器电子密码锁需要存储用户密码信息,可以使用铁电非易失存储器来实现密码数据的存储和读取,铁电非易失存储器比普通存储器更加安全和稳定。
2.芯片加密在硬件电路的设计中,可以使用芯片加密的技术来提高电子密码锁的安全性。
通过软件和加密芯片相结合,可以防止非法破解和恶意攻击。
3.矩阵键盘在电子密码锁输入密码时,可以使用矩阵键盘来实现。
矩阵键盘的输入方式相比普通电子锁更加安全和方便。
综上所述,基于单片机的电子密码锁的课程设计不仅可以提高学生的电子技术和程序设计能力,还可以实现实用价值,为社会贡献力量。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
工程学院课程设计课程名称单片机技术与应用课题名称智能电子密码锁专业自动化班级学号姓名指导教师晓秀、王迎旭2013年12月09日工程学院课程设计任务书课程名称单片机原理及应用课题智能密码锁设计专业班级自动化1191学生学号指导老师审批任务书下达日期2013年12月2日任务完成日期2013年12月15日目录第1章概述 (1)1.1 课题设计要求 (1)1.1.1 设计容: (1)1.1.2 设计要求: (1)1.2 课题设计目的及意义 (1)第2章系统总体设计方案与说明 (2)2.1 系统硬件设计框图 (2)2.2 系统硬件工作原理 (2)第3章硬件电路设计 (4)3.1 I/O端口分配表 (4)3.2 时钟电路设计 (4)3.4 显示电路设计 (5)3.6 报警电路设计 (6)第4章应用软件设计 (7)4.1 主程序流程图 (8)4.2 子程序流程框图 (9)4.2.1 判断密码子程序流程图 (9)4.2.2 上锁子程序流程图 (9)4.2.3 修改密码子程序流程图 (10)4.2.5 报警子程序流程图 (11)第5章系统仿真 (12)5.1 系统仿真 (12)第6章硬件调试与结果分析 (13)6.1 硬件调试 (13)6.2 系统性能与操作说明 (14)6.3 系统结果分析 (15)第7章系统设计总结 (16)致谢 (16)附录A 系统硬件电路原理图 (17)附录B 程序清单 (19)电气与信息工程系课程设计评分表 (35)第1章概述1.1课题设计要求1.1.1 设计容:本课题是要发设计一种基于单片机控制的智能电子密码锁,主要功能有:按用户使用要求可设置、修改密码,遥控或按键开锁,错误报警、显示等辅助功能。
①密码可设4~8位,并可在线修改并存储;②密码输错3次应有报警信号提示,并有特殊密码解除;③出开锁时外的时候,要求显示的是时间;④信号可以通过继电器输出。
1.1.2设计要求:⑴根据课题要求,确定智能电子密码锁的硬件;⑵进行系统的硬件设计;⑶完成必要的参数计算与元器件选择;⑷完成应用程序设计;⑸进行单元电路及应用程序的调试;1.2 课题设计目的及意义学会灵活运用单片机,包括编程、下载和运行等,学会使用keil和protues编程和仿真。
通过本次课题设计真正的掌握单片机的设计和运用技术。
学会IIC虚拟总线、矩阵键盘、LCD1602的编程方法及使用第2章系统总体设计方案与说明2.1 系统硬件设计框图根据本系统设计的要求,以STC89C52RC单片机为核心设计了LCD1602显示电路,按键电路,AT24C02的IIC虚拟总线电路,蜂鸣器报警电路,指示灯显示电路,继电器模拟开锁电路。
同时也包括了单片机的最小系统(复位电路、晶振电路、电源电路)。
图2.1 系统结构图2.2系统硬件工作原理系统由单片机最小系统、1602液晶显示电路、矩阵键盘按键、LED显示电路和蜂鸣器报警电路等组成本电路是由STC89C52RC单片机为控制核心,具有与8051系列单片机完全兼容的效果。
51单片机为CPU,进行对外围电路的控制,当有密码输入时,检测所输入的密码是否正确,如果正确则CPU发送信号给显示电路,显示解锁信息,同时继电器打开,指示灯亮,表示解锁。
如果密码错误,1602提示错误,如果输入三次密码错误,则报警,同时锁住键盘。
只有通过PC机才能解除警报。
在解锁状态下,可以查看用户信息。
当上锁时,显示时间,每次显示的时间都存入24C02,以便下次上锁继续从此时间显示,在这期间是不能输入密码的。
当输入密码的时候想取消上次操作,可以按下取消键撤销。
如果忘记密码,可以通过PC机初始化密码。
第3章硬件电路设计3.1 I/O端口分配表对于本系统设计的需求和图2.1的系统结构图,其端口分配如表3-1所示。
表3-1 I/O端口分配表P0.0~P0.71602 D0~D7P3.5 24C02 SDAP2.0~P2.7矩阵键盘P3.6 1602 E P3.2 1602 RS P3.7 蜂鸣器P3.3 1602 RW P1.7 LED和继电器P3.4 24C02 SCK RXD、TXD PC串口线3.2 时钟电路设计时钟电路是采用部时钟电路,晶体频率是采用12MHZ的石英晶体,两个30pf的陶瓷电容谐振,机器周期为1us。
分别接在单片机的18和19管脚,电路图如图3.2所示。
图3.2 时钟电路3.3复位电路设计该系统设计是采用的按键上电复位电路,其中电阻是采用10K,22uF 的电解电容,还有一个按键产生按键复位接在单片机机的第9管脚。
其电路图如图3.3所示。
图3.3按键上电复位电路3.4 显示电路设计本系统设计所用的是背光的液晶1602,其作用是显示用户的当前操作。
LCD1602是一个16列×2行的显示屏。
其中数据管脚D0~D7接单片机的P0~P3管脚,寄存器选择管脚RS接单片机的P3.2管脚, 读写管脚R/W接P3.3,使能管脚E接P3.6。
电源正极VDD和背光正极A接VCC,电源负极VSS和背光负极K接GND,对比度管脚VEE接一个电位器来调节对比度。
其电路图如图3.4所示(由于仿真图的原因图中的电源管脚、电位器、背光正负极为画出)图3.4 LCD1602液晶显示电路3.5 按键电路设计根据本系统设计的结构图,需要用到16个键,作用和功能分别为10个数字键、修改密码、查看用户信息、解锁、上锁、确定、撤销。
为了节省单片机的I/O口,采用4×4的矩阵键盘方式,即键盘组合方式是4行4列。
其中行由上到下依次接P2.0~P2.3,列由左到右依次接P2.4~P2.7。
其功能和作用如图3.5所示。
图3.5 矩阵键盘按键电路3.6 报警电路设计当密码输错三次时,系统要求产生一个报警信号,用一个蜂鸣器来实现这一功能。
由P3.7引出接NPN三极管来控制三极管的导通与截止,三极管的发射极接100Ω的电阻。
其电路图如图3.6所示。
图3.6 蜂鸣器报警电路3.7模拟开锁电路和指示灯电路设计根据本系统设计要求要以一个继电器模拟开锁开关,当开锁的时候就可以产生一个开锁的信号,由P1.7引出接继电器,同时接一个指示灯的阴极来表示已开锁。
其电路图如图3.7所示。
图3.7继电器模拟开关电路第4章应用软件设计根据本系统设计需要实现的功能,采用了模块化编程。
因此设计了主程序,还有若干子程序。
其中主程序负责扫描键盘,负责对键盘的输入的命令进入子程序进行处理。
所有的子程序包括判断密码子程序,上锁子程序,修改密码子程序,查看用户信息和报警子程序。
图4 软件设计总流程图判断密码子程序的算法:将原密码读出存在一个数组b中,也将其长度存在一个变量longth中,将输入的密码也存在一个数组a中。
当按下确定键,两个数组比较是否相等。
上锁子程序算法:启用定时器中断,定时一秒变量sec加一,然后判断秒是否到60,再判断分是否到60,之后就分秒时都存入24C02的地址20,21,22当中。
修改密码子程序算法:沿用判断子程序的算法,同时用变量step来记录执行到第几步。
查看用户信息算法:不停的显示几个用户信息。
报警子程序算法:错误三次将蜂鸣器接通,之后一直扫描是否接收到PC机解除警报的信号。
4.1主程序流程图用户输入密码,输入正确则开锁,错三次报警,接收到初始化信号则密码初始化为1234,判断是否按下了查看用户信息键,在密码输入正确的情况下观看用户信息。
图如下:图4.1 主程序流程图4.2 子程序流程框图4.2.1 判断密码子程序流程图图4.2.1判断密码子程序流程图4.2.2上锁子程序流程图图4.2.2上锁子程序流程图图4.2.3 修改密码子程序流程图4.2.4 查看用户信息子程序流程图图4.2.4 查看用户子程序流程图4.2.5报警子程序流程图图4.2.5 报警子程序流程图第5章系统仿真5.1系统仿真通过keil将源程序编译成16进制 HEX文件,再加入到C51单片机中。
如下图所示。
图5.1.1 未运行时的仿真图通过点击运行按钮之后,仿真图开始运行。
图5.1.2 运行之后的仿真图第6章硬件调试与结果分析6.1硬件调试将keil编译生成的HEX16进制文件下载到单片机中,实物图如下图6.1.1 正在输入密码图6.1.3查看用户信息图6.1.4 修改密码输入旧密码界面图6.1.5 修改密码输入新密码界面图6.1.6 修改密码成功界面图6.1.7 电脑初始化密码界面图6.1.8 电脑解除警报界面6.2 系统性能与操作说明该密码锁的密码长度随用户自己设定(12位以),中间输错数字时可以撤销上次操作。
在密码正确的情况下可以查看用户信息,在密码错误三次的情况下,蜂鸣器会报警,需要在电脑用正确的用户名才能解除警报。
当忘记密码时,可以通过电脑用正确的用户名把密码初始化。
软件程序中在设定密码的尾部加了个字符‘a’,作为一个简单的加密工作。
电源一接通,LCD1602液晶显示屏显示“Input Password”用矩阵键盘扫描的方式进行查询按键,当按下的“确定”键,密码与所设定的密码相符合时,LCD1602显示“Unlock”,同时继电器模拟接通,指示灯也亮表示解锁。
解锁状态按下“查看用户信息键”的时候,可以循环查看用户信息。
此时按下“解锁”键可以进入主界面,即输入密码的界面。
按下了“修改密码”键,LCD1602显示“Old Password”,即输入旧密码,密码正确是才开始修改密码,LCD1602显示“New Password”, 两次输入一样则设置成功,LCD1602显示“Set Success”和你所设定的新密码,下次要输入的密码则需要新密码才能解锁。
如果两次新密码设置不一样则表示设置不成功,LCD1602显示“Set fail”。
如果输入旧密码错误则显示“Error”,锁定键盘三秒后进入主界面。
按下了“上锁”键,则LCD1602显示时间(由于缺少DS1302等时钟芯片,所以用总共上锁了多少时间来模拟显示时间)。
在输入密码的过程中想取消上次所输入的一个数字时,按下“撤销”键,可以取消上次所输入的数字。
如果输出三次密码则蜂鸣器报警。
6.3 系统结果分析在实物的调试过程中,解除警报这个操作是我调试用的最长时间,刚开始每次解除警报之后,下次输入密码反应很慢,而且错三次之后不能准确报警,但是复位之后才能再次正确运行。
因此我就想到了用软件复位,通过定义ISP_CONTR的SWRET位置1,使单片机复位,完美解决以上问题。
在所有程序测试完成之后,以前还行,目前没有发现问题。
第7章系统设计总结本系统可以随意修改密码(12位数字以的数字),查看用户信息,上锁显示时间,可以撤销很多上次输入。
通过PC机才可以解除警报,当忘记密码时,可以用PC机初始化密码。