




免费预览已结束,剩余11页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单片机原理及其应用课程设计报告 设计题目: 电子密码锁设计 班 级: 06级自动化四班 学 号: 姓 名: 指导教师: 肖业伟 设计时间: 2009.10 目 录概述 .3第一章 设计要求 .3第二章 设计方案.4第三章 设计程序.8第四章 Proteus仿真.14第五章 硬件制作.14收获与体会 .17附录 .18参考文献 .16概述 单片机是一门技术性,应用性、实践性很强的技术。课程设计是学好本门课程的又一重要实践性教学环节,课程设计的目的和任务就是配合单片机的教学和平时实验,以达到巩固消化课程的内容,进一步加强综合应用能力及单片机应用系统开发和设计能力的训练,启发创新思维,使之具有独立单片机产品和科研的基本技能,是以培养学生综合运用所学知识的过程,是知识转化为能力和能力转化为工程素质的重要阶段。在实际生活中有好多地方都用到了单片机,因此学习好这门课程有着十分重要的意义。硬件系统设计 1)控制系统主要由单片机应用电路、存储器接口电路、显示接口电路组成。其中单片机AT89C51是系统工作的核心,它主要负责控制各个部分协调工作. 2)硬件组成及所需元件:该系统的核心器件是AT89C51。在其外围接上复位电路、上拉电阻、数码管、按钮及扬声器。元件为:晶振X1、电容C1、C2、C3、 电阻RP1。P3.0和P3.1由裁判控制,分别是抢答停止和开始键。P1.0-P1.是8组抢答的输入口, P2.0-P2.3口为数码管的段选口,位选口用的是P0.0-P0.6口输出,外部中断0、1和P3.3,P3.4为抢答记时调整口,实现的对个队进行计时,并且加减调整,外部中断0,1实现了答题时间调整.P3.4 P3.5分别实现了时间的加一和减一.控制系统防真用到了Proteus, 集成调试环境,集成了编缉器、编译器、调试器,支持软件模拟,支持项目管理功能强大的观察窗口,支持所有的数据类型。系统仿真还用到了PROTEUS软件,可通过仿真可以完全显示出所设计系统的功能,对于程序的调试等有很大的帮助.一、设计要求1.题目:电子密码锁选题后先在proteus上进行软件仿真设计,在仿真实现的基础上,要求完成部分硬件模块的制作和系统联调,具体要求见选题。设计流程:查阅有关文献资料拟定电路原型依据题目功能要求,进行电路元件选择画出原理电路软件仿真分析验证设计方案实际部分硬件制作、系统联调写出设计报告。时间安排:选题结束后,自己安排时间进行课题资料查阅、原理方案设计,然后进行软件仿真(可以利用自己的PC机或利用实验室开放时间段预约后到实验室进行仿真实验),完成上述工作后预约第一阶段检查验收,验收合格后,凭指导教师验收签字单到实验中心领取器材进行硬件制作部分,完成调试后,经指导教师验收签字,最后,撰写课程设计总结报告并提交到实验中心。2.密码锁具体设计要求:利用单片机设计一个密码锁,要求可设定从1位到8位的密码,从键盘键入正确密码才可更改密码或开锁;输入三次错误密码电路就不断报警;开锁信号输出口用发光二极管表示。同时输入密码后要按确认键才有效。1可设置密码,掉电密码能保存;2按键确实被按下时发出一下提示音;3设置新密码前需校验旧密码;发挥部分:密码用密文保存在存储器中(加密方法可采用DES算法)可选器件:51系列单片机、24C01、7段LED数码管、74LS244或74LS240、与非门等二、设计方案本设计采用以AT89S52为核心的单片机控制方案。利用单片机灵活的编程设计和丰富的IO端口,及其控制的准确性,不但能实现基本的密码锁功能,还能添加调电存储、声光提示甚至添加遥控控制功能。其原理如图12所示。矩阵键盘控制89S52单片机输入错误锁定键盘延时报警控制电路开锁控制电路串口显示电路图21单片机控制方案 1 键盘功能及工作原理PC键盘功能主要有按键识别、去抖、重键处理、发送扫描码、自动重发、接收键盘命令、处理命令等。键盘有编码键盘和非编码键盘。编码键盘程序设计简单,但硬件电路复杂,价格较高;非编码键盘用软件来实现识别键、编码转换、去抖等功能,硬件电路简单,价格便宜。现代微机系统中广泛采用非编码键盘。PC键盘多采用18行8列的二维矩阵行列结构。采用行扫描法识别按下的按键。本设计就采用行列式键盘,同时也能减少键盘与单片机接口时所占用的I/O线的数目,在按键比较多的时候,通常采用这样方法。其原理如图所示。89s51D0D1D2D3D4D5D6D7D8D9D105.1K X 45.1K X 4VCC图 行列式键盘原理电路图每一条水平(行线)与垂直线(列线)的交叉处不相通,而是通过一个按键来连通,利用这种行列式矩阵结构只需要N条行线和M条列线,即可组成具有NM个按键的键盘。在这种行列式矩阵键盘非键盘编码的单片机系统中,键盘处理程序首先执行等待按键并确认有无按键按下的程序段。当确认有按键按下后,下一步就要识别哪一个按键按下。对键的识别通常有两种方法:一种是常用的逐行扫描查询法;另一种是速度较快的线反转法。对照图23所示的44键盘,说明线反转个工作原理。首先辨别键盘中有无键按下,有单片机I/O口向键盘送全扫描字,然后读入行线状态来判断。方法是:向行线输出全扫描字00H,把全部列线置为低电平,然后将列线的电平状态读入累加器A中。如果有按键按下,总会有一根行线电平被拉至低电平从而使行线不全为1。判断键盘中哪一个键被按下使通过将列线逐列置低电平后,检查行输入状态来实现的。方法是:依次给列线送低电平,然后查所有行线状态,如果全为1,则所按下的键不在此列;如果不全为1,则所按下的键必在此列,而且是在与零电平行线相交的交点上的那个键。按键的操作面板如图图23所示。共计数字键10个,功能键6个。键盘上还有3个指示灯和一个蜂鸣器。图 按键操作面板示意图按键包括有数字键和功能键。数字键包括09键,用于密码的输入。功能键有密码修改键和确认键。具体的功能定义如下表。按键键名功能说明19键数字键输入密码A键确认键密码输入完成B键密码修改键修改密码C键删除键向前删除一位2.硬件设计由实验要求采用4行4列的矩阵行列结构。89c51单片机有4个8位I/O端口,采用P1口低四位作为行扫描线,高四位作为列扫描线。软件设计 消抖及重键处理:通过软件上延时程序来消除抖动;采用后按键优先处理,即多键同时按下时,只重复发送最后按下键的扫描码。 程序包括键盘扫描子程序、发送键码子程序、发送数据子程序、接收命令子程序、主程序等。键盘扫描子程序用于扫描键状态,将被按键的位置号存入缓冲器中;发送键码子程序用于将缓冲区键的接通码或断开码发送给计算机键盘接口或者存在键盘密码缓冲区中;发送数据子程序用于将数据发给计算机键盘接口;接收命令子程序用于接收计算机键盘接口发来的键盘命令;主程序用于系统初始化,子程序调度,锁定状态的显示等。3显示电路设计考虑到实验室只能提供四位一体的阴极LED显示管,所以设计时只设计了四位的密码。LED显示管电路连接图如下图所示,图中1234为位选码,低电平有效,在其每一位前加了一个反相器做驱动,再接到单片机的P2口的低四位。其段选码接了两个74LS240做驱动,74LS240也有反相作用,因此在编程时特别做了处理,段选码的8位接到单片机的P1口。4开锁及密码修改单元通过单片机送给开锁执行机构,电路驱动电磁锁吸合,从而达到开锁的目的。其原理如图25所示。单片机微控制器开锁驱动电路电磁锁密码正确?Y返回N图25密码锁开锁机构示意图当用户输入的密码正确而且是在规定的时间(普通用户要求在12s内输入正确的密码,管理员要求在5s输入正确的密码)输入的话,单片机便输出开门信号,送到开锁驱动电路,然后驱动电磁锁,达到开门的目的。其实际电路如图25所示。在本次设计中,基于节省材料的原则,暂时用发光二极管代替电磁锁,发光管亮,表示开锁;灭,表示没有开锁。在按下密码修改键后,系统会要求输入原始密码,正确后再输入新密码,密码修改成功则单片机P3.1所接的发光二极管会亮3秒。5系统原理框图51系列单片机4*4键盘8位LED显示ROM存储器复位电路晶振电路发光二极管 图2-7 系统原理框图6 设计总体电路图如图2-8所示:图2-8 密码锁仿真模型图三、设计程序1模块介绍该计程计价系统的软件设计分为以下几个模块:(1)主程序模块主程序主要完成初始化、设置中断向量、检查有无按键按下、以及调用显示等等。主程序的流程图如下所示。(2)键盘扫描及识别子程序 键盘采用查询的方式,放在主程序中,当没有按键按下的时候,单片机循环主程序,一旦有按键按下,便转向相应的子程序处理,处理结束再返回。(3)调电存储服务程序当比较密码的时候,需要读AT24C02程序,将存储在芯片内的数据读到RAM中,然后和输入的密码相比较。当修改密码的时候,需要把输入的密码保存到AT24C02中。(4)显示子程序(5)延时模块2.程序流程图 (1)主程序流程图及密码修改程序流程图如图31、32所示。开始初始化有键按下?调用显示启动定时识别按键全部按完?超时?比较密码开门开始自动清除3次?锁定NNYYYYNN按下F2启动定时输入密码存入缓冲再输入一次比较密码调用24C02调用显示按F2退出Y重新输入N图31 主程序流程图图32 修改密码流程图3程序使用C语言编写3.1 主程序void main()unsigned int i;key=0;lock=3;chgtime1=0;chgtime=0;init(); /ROM初始化if(!readcode(0)chgtime=0;write_add(0,chgtime);delay(100);savecode(1,6,password1);for(i=0;i100;i+)init_dpy(5,hello); /开机显示信息 P1=0xff;length=readcode(1); for(i=0;ilength;i+) /显示密码passwordi=readcode(i+2);delay(100);for(i=0;i0;x-)for(y=110;y0;y-);unchar keyscan() /intrupt 0 using 1 /键盘扫描 unchar temp,i;flag=0; /ea=1; /et0=1; /tmod=ox01;/ th0=1000/256;/ tl0=1000%256;for(i=0;i=0&key=9)flag=0;inpassk=key;if(inpassk=passwordk) i+;k+; delet();init_dpy(k,pp);3.4显示开机程序void init_dpy(unchar m, unchar *dp)for(j=0;jm;j+)P1=_cror_(0x7f,j);P0=dpj;delay(14);void display(unchar m,unchar *pt)unchar j;for(j=0;joptions for project-debug tab5、 选中use Proteus VSM monitor 516、 载入Proteus 文件7、 KeilC与Proteus连接仿真调试 单击仿真运行开始按钮,我们能清楚地观察到每一个引脚的电频变化,红色代表高电频,蓝色代表低电频。在LED显示器上,循环显示1-4。8、若联调失败,则返回重新检查再进行调试。五、硬件制作在软件仿真成功交老师检查后,就可以去领取器件做硬件设计了。硬件制作所要求的就是细心,再就是经验。硬件制作过程如下:1、 领取元器件,检查元器件是否是自己所需要的;2、 规划,综合考虑各个器件的引脚及接电源和节点的情况,对接线路径进行规划,尽量避免线路的重叠,要求做的美观、使用;3、 焊接固定座槽,注意不要短路和段路;4、 连接各条线路,不要错漏,也不要重复,这里尤其要小心;5、 接线完毕进行检查,再把芯片装上去;6、 下载程序7、 接通电源,测试8、 测试成功则交老师检查,否则返回5重做。六、收获与体会 单片机一门实用很强的技术,要完全掌握它很难,也需要花很多的时间。而单片机课程设计不仅是对单片机掌握程度的一个测试,而且对于我们学会单片机,加深对单片机的了解有很大的作用。这个设计用到了单片机,电路等方面的知识,通过这次课程设计,使我对单片机及其附属电路有了一定的了解,对课本上的知识有了近一步的掌握,也深刻明白了自己的不足。完成本次课程设计的过程,是一个从无到有的过程,经历了兴奋、自信、失落、奋发、所悟、完成几个过程。刚做做课程设计时,仔细阅读设计的题目和要求,以为没什么困难的,所用的知识书上都有。可是当我动手开始做的时候,才发现其中的算法,设计是那么繁琐。经过一天的努力,毫无结果。失落的心情油然而生。于是,再到图书馆和网上查找资料,在经过借鉴很多类似的资料,文献后,总算是有点眉目了。埋头苦干的过程是痛苦的,尤其是在思考算法和程序框架时,迷茫,烦躁,特别是当苦思出来一个结果,又被自己推翻,心痛的无法言绘。在痛苦中挣扎,建立推翻,参考别人的思路,建立,再次在推翻,获的喜悦,不懂付出怎么能知道回报的快乐,一分耕耘一分收获,有付出才会有回报,就在这样的痛与快乐的交换中,我学到了知识, 学到了做人的道理。通过这短短一周的实践,我感觉到自己从课
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 煤矿定量合同范本
- 医院分成协议合同范本
- 征地拆迁合同范本
- 供货渠道合同范本
- 新余小升初房屋合同范本
- 大牌代工合同范本
- 门窗员工安全合同范本
- 车位充电租赁合同范本
- cfg桩施工合同范本
- 代付协议合同范本
- 老旧小区综合整治项目成品保护和工程保修的管理措施
- 西安26中小升初分班考试语文真题
- 2024年深圳技能大赛-电工职业技能竞赛理论考试题库-上(单选题)
- 机关食堂从业人员培训
- 高中英语考纲3500词之核心词汇讲与练
- 2024光伏并网柜技术规范
- 品质异常检讨
- 《应用光伏学》课程教学大纲(新能源材料与器件专业)
- 劳动仲裁申请书模板2
- GB/T 24633.1-2024产品几何技术规范(GPS)圆柱度第1部分:词汇和参数
- 护理工作中的人文关怀
评论
0/150
提交评论