智能门禁控制系统设计_第1页
智能门禁控制系统设计_第2页
智能门禁控制系统设计_第3页
智能门禁控制系统设计_第4页
智能门禁控制系统设计_第5页
免费预览已结束,剩余9页可下载查看

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、班级:08电子信息一班姓名:黄昌利、黄勇姬、黄文静学号:2008020601420080206R20080206001智能门禁控制器设计一、设计任务:智能门禁控制器设计二、设计要求:1 .以89C5X系列单片机为核心器件,设计一个智能门禁控制器。2 .门控器密码由键盘输入,用四个数码管显示提示信息。3 .密码输入错误提示(可用发光二极管指示),密码错误超过3次则通过蜂鸣器发出报警声。4 .密码输入正确,则通过发光二极管指示开锁信号,并驱动步进电机正转10圈开门,10秒后步进电机反转10圈关门。5 .其它创新设计。三、评分标准:项目潢分评分设计与总结报告力泵比较、设计与论证,硬件系统力框图10具

2、体硬件电路设计或仿真电路设计10软件系统程序设计流程图10调试结果分析及使用操作说明10具体功能实现能完成显示程序设计10能完成按键程序设计10能完成步进电机驱动程序设计10能完成整个项目的程序联调,实现整个项目的功能10答辩项目设计自述10回答问题10加分项其它创新设计10智能门禁控制器设计1 .系统方案选择和论证1.1 设计要求1 .以89C5X系列单片机为核心器件,设计一个智能门禁控制器。2 .门控器密码由键盘输入,用四个数码管显示提示信息。3 .密码输入错误提示(可用发光二极管指示),密码错误超过3次则通过蜂鸣器发出报警声。104 .密码输入正确,则通过发光二极管指示开锁信号,并驱动步

3、进电机正转10圈开门,秒后步进电机反转10圈关门。5 .其它创新设计。1.2系统总体方案按键输入步进机发光二极管显示数码显示AT89C51.2.1 系统各模块方案选择和论证(1)控制器模块AT89C521i片机(2)显示模块方案一:LED显示屏。优点:亮度高、工作电压低、功耗小、小型化、寿命长、耐冲击和性能稳定。LED的发展前景极为广阔,目前正朝着更高亮度、更高耐气候性、更高的发光密度、更高的发光均匀性,可靠性、全色化方向发展。缺点:色彩一致性差,马赛克现象较严重,显示效果较差;混色效果不佳,视角不大,水平方向左右观看有色差。加工较复杂,抗静电要求高。实际像素分辨率做到10000点以上较难;加

4、工工艺麻烦,成本太高;加工还是较复杂,抗静电要求高。方案二:数码管。能在低电压、小电流条件下驱动发光,能与CMOSITL电路兼容;发光响应时间极短(<0.1步),高频特性好,单色性好,亮度高;体积小,重量轻,抗冲击性能好;寿命长,使用寿命在10万小时以上,甚至可达100万小时。成本低。而且还易于检测。(3)键盘输入模块方案一:开关控制方案二:独立式键盘控制键盘控制本身都没有内部音源系统,不过几乎所有键盘合成器/工作站则都可以扮演控制其它设备声音及参数的角色。而且丰富功能及便携性。(4)声光报警模块方案一:喇叭和显示管方案二:发光二极管和蜂敏器声光报警器外壳由不锈钢金属材料制成,产品采用了

5、密封结构设计,所以不受污染物和水的影响,防护等级为IP65。(5步进电机模块方案一:单相八拍方案二:两相四拍1.2.2 系统各模块的最终方案(1)控制器模块:AT89C52(2)显示模块:数码管(3)键盘输入模块:独立式键盘输入控制(4)声光报警模块:发光二极管和蜂敏器(5)步进机模块:两相四拍2.系统硬件电路设计(1) 键盘(2) 51实验板(3)驱动电路3.系统软件设计流程图4.软件系统源程序#include<AT89X52.H>#defineucharunsignedchar#defineuintunsignedintunsignedcharcodekeycode=0,1,2

6、,3,4,5,6,7,8,9,10,11,12,13,14,15;/101112131415/0123456789errorightclose0pen.FunsignedcharcodeLED_code=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x86,0x88,0xc6,0x8c,0x7f,0x8e;ucharmima_code=0,0,0,0;ucharwei_code=0xef,0xcf,0x8f,0x00;ucharcodezheng4=0x9f,0x5f,0x9f,0xaf;/正转ucharcodefan4=0xaf,0x6

7、f,0x5f,0x9f;/反转ucharjishu=3;ucharspeed;uchartemp=0;intwei=-1;ucharqing=0;uchari,j,k;/延时函数voidsubDelay(uintx)while(x-);/置数voidzhishu()mima_codewei=speed;)/显示voidxianshi_code()(if(wei>=0)P0=LED_code15;P2=wei_codewei;)elseP0=0xbf;P2=0x00;)/启动定时器,清零voiddisplay()if(temp=1)if(mima_code0=2&&mima

8、_code1=2&&mima_code2=4&&mima_code3=4)P0=LED_code11;P2=0x00;subDelay(65000);mima_code0=0;mima_code1=0;mima_code2=0;mima_code3=0;TR0=1;jishu=3;elsejishu-;P0=LED_code10;P2=0X00;subDelay(50000);subDelay(50000);P2=0xff;if(jishu=0)uchark=3;while(k-)P1_0=0;subDelay(10000);P1_0=1;subDelay(10

9、000);wei=-1;temp=0;speed=14;/按键扫描charsubMatrixScan()unsignedcharlcKeyTemp,i;unsignedcharlcRowSel=0xf7;/4个输出行分别输出0的选择码P3=0xF0;lcKeyTemp=P3;subDelay(200);/延时,消除抖动if(P3=0xF0)|(P3!=lcKeyTemp)return(16);/来)for(i=0;i<4;+i)(P3=IcRowSel|0xF0;switch(P3&0xF0)(case0xE0:lcKeyTemp=0;break;case0xD0:lcKeyTe

10、mp=1;break;case0xB0:lcKeyTemp=2;break;case0x70:lcKeyTemp=3;break;default:lcKeyTemp=16;break;)if(lcKeyTemp!=16)(lcKeyTemp+=i*4;break;)lcRowSel>>=1;)return(lcKeyTemp);)voidkey_process()unsignedcharkey=0xff;key=subMatrixScan();key=keycodekey;无按键或未稳定,返回空键码,随后再/检查各行有无按键/获取4列按键状态/仅第1列有按键/仅第2列有按键/仅第3

11、列有按键/仅第4列有按键/无按键或多按键/右移1位,选择下一行/返回按键状态switch(key)case0:speed=0;wei+;subDelay(50000);break;case1:speed=1;wei+;subDelay(50000);break;case2:speed=2;wei+;subDelay(50000);break;case3:speed=3;wei+;subDelay(50000);break;case4:speed=4;wei+;subDelay(50000);break;case5:speed=5;wei+;subDelay(50000);break;case6

12、:speed=6;wei+;subDelay(50000);break;case7:speed=7;wei+;subDelay(50000);break;case8:speed=8;wei+;subDelay(50000);break;case9:speed=9;wei+;subDelay(50000);break;case10:P0=LED_codekey;P2_4=0;break;case11:P0=LED_codekey;P2_4=0;break;case12:P0=LED_codekey;P2_4=0;break;case13:P0=LED_code10;P2_4=0;break;ca

13、se14:wei-;subDelay(50000);break;case15:temp=1;P0=LED_code15;subDelay(50000);P2_4=0;break;default:break;/定时计数器,电机控制voidTIMER0()interrupt1TH0=0xfc;TL0=0x18;TR0=0;for(i=0;i<10;i+)P0=LED_codei;P2=0x00;for(j=0;j<200;j+)for(k=0;k<4;k+)(P1=zhengk;subDelay(50);)P0=LED_code13;P1=0x0f;subDelay(60000)

14、;subDelay(60000);subDelay(60000);subDelay(60000);for(i=9;i>0;i-)P0=LED_codei;P2=0x00;for(j=0;j<200;j+)for(k=0;k<4;k+)P1=fank;subDelay(50);)P0=LED_code12;subDelay(60000);subDelay(60000);subDelay(60000);subDelay(60000);P2=0xff;P1=0x0f;/主函数voidmain()TMOD=0x01;TH0=0xfc;/计数器初始值TL0=0x18;EA=1;ET0=1;P1=0xff;while(1)key_process();zhishu();display();xianshi_code();5 .产品操作说明按键0-9为密码输放16号键为确认键,15号键为删除键密码为:22446 .调试中遇到的问题及解

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论