1、电子综合设计与制作实 践设计报告 1 摘要 摘要: 在日常的生活和工作中 , 住宅与部门的安全防范、单位的文件档案、财务报表以及一些个人资料的保存多以加锁的办法来解决。若使用传统的机械式钥匙开锁,人们常需携带多把钥匙 , 使用极不方便 , 且钥匙丢失后安全性即大打折扣。随着科学技术的不断发展,人们对日常生活中的安全保险器件的要求越来越高。为满足人们对锁的使用要求,增加其安全性,用密码代替钥匙的密码锁应运而生。密码锁具有安全性高、成本低、功耗低、易操作等优点。 在安全技术防范领域,具有防盗报警功能的电子密码锁逐渐代替传统的机械式密码锁,克服了机械式密码锁 密码量少、安全性能差的缺点,使密码锁无论
2、在技术上还是在性能上都大大提高一步。随着大规模集成电路技术的发展,特别是单片机的问世,出现了带微处理器的智能密码锁,它除具有电子密码锁的功能外,还引入了智能化管理、专家分析系统等功能,从而使密码锁具有很高的安全性、可靠性,应用日益广泛。 本次设计使用 STC公司的 STC89C52实现一基于单片机的电子密码锁的设计,其主要具有如下功能: 1.密码通过键盘输入,若密码正确,则将锁打开 ,语音提示开锁, 蜂鸣器播放一段 开锁 音乐 。 2.密码可由管理员修改设定,锁打开后才能修改 密码。修改密码之前必须再次输入密码,在输入新密码时需要二次确认,以防止误操作。 3.报警、锁定键盘功能。密码输入错误
3、, LCD 液晶 显示器会出现错误提示,同时语音提示错误信息,蜂鸣器鸣响; 若密码输入错误次数 达到 3次,蜂鸣器报警并且锁定键盘 ,蜂鸣器播放一段 报警 音乐 。 主要的设计 过程: 首先,选用 STC 公司的单片机 STC89C52,以及选用其他电子元器件。 第二步,使用 Alitm Designer 设计硬件电路原理图,完成人工布线。 第三步,使用 Keil C51 软件编写单片机的 C 语言程序、仿真、软件调试。最后,联合软、硬件调试电路板,完成本次电子 综合 设计。 关键词: 4 4 矩阵键盘; STC89C52; ISD1760; LCD 液晶显示器;密码二次确认 电子综合设计与制
4、作实 践设计报告 2 目录 第一部分 总 述 . 4 一引言 . 4 二 课题内容及要求 . 4 第二部分 硬件设计部分 . 5 一设计总框图 . 5 二 单片机 STC89C52 介绍 . 5 三 输入键盘 . 6 四 LCD 液晶显示 . 8 五 ISD1760 语音提示 . 9 六 蜂鸣器 发声 . 10 第三部分 软件设计部分 . 11 一 程序流程图 . 11 二 键盘扫描 设计 . 11 三 液晶显示设计 . 13 四 语音提示设计 . 18 五 蜂鸣器发声设计 . 9 第四部分 调试报告 . 20 一硬件调试 . 24 二软件调试 . 24 三 调试 心得 . 24 总结 . 2
5、5 参考资料 . 25 电子综合设计与制作实 践设计报告 3 附录 . 26 一元器件清单 . 26 二工具 . 27 三 硬件设计总图 . 27 四 源程序 . 28 电子综合设计与制作实 践设计报告 4 第一部分 总 述 一引言 科技的发展是电子产品的应用越来越广泛,电子电路的设计也越来越重要。随着人们生活水平的提高,如何实现家庭防盗这一问题也变的尤其的突出,传统的机械锁由于结构简单,被撬的事件屡见不鲜,电子锁由于其保密性高,使用灵活性好,安全系数高,受到了广大用户的 青睐 。同时随着电子产品向智能化和微型化的不断发展,数字逻辑电路电子芯片已成为电子产品研制和开发的首选控制器。用电子逻辑电
6、路设计 的密码锁经实际操作表明,该密码锁具有安全、实用、成本低等优点,符合一般锁的需要,具有一定的现实意义。 本系统采用 STC 公司的单片机 STC89C52 作为主控芯片,结合外围的矩阵键盘输入、 LCD 显示、报警系统和开锁等电路,用 C 语言编写主控芯片的控制程序,设计了一款可以多次更改密码 且 具有报警功能的电子密码锁。用户想要打开锁,必先通过提供的键盘输入正确的密码才能将锁打开, 且 密码输入错误 时有提示,为了提高安全性,当密码 连续 输入错误三次将报警。密码 只 可以 由 管理员 自己修改 、 设定,锁打开后 只有管理员 才能修改密码。修改之前必 须 先输入管理员登录密码, 然
7、后 再次输入 旧 密码,在输入新密码时需要二次确认,以防止误操作。 二 课题内容及要求 1设计内容: 采用 LCD 液晶显示, 4*4 的矩形键盘输入的基于单片机的电子密码 锁,能够实现修改密码, 纠错 ,确认的功能。 2基本要求: 硬件布局基本合理,焊接比较美观,器件运用基本合理,用比较简单的电路实现修改密码 、 纠错 、 确认等基本功能。 3 提高部分 : 电子密码锁能够实现 管理员登陆、动态显示登陆密码、登陆密码验证,登陆成功与否给出提示、超次锁定并报警鸣示、在登陆成功的情况下 管理员可以 进行修改和确认密码,新密码位数不够或太简单给出提示,能在修改密码成功的情况下给出提示。 另外,可以
8、用语音发声芯片发出相应的提示信息 ,并用蜂鸣器 报警, 播放简单的音乐段 。 本方案采用一种 以 STC89C52 为核心的单片机控制方案。利用单片机灵活的编程设计和丰富的 I/O 端口,及其控制的准确性,实现基本的密码锁功能 ,以及一些扩展功能 。 电子综合设计与制作实 践设计报告 5 第二部分 硬件设计部分 一设计总框图 4*4 矩阵键盘输入语音提示LCD 动态显示蜂鸣器发声超次键盘锁定STC89C52RC单片机图一 总体设计框图 二 单片机 STC89C52 介绍 STC89C52 是一种带 8K 字节闪烁可编程可檫除只读存储器( FPEROM-Flash Programable and
9、 Erasable Read Only Memory )的低电压,高性能 COMOS8 的微处理器,俗称单片机。该器件采用 ATMEL 高密度非易失存储器制造技术制造,与工业标准的 MCS-51 指令集和输出管脚相兼容。 STC89C52 具体介绍如下: 主电源引脚( 2 根) VCC(Pin40):电源输入,接 5V 电源 GND(Pin20):接地线 外接晶振引脚( 2 根) XTAL1(Pin19):片内振荡电路的输入端 XTAL2(Pin20):片内振荡电路的输出端 控制引脚( 4 根) RST/VPP(Pin9):复位引脚,引脚上出现 2 个机器周期的高电平将使单片机复位。 电子综合
10、设计与制作实 践设计报告 6 ALE/PROG(Pin30):地址锁存允许信号 PSEN(Pin29):外部存储器读选通信号 EA/VPP(Pin31):程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。 可编程输入 /输出引脚( 32 根) STC89C52 单片机有 4 组 8 位的可编程 I/O 口,分别位 P0、 P1、 P2、 P3 口,每个口有 8 位( 8 根引脚),共 32 根。 P0 口( Pin39 Pin32): 8 位双向 I/O 口线, 名称为 P0.0 P0.7 P1 口( Pin1 Pin8): 8 位准双向 I/O 口
11、线,名称为 P1.0 P1.7 P2 口( Pin21 Pin28): 8 位准双向 I/O 口线,名称为 P2.0 P2.7 P3 口( Pin10 Pin17): 8 位准双向 I/O 口线,名称为 P3.0 P3.7 STC89C52 主要功能 如表 二 所示。 表 二 STC89C52 主要功能 主要功能特性 兼容 MCS51 指令系统 8K 可反复擦写 Flash ROM 32 个双向 I/O 口 256x8bit 内部 RAM 3 个 16 位可编程定时 /计数器中断 时钟频 率 0-24MHz 2 个串行中断 可编程 UART 串行通道 2 个外部中断源 共 6 个中断源 2 个
12、读写中断口线 3 级加密位 低功耗空闲和掉电模式 软件设置睡眠和唤醒功能 三 输入 键盘 由于本设计所用到的按键数量较多而不适合用独立按键式键盘。采用的是矩阵式按键键盘,它由行线和列线组成,也称行列式键盘,按键位于行列的交叉点上,密码锁的密码由键盘输入完成,与独立式按键键盘相比,要节省很多 I/O 口。本设计中使用的这个 4*4 键盘不但能完成密码的输入还能作特别功能键使用,比如清空显示功能等。键盘的每个按键功能在程序设计 中设置。其原理图如下: 电子综合设计与制作实 践设计报告 7 图 二 矩阵键盘 每一条水平(行线)与垂直线(列线)的交叉处不相通,而是通过一个按键来连通,利用这种行列式矩阵
13、结构只需要 N 条行线和 M 条列线,即可组成具有 N M 个按键的键盘。 在这种行列式矩阵键盘非键盘编码的单片机系统中,键盘处理程序首先执行等待按键并确认有无按键按下的程序段。 当确认有按键按下后,下一步就要识别哪一个按键按下。对键的识别通常有两种方法:一种是常用的逐行扫描查询法;另一种是速度较快的线反转法。 对照图四所示的 4 4 键盘,说明线反转 法 工作原理 : 首先辨别键盘中有无键按下 ,有单片机 I/O 口向键盘送全扫描字,然后读入行线状态来判断。方法是:向行线输出全扫描字 00H,把全部列线置为低电平,然后将列线的电平状态读入累加器 A中。如果有按键按下,总会有一根行线电平被拉至
14、低电平从而使行线不全为 1。 判断键盘中哪一个键被按下使通过将列线逐列置低电平后,检查行输入状态来实现的。方法是:依次给列线送低电平,然后查所有行线状态,如果全为 1,则所按下的键不在此列;如果不全为 1,则所按下的键必在此列,而且是在与零电平行线相交的交点上的那个键。 电子综合设计与制作实 践设计报告 8 1 2 34 5 67 8 9删除 确定开启清零退出权限0/ 模式图 三 按键操作面板示意图 (顺序以实际电路为准) 10 个数字键用来输入密码, 0 键有切换模式的功能, 另外 6个功能键分别是:权限键、退出键、清零键、开启键 、删除键、确定键 。其中 权限 键的功能是设置密码修改权限,
15、只有管理员可以登录修改密码。 退出 键的功能是退出当前程序。清零键 键的功能是当前 输入数据 清零。 开启 键的功能是 退出屏幕保护界面, 开启LCD 显示功能:未按下时 LCD 动态显示屏保图形 ,需要开锁时按下此键, LCD 上会显示“ Hello Enter your code”。未输入密码时,单独按下 0键具有 切换模式 功能,密码输入后 0 作为数字键。 四 LCD 液晶显示 为了提高 密码锁的密码显示效果能力。本设计的显示部分由液晶显示器LCD1602 取代普通的数码管来完成。只有按下键盘上的开启按键后,显示器才处于开启状态。同理只有按下退出按键后显示器才处于 屏保 状态。否则显示
16、器将一直处于 开启 状态,当需要对密码锁进行开锁时,按下键盘上的开 启 按键后利用键盘上的数字键 0 9 输入密码,每按下一个数字键后在显示器上显示一个 *,输入多少位就显示多少个 *(设定为 6 个) 。当密码输入完成时,按下确认键,如果输入的密码正确的话, LCD 上显示“ Successfully Lock Is Opened”,单片 机其中P3.1 引角会输出低电平,使三极管 Q1 导通,电磁铁吸合,电子密码锁被打开,如果密码不正确, LCD 显示屏会显示“ Code Error”, P3.1 输出的是高电平,电子密码锁不能被打开。若连续三次密码输入错误,则密码所被锁定, LCD 上显
17、电子综合设计与制作实 践设计报告 9 示“ Please Wait .”。若密码修改太简单,则显示“ Code Is Too Simple”。若 输入的密码大于原密码,则 LCD 上显示“ Large”,若 输入 的密码小于原密码, LCD上显示“ Small”。通过 LCD 显示屏,可以清楚的判断出锁所处的状态。其显示部分引脚接口 如图六所示: VSS1VDD2VL3RS4R/W5E6D07D18D29D310D411D512D613D714BLA15BLK16LCD1602*U1GNDGNDVCCVCCR110K图 四 显示电路原理图 五 ISD1760 语音提示 本设计采用 ISD760
18、 单片 60秒高保真语音录放电路进行语音操作, 实时提示当前状态。 当密码连续输入 3 次错误之后语音芯片给出语音提示“连续 3次密码输入错误,键盘已锁定”。语音电路如图: Vccd1LED2RESET3MISO4MOSI5SCLK6SS7Vssa8Analn9MIC+10MIC-11Vssp212SP-13Vccp14SP+15Vssp116AUD/AUX17AGC18VOL19Rosc20Vcca21FT22PLAY23REC24ERASE25FWD26INT/RDY27Vssd28ISD1760*U310uFC40.1uFC5GND0.1uFC154.7uFC14GND0.1uFC131
19、0uFC11GND0.1uFC1210uFC10GND扬声器LS2*80KR9Res20.1uFC80.1uFC9LS1话筒4.7KR8Res24.7KR7Res24.7KR6Res2GNDGND4.7uFC7VCC1LED1KR5VCCkey19key20key22key18GNDGND+-4.7uFC16-+1243S1SW DIP-2key210.1uFC6VCCVCCVCC图五 语音电路原理图 电子综合设计与制作实 践设计报告 10 六 蜂鸣器发声 报警模块由蜂鸣器和单片机组成。选择一只压电式蜂鸣器,压电式蜂鸣器工作时约需要 100mA 驱动电流。蜂鸣器电路如图七所示。当 89C52
20、的 P3.1 口输出为低电平时,蜂鸣器产生蜂鸣音, 89C52 输出为高电平时,蜂鸣器不发声。 P101P112P123P134P145P156P167P178RST9P30/RXD10P31/TXD11P32/INT012P33/INT113P34/T014P35/T115P36/WR16P37/RD17XTAL218XTAL119GND20A8/P2021A9/P2122A10/P2223A11/P2324A12/P2425A13/P2526A14/P2627A15/P2728PSEN29ALE/PROG30EA/VPP31AD7/P0732AD6/P0633AD5/P0534AD4/P0435AD3/P0336AD2/P0237AD1/P0138AD0/P0039VCC40AT89C51*U210KR3Res2蜂鸣器U1*Q1NPNGNDVCC-+图 六 报警电路原理图