嵌入式系统项目实践课程报告题目基于单片机的电子密码锁设计团队成员专业网络工程指导教师2014年10月9日嵌入式系统项目实践2目录摘要:.......................................................................41绪论.......................................................................51.1选题背景.................................................................51.2研究意义.................................................................51.3内容与结构...............................................................52系统整体设计方案...........................................................52.1相关知识介绍.............................................................52.1.1AT89C51引脚功能描述...................................................52.1.2LCD1602性能描述.......................................................62.1.324C04性能描述.........................................................72.2系统总体设计.............................................................73硬件电路...................................................................73.1单元电路设计.............................................................83.1.1单片机最小系统.........................................................83.1.21602LCD数码管显示电路.................................................83.1.3矩阵键盘电路...........................................................93.2系统总硬件电路图........................................................104软件模块设计..............................................................104.1系统开发工具使用........................................................104.2系统开发流程图..........................................................134.3系统软件设计模块........................................................134.3.1键盘扫描软件设计......................................................134.3.224C04读写操作的软件设计..............................................144.3.224C04读写操作的软件设计..............................................144.3.4修改密码软件设计......................................................155结果分析..................................................................155.1电子密码锁开锁和上锁....................................................165.2修改电子密码锁密码......................................................16结论........................................................................17参考文献....................................................................18附录:......................................................................19嵌入式系统项目实践3嵌入式系统项目实践4基于单片机的电子密码锁设计摘要:随着信息技术的不断发展,信息化时代也逐步进入普通家庭,人们对个人的信息安全以及隐私等私密信息的安全要求不断提高,传统的机械锁已经不能满足要求。针对此现状设计一款安全可靠廉价的电子密码锁。该设计以AT89C51为主控芯片,带有一个密码输入键盘、外围时钟复位电路、存储单元24C04、显示单元1602LCD,通过LED灯的亮与灭表示电子锁的锁闭与打开。利用单片机灵活的编程设计和丰富的IO端口,能实现密码锁的基本功能。为了提高可读性采用了1602作为显示单元,使用户对密码锁的运行情况一目了然。该系统经软硬件测试,达到要求,系统运行良好。关键词:单片机;AT89C51;1602LCD;24C04;电子密码锁嵌入式系统项目实践51绪论1.1选题背景在人们的生活中,财产与人身安全是被一直关注的问题,于是“锁”也就与人们的生活密不可分了,无论在何地,我们都能看到“锁”的身影,但随着社会的发展,传统的机械锁越来越不能满足人们的生活需求了,传统的机械锁由于其构造的简单,被撬的事件屡见不鲜。锁具发展到现在已有若干年的历史了,人们对它的结构、机理也研究得很透彻,因此,不用钥匙就能打开的方法和工具也层出不穷。为了应对这种情况,电子密码锁也就被发明出来了,相比传统的机械锁,电子密码锁具有更高的安全性。1.2研究意义电子锁可以在日常生活和现代办公中、住宅与办公室的安全防范、单位的文件档案、财务报表以及一些个人资料的保存等多种场合使用,大大提高了主人物资的安全性。此次项目实践选择基于单片机的电子密码锁设计题目,采用存储单元24C04和显示单元1602LCD来进行设计。单片机技术是智能化检测与控制领域应用非常普及并且具有很大潜力的技术。论文阐述一个基于单片机的液晶显示电子密码锁的设计与实现。系统采用美国Atmel公司的AT89C51单片机作为系统核心,用串行的24C04作为存储器,液晶显示器LCD1602作为输出设备显示系统提示信息,4*4矩阵薄膜键盘作为输入设备,配合蜂鸣器、继电器等电路构成整个系统硬件;系统软件采用汇编语言编写。设计的系统液晶显示,密码修改方便,具有报警、锁定等功能,使用便捷简单,符合住宅、办公用锁需求,具有一定的实用价值.而且使用AT89C51单片机价格相对低廉,成本较低,便于推广。1.3内容与结构本系统设计实现一个基于单片机控制的电子密码锁。该系统能够实现上锁、开锁、修改开锁密码和报警功能,用串行的24C04作为存储器,液晶显示器LCD1602作为输出设备显示系统提示信息。该文档主要包括五个部分,第一部分绪论,主要包括选题背景、研究意义和内容与结构;第二部分系统整体设计方案,主要包括相关知识介绍和系统总体结构设计;第三部分硬件电路,主要包括单元电路设计和系统总硬件电路图,其中单元电路设计包括单片机最小系统模块,24C04存储电路模块,1602LCD数码管显示电路和矩阵键盘电路设计模块;第四部分软件模块设计,主要包括系统开发工具使用和系统主要开发流程和各软件设计模块;第五部分结果分析,主要包括测试过程和测试结果分析。2系统整体设计方案2.1相关知识介绍2.1.1AT89C51引脚功能描述AT89C51是这几年我国非常流行的单片机,由美国ATMEL公司生产,是低电压,高性嵌入式系统项目实践6能CMOS8位单片机,片内含4kbytes的可反复擦写的只读程序存储器(PEROM)和128bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元。其中的40个引脚大致可以分为4类:电源、时钟、控制和I/O引脚。(1)电源:VCC为芯片电源端,一般为+5V,GND为接地端;(2)时钟:XTAL1为晶体振荡电路的反相输入端,XTAL2为晶体振荡电路的输出端;(3)控制线:MCS-51单片机的控制线有4根,其中3根是复用线,具有两种功能。ALE/PROG为地址锁存允许/编程脉冲信号端,PSEN为外部ROM读选通信号,RST为复位引脚;EA/VPP为内外ROM选择/EPROM编程电源;(4)I/O引脚:MCS-51单片机共有4个8位并行I/O端口,共32个可编程I/O引脚。其外形引脚如图2-1所示:图2.1AT89C51实物图(左)及其引脚图(右)2.1.2LCD1602性能描述LCD1602是工业字符型液晶,能够同时显示16x02即32个字符,是一种专门用来显示字母、数字、符号等的点阵型液晶模块,字符型LCD通常有14条引脚线或16条引脚线的LCD,多出来的2条线是背光电源线VCC(15脚)和地线GND(16脚),其控制原理与14脚的LCD完全一样[6]。LCD引脚图如下图2.6所示:图2.2LCD1602功能引脚图嵌入式系统项目实践72.1.324C04性能描述24C04是采用铁电技术生产的EEPROM,掉电后数据不丢失。相比传统的EEPROM具有寿命长,读写速度快的优点,采用I2C总线与外界通讯,容量应该是512字节。主要用于存储掉电后需要保存的数据。24C04存储电路如图2.3所示:图2.324C04存储电路2.2系统总体设计此设计的主要内容与任务如下:(1)设计一单片机控制的智能报警系统,通过按键输入密码,并用LCD显示相关信息;(2)密码可由键盘设置,键盘有数字键、还有确认按键;(3)密码可通过按键修改;(4)输入字符时,LCD上显示“*”号,若密码正确,则可以修改密码;(5)系统设置默认初始密码,且可以修改,修改后系统按新密码进行操作。依据设计的要求,可以得到系统软件模块图,如图2.4所示:图2.4系统的软件模块图3硬件电路用单片机做主机运算器,能进行密码修改和管理员密码设置,可复位,设置有退出键、管理员模式键、设定键、删除键和确定键。LCD在开锁前显示youpassword,然后根据密码基于单片机的电子密码器矩阵键盘输入模块LCD显示模块密码存储模块蜂鸣器报警电路模块时钟震荡电路模块嵌入式系统项目实践8正确与否显示出相应的提示。本设计初始密码为123456,密码输入正确后,可以修改密码,密码个数可以是0-9的数字。采用24C04存储密码,有掉电保护功能,本设计采用4*4的矩阵键盘作为输入,AT89C51单片机作为主机,二极管指示灯和喇叭组成发声系统。根据系统拟达到的总体功能得到系统整体框图如图3.1所示:图3.1系统整体框图3.1单元电路设计要实现基于单片机电子密码锁的功能。硬件设计包括单片机