测控系统课程设计_第1页
测控系统课程设计_第2页
测控系统课程设计_第3页
测控系统课程设计_第4页
测控系统课程设计_第5页
免费预览已结束,剩余17页可下载查看

下载本文档

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

文档简介

1、AT89C5K 乍AT24C1024摘要本设计主要针对楼层单元门禁系统的设计与研究。设计采用单片机芯片 为主控芯片;通过4x4矩阵键盘,实现密码的输入与主要功能的选择;通过实现密码的存储与断电保护;通过LCD1602®现必要的显示。设计从硬件电路和软件两方 面全面的分析了门禁系统,硬件电路组成主要包括:密码输入模块、密码存储模块、显示模块、报警模块和开锁模块等部分。设计具有很强实用性,并且,在现实生活中应用很广 泛。关键词:AT89C51 LCD1602 门禁系统 AT24C1024引言随着科学技术的发展和科技的进步,人们对于高科技服务于生活的要求也越来越高, 然而人们感受着高科技给

2、他们带来的极大便利的同时,也带来了许多不安全因素。例如, 运用高科技手段进行盗窃、抢劫等犯罪行为与日俱增。怎样才能使安全防范措施跟得上科 技的发展?仅依靠单一的物理防范远远不够的。于是智能门禁系统应运而生。智能门禁系 统是一种综合性的多学科的高科技技术集合,它涉及电子、机械、光学、计算机技术、通 信技术、生物统计学等诸多新技术领域。1门禁系统的分类1.1按照门禁系统的设计原理分类1 .独立一体机:这种门禁系统是控制器自带读卡器的方式, 优点是价格便宜,便于安装, 缺点是部分控制线必须露在门外,出门无须卡片或密码即可出门,安全性较差。2 .控制器与读卡器分体的:此种门禁系统控制器安装在室内,只有

3、读卡器输入线露在室 外其它所有控制线均在室内,而读卡器传递的是数字信号,因此,若无有效卡片或密 码任何人都无法进门。较于独立一体机贵,但是安全性较之有很大的提高,以后门禁 系统的首选。门禁控制器与读卡器分开的方式中,又有单机型控制器和联网型控制器。1 .单机型控制器:适于用小系统或安装位置集中的单位,通常采用RS485通讯方式,优点是投资小,通讯线路专用。缺点一旦安装好就不能方便地更换管理中心的位置,不 易实现网络控制和异地控制。2 .网络型:此类产品的通讯方式采用的是网络常见的 TCP/IP协议。优点是控制器与管理 中心是通过局域网传递数据的,管理中心位置可以随时变更,不需要重新布线安装,

4、很容易实现网络控制和异地控制。适用于大系统或安装位置分散的系统中,缺点是系 统的通讯部分的稳定依赖于局域网的稳定。1.2按照门禁系统的进出识别方式1 .密码识别:通过检验输入密码是否正确来识别进出权限。优点是操作方便,无须携带卡片且成本低;缺点是同时只能容纳 3组密码,容易泄漏,安全性很差且只能单向控 制和无进出记录。2 .卡片识别:通过读卡或读卡加密码方式来识别进出权限,按卡片种类又分为:(1)磁卡优点:成本较低,安全性一般,可联微机有开门记录缺点:卡片是接触式刷卡,设备有磨损,使用寿命较短,卡片容易复制,不易双向控制,且信息容易因外界磁场丢失,使卡片无效。(2)射频卡优点:卡片与读卡器间是

5、非接触方式,开门方便安全且寿命较长。安全性高,可联机使用, 有开门记录,可以实现双向控制,卡片很难被复制。2门禁系统的发展最近几年随着感应卡技术,生物识别技术的发展,门禁系统得到了飞跃式的发展,进 入了成熟期,集成了微机自动识别技术和现代安全管理措施为一体,涉及电子、机械、 光 学、计算机技术、通讯技术、生物技术等诸多技术。它是解决重要部门出入口实现安全防 范管理的有效措施。适合各种机要部门,如银行、宾馆、机房、军械库、机要室、办公问、 智能化小区、工厂等。在数字技术网络化的今天,门禁系统早已超出了单纯的门道及钥匙 管理,已经逐渐发展成为一套完整的出入管理系统。目前,国内外研制和使用的门禁系统

6、主要集中在感应门禁系统和生物识别门禁系统。在生物识别门禁系统中又以指纹门禁系统应用最为广泛。随着计算机图像处理和模式识别 理论以及大规模集成电路技术的不断发展与成熟,指纹自动识别系统的体积不断缩小,其价格也将不断降低。3 .门禁控制系统的功能(1)刷卡记录:当人员进/出门时需持卡在读卡器前进行读卡, 读卡器读取信息后,将 信息传送到主机,主单片机判断该信息的合法性,并可发出警报。(2)信息显示功能:选用带液晶读卡器,还可显示时钟,刷卡指示等信息。(3)记录存档及查询功能:主机会将刷卡信息、日期、时间等数据保存以供查询或直 接传输到电脑进行处理。所有读卡资料均有电脑记录。(4)密码键盘功能:如果

7、用户想刷卡后按密码才允许进入。 卡+密码的操作方式目的在 于用于对安全性要求更加高的场合。连续 3次密码输入错误键盘自动锁住。(5)异常报警功能:门户的状态和行为,都可实时反映到控制室的电脑中,当门打开 的时间过长,非法闯入、门锁被破坏等情况出现时,可以实现计算机报警。(6)系统扩展性好,具有联网功能:模块化的组网方式,集合RS422?口 IIC总线传输的优势,使系统的组网方式更加灵活,系统的扩展更加方便。任务与分析任务设计一楼层单元门禁系统,能实现楼层住户密码开锁或呼叫开锁,能显示操作状态,阻止陌生人进入,能输出报警及显示。设计完整的电路原理图和编写相关程序。用MCS-51 系列单片机或其它

8、CP侨为控制器设计一完整控制系统,需包括以下内容:各楼层需实现呼叫及对讲;用LCD1602a示或用LED显示;有密码输入按键;有声音及报警输出;当断电时能维持24小时正常工作。用PROTEUS真其中一个功能。任务分析:第一步:选择AT89C5H1片机作为主控芯片第二步:设计4x4矩阵键盘,实现密码的输入控制第三步:选用AT24C102册片,实现密码存储,断电保护;第四步:选用LCD1602乍为显示,实现设计具有现实功能的要求第五步:设计开锁电路,实现开锁功能第六步:设计报警电路,实现报警功能通过完成以上六步,即可设计出完整的门禁系统。设计方案门禁系统的设计主要包括:键盘输入模块、显示模块、存储

9、模块、报警电路、开锁电路的设计。下文,将会对各个模块的硬件设计和软件部分进行详细的论述与讨论。第一部分是硬件电路的设计,第二部分是相关程序软件的编写。第一部分:硬件电路的设计1控制芯片AT89C51及附属电路1.1 AT89C51的介绍和引脚封装AT89C51 是一种带 4K 字节 FLASH 存储器(FPEROM Flash Programmable and Erasable Read Only Memory )的低电压、高性能 CMOS前微处理器,俗称单片机。 AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦 除只读存储器可以反复擦除1000次。该器件采用

10、ATMEL®密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL勺AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。具引脚及封装如下所示:|T2J Pl 0 匚 tT2 EX) P1 .1 I- P1.2 E Pl,3 : .4, MOSI) Pl .5 _ ,MISO) Pl.6 C(SCK) Pl ,7 仁 RST -mXDj P3.0 二 (TXD) P3.1 !_ LIE,二3;(TNT1)户3.3 C ITO) PS 4 C(Tl) P3 * :iRO:. PJ.T

11、 XTALS - XTAL1GN口J VCC PO.Q (ADO) 1 P0.1 (ADl) P0.2 iAD2)J P0.3 r AD3 j PD.4 (ADJ) 二1 PD.S 1AD5) PO S (AOS) "11 PO 7 (AD7) EA/VPP ALE PROG PSEN 71 P2.7 i Al 5) .i RZ 6 (A14) P2.5P2 J /A12) PH.3 (A1 1) P2 2 iAlCl) P2.1 g守) 口之口卜图1 AT89C51弓唧图AT89C51 提供以下标准功能:4k字节Flash闪速存储器,128字节内部RAM32个 I/O 口线,两个1

12、6位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口, 片内振荡器及时钟电路。同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可 选的节电工作模式。空闲方式停止 CPU的工作,但允许RAM定时/计数器,串行通信口 及中断系统继续工作。掉电方式保存RAM+的内容,但振荡器停止工作并禁止其它所有部 件工作直到下一个硬件复位。1.2 复位电路根据应用的要求,复位操作通常有两种基本形式:上电复位和按钮复位最简单的上电复位电路。工作原理为:上电瞬间 RC电路充电,RST引脚端出现正脉 冲,只要RS础保持两个时钟周期以上的高电平, 就能是单片机有效的复位。如图2所示 的上电与按钮复

13、位电路,常采用的是上电与按钮复位电路。1.3 晶振电路51系列的单片机的时钟信号通常用两种电路形式得到,即内部振荡方式和外部振荡方式。在引脚XTAL1和XTAL2外接晶体振荡器,就构成了内部振荡电路,如图3所示。图 中C1、C2起稳定振荡频率、快速起振的作用,电容值一般为5pF30pF。晶体振荡选用6MHz 12Mhz或24Mhz采用用口时常使用11.0592MHz内部振荡所得到的时钟信号比较稳定, 应用比较多。图3晶振电路2键盘输入模块由于独立式键盘只适合于按键较少的场合,否则占用的端口太多,按键较多时,通常 采用行列式键盘电路。但由于行列式键盘的管理程序较为复杂,需要采用键盘扫描技术, 常

14、用的键盘扫描技技术方式有扫描法、线反转法、状态矩阵法。所以本设计主要采用4x4矩阵键盘。扫描方式采用线反转法。2.1键抖动及消除键抖动键盘是有若干个按键组成的,它是单片机最简单的输入设备。用户通过键盘输入数据 和指令,实现简单的人机对话。“键”就是一个简单的开关,当键按下时,相当于开关闭 合,当键松开时,相当于开关断开。键在闭合和断开时会存在抖动现象,键的抖动时间一 般为5ms10ms键抖动一次可能造成一次按键的多次闭合、释放的问题。所以应采用措 施消除抖动的影响。应用中有采用硬件去抖动和软件去抖动两种方法, 常采用的软件去抖动的方法。软件 去抖动即使,软件延时5ms10ms勺方法来消除抖动的

15、影响。当单片机检测到有键闭合的 时候,先延时5ms10ms然后再检测按键的状态,如果仍然是闭合状态,则认为真正有 按键按下。当需要检测按键释放时,也可以采用同样的方法。2.2矩阵键盘图4 4x4矩阵键盘2.3线反转扫描法I/O 端分为行线和列线,按键跨接在行线和列线上,键按下时,行线和列线将发 生短路。过程如下:(1)先从P1端口的高4位输出低电平(列)。低4位输出高电平(行),即P1=0x0f, 从P1 口读取键盘状态。这时如果低4位中 只要有一位出现“0”,说明此行中有按键按下。 各行中有键按下从P1 口读取的数值依次是:0EH 0DH 0BH 07K(2)再从P1 口的低4位输出低电平(

16、列)。高4位输出高电平(行),即P1=0xf0, 从P1 口读取键盘状态。这时如果高4位中 只要有一位出现“0”,说明此列中有按键按下。 各列中有键按下从P1 口读取的数值依次是:E0H D0H B0H 70K(3)将两次读取的特征值,进行组合,得到当前按键的特征码。3密码存储模块3.1 24C02C 介绍24C02C用彳T E2PRO睚基于I2C-BUS的存储器件,遵循二线制协议,由于其具有抗干 扰能力强、接口方便,体积小,数据掉电不丢失等特点,在仪器仪表及工业自动化控制中 得到大量白应用。24C02C中带有的片内地址寄存器。每写入或读出一个数据字节后,该 地址寄存器自动加1,以实现对下一个

17、存储单元的读写。所有字节均以单一操作方式读取。 I2C总线是一种用于IC器件之间连接的二线制总线。通过 SDA件行数据线)及SCL(串行 时钟线)两根线在连到总线上的器件之间传送信息,并根据地址识别每个器件。24C02CF是运用了 I2C规程,使用主/从机双向通信,主机(通常为单片机)和从机均可工作于接收 器和发送器状态。主机产生申行时钟信号(通过SCL引脚)并发出控制字,控制总线的传送 方向,并产生开始和停止的条件。无论是主机还是从机,接收到一个字节后必须发出一个 确认信号ACK 管脚描述:SCL为申行时钟:串行时钟输入管脚用于产生器件所有数据发送或接收的时钟SDL为串行数据/地址:双向串行

18、数据/地址管脚用于器件所有数据的发送或接收 SDL A0、A1、A2为器件地址输入端:当使用24C02时最大可级联8个器件,如果只有一个24C02 被总线寻址,这三个地址输入脚 AR A1、A2可悬空或连接到Vss。1-23WP%写保护:如果 WP管脚连接到Vcc所有的内容都被写保护只能读当 WP,管脚连接到 Vss或悬空,允许器件进行正常的读/写操作。管脚图如图5所示。SCK A0SDA A1WP A224C02C图5 24C02C引脚图3.2 24C02C电路连接图4显示模块图6 24C02C连接图了解系统的运行与工作状态显示器是不可缺少的,显个典型的输出设备并且它的实际应用也是极为广泛的

19、,几乎所有的电子产品都会使用到显示器具差别仅在于显示器的结构类型不同而已。最简单的显示器可以是LED发光二极管或者数码管。1602 型 LCD显示模块具有体积小,功耗低,显示内容丰富等特点。1602型LCD可以显示2行16个字符,有8位数据总线D0D7ffi RS R/W EN三个控制端口,工作电压为 5V,并且具有享符对比度调节和背光功能4.1 LCD1602 引脚图1LCD2LM016LI2 3 1 4 5 6| 7 819 |o 1 2卜卜图7 LCD1602弓唧图基本操作程序:读状态:令RS=LRW= LE=H输出:D0D7状态字读数据:令RS=HRW= H E=H输出:无写指令:令R

20、S=LRW= L D0D7=旨令码,E=®脉冲输出:D0D7数据写数据:令RS=HRW= L D0D7数据,E二高脉冲输出:无4.2 LCD1602显示电路图8显示电路5报警及开锁电路5.1 开锁电路开锁步骤如下:首先按下键盘上的开锁按键,然后利用键盘上的数字键0-9输入密码,最后按下确认键。当用户输入密码后,单片机自动识别密码,如果密码不符。具体电 路如图所示。5.2 报警电路图蜂鸣电路第二部分相关程序软件的编写为了完成上述任务,在进行软件设计时,通常把整个过程分成若干个部分, 每一部分叫做一个模块。把一个程序分成具有多个明确任务的程序模块, 分别编制、调试后再把它们连接在一起形成

21、一个完整的程序 1键扫描程序举例uchar keyscan() uchar scan1,scan2,keycode,j;P1=0xf0;scan1=P1;判键是否按下延时10ms二次判键是否按下组合成键编码查表得键值if(scan1&0xf0)!=0xf0)/ delaykeyms(10);/scan1=P1; if(scan1&0xf0)!=0xf0)/P1=0x0f;scan2=P1;keycode=scan1|scan2; / for(j=0;j<=15;j+) if(keycode= key_codej) / key=j; return(key); else P1

22、=0xff;return (16);2 LCD1602显示程序举例 void delay1(uint x)uint a,b;for(a=x;a>0;a-)for(b=100;b>0;b-);void write_command(uchar command)P0=command;lcdrs=0;lcden=0;delay(10);lcden=1;delay(10);lcden=0;void write_date(uchar date)P0=date;lcdrs=1;lcden=0;delay(10);lcden=1;delay(10);lcden=0;void lcd_init()w

23、rite_command(0x38);delay(20);write_command(0x0f);delay(20);write_command(0x06);delay(20);write_command(0x01);delay(20);3 24C02C相关程序举例 uchar a;/void delay()/;/ ; void start() / 开始信号sda=1;delay();scl=1;delay();sda=0;delay();void stop() / 停止sda=0;delay();scl=1;delay();sda=1;delay();void respons() / 应答u

24、char i;scl=1;delay();while(sda=1)&&(i<250)i+;scl=0;delay();void init()sda=1;delay();scl=1;delay();void write_byte(uchar ch)uchar i,temp;temp=ch;for(i=0;i<8;i+)temp=temp<<1;scl=0;delay();sda=CY;delay();scl=1;delay();scl=0;delay();sda=1;delay();uchar read_byte()uchar i,k;scl=0;dela

25、y();sda=1;delay();for(i=0;i<8;i+)scl=1;delay();k=(k<<1)|sda;scl=0;delay();return k;void write24c08date(uchar address,uchar ch) start();write_byte(0xa0);respons();write_byte(address);respons();write_byte(ch);respons();stop();delayms(8);uchar read24c08date(uchar address)uchar ch;start();write

26、_byte(0xa0);respons();write_byte(address);respons();start();write_byte(0xa1);respons(); ch=read_byte();stop();return ch;delayms(8);void memory_init()uchar i;for(i=0;i<100;i+)write24c08date(i,0);delayms(8);4主程序void main()uchar number=0,number1=0;lcd_init();/24c02 里面取出正确的密码relay=1;for(number=0;number<6;number+) keyvalue4number=read24c08date(1+number); delayms(5);for(number=0;namenumber!='0'number+)write_date(namenumben); delayms(10);write_command(0x0c);write_command(0x80+0x40);for(number=0;name1number!='0'number+)write_date(name1number);delayms(10);write_comma

温馨提示

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

评论

0/150

提交评论