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

合集下载

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

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

电子密码锁单片机课程设计一、课程目标知识目标:1. 学生理解单片机的基本原理,掌握其编程方法;2. 学生掌握电子密码锁的工作原理,了解其电路组成;3. 学生了解数字输入输出接口的使用,能运用相关知识进行密码锁设计。

技能目标:1. 学生能运用C语言进行单片机编程,实现电子密码锁的功能;2. 学生能够运用仿真软件对设计的电子密码锁进行调试与优化;3. 学生能够运用所学知识,解决实际电子密码锁单片机课程设计过程中遇到的问题。

情感态度价值观目标:1. 学生培养对单片机及电子技术的兴趣,提高学习积极性;2. 学生培养团队协作精神,提高沟通与协作能力;3. 学生培养创新意识,提高动手实践能力,增强自信心。

课程性质:本课程为实践性较强的课程,要求学生在理解理论知识的基础上,动手实践,完成电子密码锁单片机课程设计。

学生特点:学生处于高年级阶段,已具备一定的单片机编程和电子技术基础,具备独立思考和解决问题的能力。

教学要求:教师应注重理论与实践相结合,引导学生主动参与,培养学生的创新能力和实践能力。

在教学过程中,关注学生的学习进度和需求,及时调整教学策略,确保课程目标的达成。

通过本课程的学习,使学生能够将所学知识应用于实际项目中,提高综合运用能力。

二、教学内容1. 单片机基础理论:包括单片机结构、工作原理、编程语言(C语言)等,对应教材第1章至第3章内容。

- 单片机内部结构及功能;- 单片机工作原理及指令系统;- C语言编程基础及单片机程序设计方法。

2. 电子密码锁原理与设计:包括密码锁电路组成、工作原理、设计方法等,对应教材第4章内容。

- 电子密码锁电路组成及各部分功能;- 电子密码锁工作原理及设计要求;- 数字输入输出接口的使用及编程。

3. 单片机编程与调试:包括编程环境搭建、程序编写、仿真调试等,对应教材第5章内容。

- 编程环境(如Keil)的安装与使用;- 单片机程序编写、编译、下载;- 仿真软件(如Proteus)的使用及调试技巧。

电子密码锁课程设计

电子密码锁课程设计

电子密码锁课程设计一、实验目的1. 了解电子密码锁的工作原理和功能特点;2. 掌握单片机控制电子密码锁的方法;3. 实现简单的密码输入和密码验证功能;4. 提高学生的实际能力和动手能力。

二、实验原理电子密码锁系统是一种安全控制系统,能对进出某些区域的人员进行限制和管理。

它具有输入密码,验证密码和控制出入等功能。

电子密码锁通常由以下部分组成:键盘、单片机控制器、液晶显示器、声音提示器、锁芯以及供电电路等。

本实验设计采用AVR单片机实现电子密码锁的输入密码、验证密码和控制开锁等功能。

1. 输入密码:用户通过键盘输入密码,可输入4位数字密码。

各按键所代表的数字0~9的ASCII码值在程序中已定义好了。

单片机通过扫描键盘,在液晶显示器上实时显示输入的密码。

2. 验证密码:当用户输入4位数字密码完成后,单片机将输入的密码与预设密码进行比较,如果密码正确,则在液晶显示器上显示“Welcome”;如果密码错误,则在液晶显示器上显示“Wrong password”。

3. 控制开锁:在液晶显示器上显示“Welcome”后,单片机控制锁芯电机工作,并同时发出蜂鸣声,表示开锁。

开锁后,液晶显示器提示“Lock opened”;如果输入的密码错误,则不会开锁。

三、实验器材AVR开发板、电子密码锁电路板、1602液晶显示器、4*4矩阵键盘、蜂鸣器、12V电池、导线等。

四、实验步骤1. 按照电路图进行电路连接;2. 用AVR Studio或Keil等软件创建一个AVR单片机工程,编写以下程序:#include <avr/io.h>#include <avr/delay.h>#include <string.h>#include "lcd.h"#define true 1#define false 0unsigned char password[5] = "1234"; unsigned char buffer[6];unsigned char cursor = 0;unsigned char locked = false;unsigned char getKeyCode(){unsigned char i, j, k, key;for(i=0; i<4; i++){PORTB = 0x10 << i;_delay_us(10);k = PINB & 0b00001111;if(k == 0b00001111)continue;for(j=0; j<4; j++)if(k & (1 << j))return i*4+j;}return 0xFF;}void getPassword(){memset(buffer, 0x00, sizeof(buffer));cursor = 0;LCD_gotoxy(0, 1);LCD_puts("Enter password:");while(true){unsigned char key = getKeyCode();_delay_ms(50);if(key == 0xFF)continue;else if(key <= 9){if(cursor < 4){buffer[cursor++] = key + '0';LCD_gotoxy(cursor, 0);LCD_putchar('*');}}else if(key == 10){if(cursor == 4){if(strcmp(buffer, password) == 0){LCD_clrscr();LCD_puts("Welcome");locked = false;_delay_ms(3000);LCD_clrscr();}else{LCD_clrscr();LCD_puts("Wrong password");_delay_ms(3000);LCD_clrscr();}}getPassword();break;}else if(key == 11){if(cursor > 0){LCD_gotoxy(cursor--, 0);LCD_putchar(' ');buffer[cursor] = 0;}}}}void main(){DDRB = 0xF0;PORTB = 0x0F;LCD_init();LCD_puts("Please enter");LCD_gotoxy(0, 1);LCD_puts("password");while(true){if(!locked){PORTD |= 0b00000001;_delay_ms(1000);PORTD &= 0b11111110;_delay_ms(1000);}else{getPassword();}}}3. 编译、下载程序到AVR开发板中,连接电子密码锁电路板和单片机开发板上的接口电缆,接上12V电池;4. 按下电子密码锁电路板上的“reset”按键,程序开始运行,1602液晶显示器上提示“Please enter password”;5. 输入4位数字密码,按“#”键确认,系统进行密码比较,如果密码正确,则在液晶显示器上提示“Welcome”;如果密码错误,则在液晶显示器上提示“Wrong password”;6. 如果密码正确,则系统控制锁芯电机工作,并同时发出蜂鸣声,表示开锁。

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

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

第1章设计目的1.利用所学单片机的理论知识进行软硬件整体设计,锻炼学生理论联系实际、提高我们的综合应用能力。

2.我们这次的课程设计是以单片机为基础,设计出一个具有一定功能的电子密码锁。

3.掌握一些重要芯片的功能特性及使用方法,并能运用其组合成一个简单的单片机机应用系统。

4.锻炼同学们的动手能力和独立思考的能力,巩固理论知识,加深对课堂内容的理解。

5.培养同学们对单片机的兴趣,通过课程设计调动同学们的积极性,使更多的人将来能在单片机领域有所建树。

第2章设计要求及总体思路2.1设计要求1、密码的设定,此密码是固定在程序存储器ROM中,假设预设的密“12345”共5位密码。

2、密码的输入:采用两个按键来完成密码的输入,其中一个按键为功能键,另一个按键为数字键。

在密码都已经输入完毕并且确认功能键之后,才能完成密码的输入过程。

然后进入密码的判断比较处理状态并给出相应的处理过程。

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

2.2 总体思路系统总体设计方案框图如下:图2-1一般而言,要实现相同的功能,硬件复杂的系统其软件一般较简单,而软件复杂的系统其硬件一般相对简单,本着经济性的原则,我们应该尽可能少用硬件,根据这个设计理念和设计要求,本单片机系统的设计思路如下:1)电子密码锁所用的数据的存储和运算用单片机来完。

2)因为没有专用的输入键盘,所以按键输入用计算器输入键盘代替。

按键密码从P3口输入。

3)用六位显示器显示五位密码,显示器选择动态扫描,用P0口作段控,用P2口作位控。

4)开锁信号从P1.1口输出,报警信号从P1.0口输出。

5) 按键分为功能键和数字键,具体如表2-1。

6)输入五位密码后按确认键,系统验证密码是否正确,若密码正确,则产生开锁信号,若接连三次输入错误密码,则产生报警信号。

7) 当错误输入某位密码时,可按删除键进行删除,也可按清零键对所输入的数进行整体清除。

单片机密码锁课程设计

单片机密码锁课程设计

单片机课程设计报告题目:电子密码锁系别:班级:姓名:学号:指导老师:时间:目录一系统总体设计方案 (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 初始化等。

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

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

目录摘要----------------------------------------------------------- 3 关键字------------------------------------------------------------------------------------- 3 第一章前言----------------------------------------------------------------------------- 3 第二章基本功能设计--------------------------------------------------------------- 4⏹ 2.1 实验任务----------------------------------------------------------------- 4⏹ 2.2基本设计------------------------------------------------------------------ 4⏹ 2.3 系统框图-------------------------------------------------------------- -- 5 第三章硬件设计----------------------------------------------------------------------- 5 3.1硬件工作接线口---------------------------------------------------------------- 5 3.2 LED显示器结构与原理------------------------------------------------------- 6 3.3复位电路----------------------------------------------------------------------------- 6 3.4按键方式--------------------------------------------------------------------------- 7 3.5电路原理图------------------------------------------------------------------------- 8 3.6 元器件清单-------------------------------------------------------------------------9第四章软件设计-------------------------------------------------------------------- 10 4.1软件结构---------------------------------------------------------------------------------- 10 4.2源程序--------------------------------------------------------------------------------------12 第五章心得体会----------------------------------------------------------------------- 13 第六章参考文献----------------------------------------------------------------------- 14【摘要】电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,我们采取的是单片机,它具有超大规模集成电路技术,有极强的数据处理能力,I/O口多以它为核心设计的密码锁,结构小,功能强,现在很多单位甚至家里的各个家用电器,还有保险箱都需要它。

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

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

基于单片机的电子密码锁设计一、设计要求和条件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设计说明本次设计使用 ATMEL公司的 AT89C51 实现一基于单片机的电子密码锁的设计,其主要具有如下功能:①密码通过键盘输入,若密码正确,则将锁打开。

②报警、锁定键盘功能。

密码输入错误数码显示器会出现错误提示,若密码输入错误次数超过 3 次,蜂鸣器报警并且锁定键盘。

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

另外系统还有LED 提示灯,报警蜂鸣器等。

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

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

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

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

第二步,使用 DXP 20043设计硬件电路原理图,并设计 PCB图完成人工布线(后因 PCB 板损坏决定采用万能板焊接的方法)。

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

湖南学院课程设计课程名称课题名称电子密码锁设计专业测控技术与仪器班级测控学号姓名指导教师年月日湖南学院课程设计任务书课程名称课题电子密码锁设计专业班级测控学生姓名学号指导老师审批任务书下达日期年月日任务完成日期年月日目录第1章概述-------------------------------11.1 设计任务---------------------------------------------------------------------11.2 设计要求---------------------------------------------------------------------11.3 主要设计条件---------------------------------------------------------------1第2章系统总体方案设计------------------22.1单片机系统---------------------------------------------22.1矩阵键盘-----------------------------------------------22.3 LED显示-----------------------------------------------22.4报警系统-----------------------------------------------2 第3章硬件电路设计----------------------33.1 键盘电路设计------------------------------------------33.2 LED显示电路设计--------------------------------------53.3 报警电路设计--------------------------------------------6 第4章软件设计--------------------------74.1 软件总体设计-------------------------------------------74.2 各子程序的设计-----------------------------------------7第5章调试总结-------------------------11第6章附录-----------------------------12 附录A源程序清单-------------------------------------------12附录B硬件原理图-------------------------------------------16第7章参考文献-------------------------17第1章概述随着科技的发展和人们生活水平的提高,如何实现保密防盗这一问题变的尤其的突出,传统的机械锁由于其构造的简单,失效的事件屡见不鲜,电子锁由于其保密性高,使用灵活性好,安全系数高,受到了广大用户的亲呢。

老师布置下这各课题时,其任务要求条件如下:1.1 设计内容:(1)密码的设定,此密码是固定在程序存储器ROM中,假设预设的密码为“12345”共5位密码。

(2)密码的输入:采用两个按键来完成密码的输入,其中一个按键为功密码的输入过程。

然后进入密码的判断比较处理状态并给出相应的处理过程。

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

1.2 设计要求:(1)设计方案要合理、正确;(2)系统硬件设计及焊接制作;(3)系统软件设计及调试;(4)系统联调。

1.3主要设计条件:(1)MCS-51单片机实验操作台1台;(2)PC机及单片机调试软件;(3)单片机应用系统板1套;(4)制作工具1套;(5)系统设计所需的元器件。

基于以上,我的此次课程设计以单片机为核心,完成电子密码锁的设计。

第2章系统总体方案设计此次课程设计基于单片机控制的电子密码锁,接到课题后,根据老师布置的任务和相关要求,结合主要设计条件,我设计了如下方案,其总体方案设计如下:本系统由单片机系统、矩阵键盘、LED显示和报警系统组成。

系统能完成开锁、超时报警功能。

2.1单片机系统:此次课题采用一种是用以80C51为核心的单片机控制方案。

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

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

2.2矩阵键盘接口电路:此次课程设计采用4*4矩阵键盘,与P1口相连,采用扫描法。

设有0——9十个数字密码,和一个确认键。

开机显示000000,等待密码输入,输入6个密码,按确认键后,密码比较。

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

P0口送示数据,P2口显示扫描,根据按键次数,第一位显示器显示第一次按的密码,第二位显示器显示第二次按的密码,第三位显示器显示第三次按的密码,依此第六位显示器显示第六次按的密码,按键完成后按确认键后,密码对则执行相关动作,不同则显示器清零,等待重新输入。

2.4报警系统:此次课程设计,当按键三次错误后,系统报警,报警装置由一扬声器实现,从P3.0口输出脉冲,使扬声器鸣报警。

第3章硬件电路设计3.1 键盘电路设计矩阵式键盘电路图3-1:图3-1矩阵式键盘电路图在键盘中按键数量较多时,为了减少I/O口的占用,通常将按键排列成矩阵形式,如图1所示。

在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以连接。

这样,一个端口(如P1口)就可以构成4*4=16个按键,比之直接将端口线用于键盘多出了一倍,而且线数越多,区别越明显,在需要的键数比较多时,采用矩阵法来做键盘是合理的。

矩阵式结构的键盘显然比直接法要复杂一些,识别也要复杂一些,图1-1中,列线通过电阻接正电源,并将行线所接的单片机的I/O口作为输出端,而列线所接的I/O口则作为输入。

这样,当按键没有按下时,所有的输出端都是高电平,代表无键按下。

行线输出是低电平,一旦有键按下,则输入线就会被拉低,这样,通过读入输入线的状态就可得知是否有键按下了。

3.1.3 矩阵式键盘的识别方法:确定矩阵式键盘上何键被按下介绍一种“行扫描法”。

行扫描法行扫描法又称为逐行(或列)扫描查询法,是一种最常用的按键识别方法,如上图所示键盘,介绍过程如下。

判断键盘中有无键按下:(1)先将行线p1.7-p1.4置0111,然后检测列线的状态。

如果p1.3-p1.0为0111,则k0被按下;如果p1.3-p1.0为1011,则k1被按下;如果p1.3-p1.0为1101,则k2被按下;如果p1.3-p1.0为1110,则k3被按下;(2)将行线p1.7-p1.4置1011,然后检测列线的状态,方法同(1);(3)将行线p1.7-p1.4置1101,然后检测列线的状态,方法同(1);(4)将行线p1.7-p1.4置1110,然后检测列线的状态,方法同(1).3.2 LED显示电路设计3.2.1LED显示电路图:图2-2 LED动态显示电路3.2.2 LED显示原理:LED就是light emitting diode ,发光二极管的英文缩写,简称LED。

它是一种通过控制半导体发光二极管的显示方式,用来显示文字、图形、图像、动画、行情、视频、录像信号等各种信息的显示屏幕。

显示器显示接口按驱动方式可分为静态显示和动态显示,静态显示时,除变更显示数据期间外,各显示器均处于通电状态,每个显示器的通电占空比为100%,静态显示的优点是显示稳定,亮度高,缺点是占用硬件电路多;动态显示的优点是节省硬件电路,缺点是占用软件扫描时占用CPU时间多。

对于多位LED显示器,通常都是采用动态扫描的方法进行显示,即逐个地循环点亮各位显示器,这样虽然在任一时刻只有一显示器被点亮,但是由于人眼具有视觉残留效应,看起来与全部显示器持续点亮效果完全一样。

为了实现LED显示器的动态扫描,除了要给显示器的输入之外,还有对显示器选择位的控制,这就是通常所说的段控和位控。

因此,多位LED显示器接口电路需要有两个输出口,其中一个用于8条段控线,另一个用于输出位控线,位控线的数目等于显示器的位数。

为了方便编写程序,通常在内部RAM中设置显示缓冲区,存放显示的数字或字符,显示缓冲区单元个数与LED显示器位数相同。

此次基于单片机的电子密码锁,我选用动态显示,通过与软件配合,每输入一个密码,进行显示一次,扫描,6个密码输入完后,进行比较,密码正确则开锁,密码错误,可重新输入三次,三次后仍然错误,报警!3.3 报警电路设计3.3.1 报警电路图:图3-3 报警电路3.3.2报警电路原理:输入密码与设定密码做比较,当输入密码与设定密码不同,返回再输入,当输入密码次数超过3次时,通过软件从80C51的P3.0输出脉冲,使扬声器鸣笛报警。

相关软件见(附件)第4章软件设计4.1 软件总体设计软件的设计主要包括:密码的固定、键盘识别判断、密码显示、密码比较、密码对处理、错报警。

软件设计总流程图如下:开始固定密码图4-1 软件设计总流程图4.2 各子程序的设计4.2.1 密码的固定定:将密码固定在程序存储器ROM 中,设定6位密码,密码固定在ROM 的20H 到25H 六个单元中 。

4.2.2 键盘的扫描识别判断:用矩阵式键盘,扫描法对键盘进行识别判断,具体流程图如下:图4-2 键盘扫描流程图以上是第一行的扫描,接着MOV P1,#10111111,扫描第二行,判断k4、K5、K6、K7;再MOV P1,#11011111,扫描第三行,判断k8、K9、KA 、KB ;接着MOV P1,#11101111,扫描第四行,判断kC 、KD 、KE 、KF ;并进行相关显示。

如果无键按下,则循环扫描。

4.2.3密码显示:采用LED动态显示,由单片机P0口进行输出显示,P2口扫描,具体显示程序设计流程图如下:图4-3 显示流程图4.2.4 密码比较及对错处理:密码输入完成之后,进行密码比较,即将设定密码单元20H—25H的密码与输入密码26H—31H的密码进行一一比较,如果相同,则密码正确,P3.2置高电平,如果密码错误,则显示器清零,重新等待输入密码,如果三次错,则P3.0输出脉冲,使接在P3.0的使扬声器鸣笛报警。

第5章调试总结时间过得真快,转眼间,两周的微机原理课程设计就结束啦。

这次课程设计,我们是在第一周的星期一接到课题,开始两天我们主要看书,跑图书馆,上网查资料。

相关文档
最新文档