




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、课 程 设 计 说 明 书题目:基于单片机的密码锁设计二级学院年级专业学 号学生姓名指导教师教师职称讲师目 录目 录1第1章 系统整体方案设计11.1 设计目标11.2 主控部分的选择1第2章 硬件系统设计32.1 系统芯片介绍22.1.1单片机at89c51功能介绍22.1.2存储芯片at24c02介绍22.2 硬件电路设计22.2.1 晶振电路2第3章 软件程序设计43.1 主程序流程图63.2 按键软件设计63.2.1 按键功能程序流程图63.3 密码设置软件设计73.3.1 密码设置程序流程图73.4 开锁软件设计83.4.1 开锁程序流程图8第 4 章 系统仿真、调试及结论114.1
2、 proteus软件简介94.2 进入 proteus isis104.3 工作界面104.4 各模块的电路图及说明124.4.1 电子密码锁系统主模块at89c51单片机124.4.2 电子密码锁系统的键盘模块124.4.3 电子密码锁系统的显示模块134.4.4 电子密码锁系统的晶振复位电路134.4.5电子密码锁系统的掉电存储及报警电路144.4.6程序仿真144.4.7 程序14致 谢21参考文献2223第1章 系统整体方案设计1.1 设计目标本设计采用at89c51单片机为主控芯片,结合外围电路矩阵键盘、液晶显示器lcd1602和密码存储at24c02等部分组成。其中矩阵键盘用于输入
3、数字密码和进行各种功能的实现。由用户通过连接单片机的矩阵键盘输入密码,后经过单片机对用户输入的密码与自己保存的密码进行对比,从而判断密码是否正确,然后控制引脚的高低电平传到开锁电路或者报警电路控制开锁还是报警,组成的电子密码锁系统,能够实现:(1)、总共可以设置8位密码,每位密码值范围为1-8;(2)、用户可以自行设定和修改密码;(3)、每个密码按键时都有声音提示;(4)、若键入的8位开锁密码不完全正确时,则报警5s;(5)、密码连续错3次要报警1min,期间输入密码无效;(6)、密码输入正确才能开锁,开锁时有1s的提示音;(7)、密码键盘上只允许有8个密码按键。锁内有备用电池,只有内部上 电
4、复位时才能设置或修改密码,因此,仅在门外按键是不能修改或设 置密码的;(8)、密码设定完毕后要有2s的提示音。主控芯片输入电路显示电路存储模块输出电路晶振电路系统整体设计框图1.2 主控部分的选择选用单片机作为系统的核心部件,实现控制与处理的功能。单片机具有资源丰富、速度快、编程容易等优点。利用单片机内部的随机存储器(ram)和只读存储器(rom)及其引脚资源,外接液晶显示(lcd),键盘输入等实现数据的处理传输和显示功能,基本上能实现设计指标。第2章 硬件系统设计2.1 系统芯片介绍2.1.1单片机at89c51功能介绍at89c51是51系列单片机的一个型号,它是atmel公司生产的。at
5、89c51是一个低电压,高性能cmos 8位单片机,片内含8k bytes的可反复擦写的flash只读程序存储器和256 bytes的随机存取数据存储器(ram),器件采用stc公司的高密度、非易失性存储技术生产,兼容标准mcs-51指令系统,片内置通用8位中央处理器和flash存储单元,功能强大的stc89c52单片机可提供许多较复杂系统控制应用场合。2.1.2存储芯片at24c02介绍at24c02是美国atmel公司的低功耗cmos型eprom,内含2568位存储空间,具有工作电压宽(2.55.5 v)、擦写次数多(大于10000次)、写入速度快(小于10 ms)、抗干扰能力强、数据不易
6、丢失、体积小等特点。而且他是采用了ic总线式进行数据读写的串行器件,占用很少的资源和i/o线,并且支持在线编程,进行数据实时的存取十分方便。at24c02中带有的片内地址寄存器。每写入或读出一个数据字节后,该地址寄存器自动加1,以实现对下一个存储单元的读写。2.2 硬件电路设计本设计主要由单片机、矩阵键盘、液晶显示器和密码存储等部分组成。其中矩阵键盘用于输入数字密码和进行各种功能的实现。由用户通过连接单片机的矩阵键盘输入密码,后经过单片机对用户输入的密码与自己保存的密码进行对比,从而判断密码是否正确,然后控制引脚的高低电平传到开锁电路或者报警电路控制开锁还是报警。2.2.1 晶振电路at89c
7、51引脚xtal1和xtal2与晶体振荡器及电容c2、c1按图所示方式连接。晶振、电容c2c3及片内与非门(作为反馈、放大元件)构成了电容三点式振荡器,振荡信号频率与晶振频率及电容c1、c2的容量有关,但主要由晶振频率决定,范围在033mhz之间,电容c2、c3取值范围在530pf之间。根据实际情况,本设计中采用12mhz做系统的外部晶振。电容取值为20pf。晶振电路原理图2.2.2存储电路存储电路at24c02是一个2k位串行cmos e2prom, 内部含有256个8位字节,catalyst公司的先进cmos技术实质上减少了器件的功耗。at24c02有一个16字节页写缓冲器。该器件通过ic
8、总线接口进行操作,有一个专门的写保护功能。采用两线串行的总线和单片机通讯,电压最低可以到2.5v,额定电流为1ma,静态电流10ua(5.5v),芯片内的资料可以在断电的情况下保存40年以上,而且采用8脚的dip封装,使用方便。 2.2.3 键盘输入电路由于本设计所用到的按键数量较多而不适合用独立按键式键盘。采用的是矩阵式按键键盘,它由行线和列线组成,也称行列式键盘,按键位于行列的交叉点上,密码锁的密码由键盘输入完成,与独立式按键键盘相比,要节省很多i/o口。本设计中使用的这个4*3键盘不但能完成密码的输入还能作特别功能键使用,比如清空显示功能等。键盘的每个按键功能在程序设计中设置 。其大体功
9、能(看键盘按键上的标记)及与单片机引脚接法如图所示:键盘输入原理图2.2.4 显示电路为了提高密码锁的密码显示效果能力。本设计的显示部分由液晶显示器lcd1602取代普通的数码管来完成。只有按下键盘上的开启按键后,显示器才处于开启状态。同理只有按下关闭按键后显示器才处于关闭状态。否则显示器将一直处于初始状态,当需要对密码锁进行开锁时,按下键盘上的开锁按键后利用键盘上的数字键1-8输入密码,每按下一个数字键后在显示器上显示一个f,输入多少位就显示多少个f。当密码输入完成时,按下确认键,如果输入的密码正确的话, lcd子显示“right”,单片机其中p2.0引角会输出低电平,使三极管t2导通,电磁
10、铁吸合,电子密码锁被打开,如果密码不正确,lcd显示屏会显示“error”,p2.0输出的是高电平,电子密码锁不能被打开。通过lcd显示屏,可以清楚的判断出密码锁所处的状态 。1602lcd主要技术参数:显示容量:162个字符芯片工作电压:4.55.5v工作电流:2.0ma(5.0v)模块最佳工作电压:5.0v字符尺寸:2.954.35(wh)mm其显示部分引脚接口如图所示:显示电路原理图2.2.5 报警电路报警部分由陶瓷压电发声装置及外围电路组成,加电后不发声,当有键按下时,“叮”声,每按一下,发声一次,密码正确时,不发声直接开锁,当密码输入错误时,单片机的p2.1引脚为低电平,三极管t3导
11、喇叭发出噪鸣声报警。如图所示:报警电路原理图2.2.6 开锁电路通过单片机开锁执行机构,电路驱动电磁锁吸合,从而达到开锁的目的。其原理如图所示。电磁锁单片机微控制器开锁驱动电路返回ny密码正确?密码锁开锁机构示意图当用户输入的密码正确时,单片机便输出开门信号,送到开锁驱动电路,然后驱动电磁锁,达到开门的目的。其实际电路如图所示。电路由驱动和开锁两级组成。由d1、r12、q1组成驱动电路,其中q1可以选择普通的小功率三极管如8050、9018都可以满足要求。d1是开锁指示灯;由d2、c5组成开锁。其中d2、c5是为了消除电磁锁可能产生的反向高电压以及可能产生的电磁干扰。电磁锁的选用要视情况而定,
12、但是吸合力要足够且有一定的余量。第3章 软件程序设计本系统软件设计由主程序、初始化程序、lcd显示程序、键盘扫描程序、键功能程序、密码设置程序、eeprom读写程序和延时程序等组成。3.1 主程序流程图如图所示为主程序流程图,开始接上电源,程序进行初始化设置,然后在键盘上输入密码,此系统进行键盘扫描,密码正确,开锁成功,密码错误3次出错报警,选择是否修改密码,若要修改密码,先输入旧密码密码,密码正确后设置新密码,错误时报警,需要两次确认新密码,确认后,密码修改成功,否则结束最终返回。然后启动程序,进行保护,再次在键盘上输入密码,系统进行扫描,如果和之前一样,则执行相同程序,如不是,则执行另一种
13、程序。开开始 开始始初始化次数加1输入密码密码正确?返返回回nyy开锁程序开锁?n修改密码?次数3?报警程序修改程序ynny开始返回主程序流程图3.2 按键软件设计3.2.1 按键功能程序流程图如图为按键功能流程图,在按键当中,有与输入、开锁、清除、设置、确认的程序相对应的按键,并按顺序与输入的数相比较,当输入正确时,进入密码程序,错误时进行清除,输入两次新密码正确时,可进行重新设置密码,最后确认程序。开开始始键值输入?键值开锁?键值清除?键值设置?键值确认?密码输入程序设置程序清除程序开锁程序确认程序yyyyynnnn返回n开始返回按键功能流程图3.3 密码设置软件设计3.3.1 密码设置程
14、序流程图如图为密码设置流程图,开始按下设置键,输入旧密码,如果错误累计三次,进行报警程序。如输入正确,可以修改密码,确认后再次输入新密码,如两次输入一样,则更改成功。如果两次输入的新密码不一样,则修改密码失败,重新返回设置新密码。输入旧密码n按下设置键开始开始所输入旧密码正确?输入次数加1报警程序n返返回回次数3?输新密码y再次输新密码y设设置置成功ny两次新密码输入相同?开始返回设置成功密码设置流程图3.4 开锁软件设计3.4.1 开锁程序流程图如图为开锁流程图,开始时按开锁键,输入密码,如果输入正确,则开锁成功。如果输入错误累计达到三次,则执行报警程序。初始化按开锁键输入密码按确认键所输入
15、密码正确?y开锁开锁开始输入次数加1次数3?报警程序返回返nyn开始开锁返回开锁流程图第 4 章 系统仿真、调试及结论4.1 proteus软件简介proteus isis是英国labcenter公司开发的电路分析与实物仿真软件。它运行于windows操作系统上,可以仿真、分析各种模拟器件和集成电路,该软件的特点是:实现了单片机仿真和数字电路仿真相结合。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、rs232动态仿真、i2c调试器、spi调试器、键盘和lcd系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。支持主流单片机系统的仿真。目前支持的单片机类型有
16、:68000系列、8051系列、avr系列、pic12系列、pic16系列、pic18系列、z80系列、hc11系列以及各种外围芯片。提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如keil c51 uvision2等软件。具有强大的原理图绘制功能。总之,该软件是一款集单片机和电路分析于一身的仿真软件,功能极其强大。本章介绍proteus isis软件的工作环境和一些基本操作。4.2 进入 proteus isis双击桌面上的isis 6 profe
17、ssional图标或者单击屏幕左下方的“开始”“程序”“proteus 7.2 professional” “isis 7.2 professional”,出现如图所示proteus启动时的屏幕4.3 工作界面proteus isis的工作界面是一种标准的windows界面,如图所示。包括:标题栏、主菜单、标准工具栏、绘图工具栏、状态栏、对象选择按钮、预览对象方位控制按钮、仿真进程控制按钮、预览窗口、对象选择器窗口、图形编辑窗口。proteus isis的工作界面运行proteus程序后,进入软件的主界面。通过左侧工具栏中的p(从库中选择元件命令)命令,在pick devices 左侧窗口中选
18、择所需元件的关键字,然后放置元件并调整方向和位置以及参数设置,进行连线。最后载入hex文件后可以进行模拟仿真,可以全速运行也可以单步调试运行。keil51界面在利用proteus进行仿真的条件下,通过不停的调试与改正,显示屏lcd1602不能显示任何内容,最后还是不能实现密码锁的功能,其proteus仿真如图所示。proteus仿真图4.4 各模块的电路图及说明4.4.1 电子密码锁系统主模块at89c51单片机 电子密码锁系统主模块at89c51单片机在软件中的图如图所示:at89c51单片机引脚图4.4.2 电子密码锁系统的键盘模块 电子密码锁系统的键盘模块在软件中的图如图所示:键盘输入模
19、块4.4.3 电子密码锁系统的显示模块电子密码锁系统的显示模块在软件中如图所示:密码显示模块4.4.4 电子密码锁系统的晶振复位电路电子密码锁系统的晶振复位电路在软件中的图如图所示:晶振及复位电路4.4.5电子密码锁系统的掉电存储及报警电路电子密码锁系统的掉电存储及报警电路在软件中的图如图所示:报警电路 4.4.6程序仿真4.4.7 程序#includesbit p1_0=p10;sbit p1_7=p17;unsigned char led_tab8=0xff,0xff,0xff,0xff,0xff,0xff,0x86,0x8c;unsigned char code led_pos8=0xf
20、e,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f;unsigned char key6=1,2,3,4,5,6;unsigned char in_key6=0,0,0,0,0,0;unsigned char key_num;void delay_nms(unsigned int n) unsigned int i,j; for(i=0;in;i+); for(j0;j123;j+);void beep(void) unsigned char i; for(i=0;i200;i+) p1_7=p1_7; delay_nms(50); void open(void) uns
21、igned char i; p1_0=0; for(i=0;i200;i+) delay_nms(1000); p1_0=1;void display(void) unsigned char i; for(i=0;i8;i+) p0=0xff; p2=led_posi; p0=led_tabi; delay_nms(2); unsigned char key_scan(void) unsigned char temp; p3=0xf0; delay_nms(1); temp=p30xf0; switch(temp) case 0x10:key_num=0; break; case 0x20:k
22、ey_num=1; break; case 0x40:key_num=2; break; default:break; p3=0x0f;delay_nms(1);temp=p30x0f;switch(temp) case 0x01:key_num+=0;break; case 0x02:key_num+=3;break; case 0x04:key_num+=6;break; case 0x08:key_num+=9;return(key_num);void shiftl(void) led_tab5=led_tab4; led_tab4=led_tab3; led_tab3=led_tab2
23、; led_tab2=led_tab1; led_tab1=led_tab0; led_tab0=0xbf;void shiftr(void) led_tab0=led_tab1; led_tab1=led_tab2; led_tab2=led_tab3; led_tab3=led_tab4; led_tab4=led_tab5; led_tab5=0xff;int main(void) unsigned char key_cnt=0; p1_0=1; while(1) display( );p3=0xf0;if(p3!=0xf0) key_num=key_scan( ); if(key_nu
24、m=0x0a) if(key_cnt=0) p0=0xff; beep( );else shiftr(); key_cnt-; while(p3!=0x0f) display(); else if(key_num=0x0b) while(p3!=0x0f) display( ); if(in_key0=key0)&(in_key1)&(in_key2=key2)&(in_key3=key3)&(in_key4=key4)&(in_key5=key5) p0=0xff;open( );led_tab0=0xff; led_tab1=0xff;led_tab2=0xff;led_tab3=0xff
25、;led_tab4=0xff;led_tab5=0xff;led_tab6=0x86;led_tab7=0x8c;key_cnt=0; else p0=0xff;beep( );led_tab0=0xff; led_tab1=0xff;led_tab2=0xff;led_tab3=0xff;led_tab4=0xff;led_tab5=0xff;led_tab6=0x86;led_tab7=0x8c;key_cnt=0; else if(key_cnt=6)p0=0xff;beep( );led_tab0=0xff; led_tab1=0xff;led_tab2=0xff;led_tab3=0
26、xff;led_tab4=0xff;led_tab5=0xff;led_tab6=0x86;led_tab7=0x8c;key_cnt=0;else shiftl( ); in_keykey_cnt=key_num; key_cnt+;while(p3!=0x0f) display( ); return 0;致 谢在这大学的最后一页里,我要感谢的人很多,首先要感谢我的指导老师刘丹娟老师为我指点迷津,帮助我开拓研究思路,虽然刘丹娟老师平日里工作繁多,但在我做课程设计的每个阶段,都给予我悉心的指导和帮助,关心我每个阶段所做的工作。当然,还要感谢寝室的兄弟们在我完成论文的过程中给予我的帮助和鼓励,也是他们陪我度过这三年的生活。现在即将挥别我的学校、老师、同学,还有我的大学生活,虽然依依不舍,但是对未来的路,我充满了信心。最后,感谢在大学期间认识我和我认识的所有人,有你们伴随,才有我大学生活的丰富多彩
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年铜-银-汞合金材料项目合作计划书
- 2024年四年级品社下册《第五单元 祖国真大》教学实录 上海科教版
- 2025年智能卡质检分拣机合作协议书
- 企业家的人才战略规划
- 中国体育产业发展现状及前景
- 八年级历史上册 第11课 北洋政府的黑暗统治教学实录 新人教版
- AI在企业资产管理的价值实现
- 三人合作加工合同范例
- 上样品合同标准文本
- 传媒留学中介合同标准文本
- 电网工程设备材料信息参考价(2024年第四季度)
- 电子产品生产工艺流程手册
- 部编版小学语文二年级下册第三单元集体备课教材分析
- 学生宿舍楼层平面图
- 道路线路测量设计书
- 小学一年级地方课程《人自然社会》全册25课教案教学设计
- 斜抛运动的规律(课堂PPT)
- 打架赔偿协议书模板
- (完整)“六宫格”数独—中级—180题
- CTC循环肿瘤细胞
- 比例的基本性质例1学习任务单
评论
0/150
提交评论