2.2.4 单片机与IC卡读卡模块接口电路设计
本系统单片机和IC卡读卡器模块通过5个IO口相连,驱动程序通过SPI总线模式实现IC卡的读写操作。IC卡读卡器与单片机接口电路如下图,
图2.4IC卡底座接口图
图中编号1-8为射频刷卡模块的引脚图,分别是RST、CS SI SCK SO接口,模块插接到这个底座上,就会对应和单片机的P10、P11 P12 P13 P14 相接。
2.3 键盘电路设计
2.3.1 键盘识别原理
在键盘中按键数量较多时,为了减少I/O口的占用,通常将按键排列成矩阵形式,如图1所示。在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以连接。这样,一个端口(如P1口)就可以构成4*4=16个按键,比之直接将端口线用于键盘多出了一倍,而且线数越多,区别越明显。 矩阵键盘的扫描通常采用:行扫描法。行扫描法又称为逐行(或列)扫描查询法,是一种最常用的按键识别方法,介绍过程如下。
(1)判断键盘中有无键按下 将全部行线置低电平,然后检测列线的状态。只要有一列的电平为低,则表示键盘中有键被按下,而且闭合的键位于低电平线与4根行线相交叉的4个按键之中。若所有列线均为高电平,则键盘中无键按下。 (2)判断闭合键所在的位置 在确认有键按下后,即可进入确定具体闭合键的过程。其方法是:依次将行线置为低电平,即在置某根行线为低电平时,其它线为高电平。在确定某根行线位置为低电平后,再逐行检测各列线的电平状态。若某列为低,则该列线与置为低电平的行线交叉处的按键就是闭合的按键。
10
2.3.2 键盘电路及键盘按键设计
本系统中4X4矩阵键盘通过8个IO口与单片机相接,电路中我们用到了P1口。每个按键通过程序识别唯一的编号,然后在程序中对按键的键值进行在定义,让按键具备新的功能。矩阵键盘电路及按键定义表如下:
图2.5 键盘电路图
0
1 5 9 + 2 6 确认 - 3 7 退出 密码清除 4 8 设置
I/O口作为输出端,而列线所接的I/O口则作为输入。这样,当按键没有按下时,所有的输入端都是高电平,代表无键按下。行线输出是低电平,一旦有键按下,则输入线就会被拉低,这样,通过读入输入线的状态就可得知是否有键按下了。
2.4 电子锁门禁继电器驱动电路设计
2.4.1 继电器介绍
继电器是具有隔离功能的自动开关元件,广泛应用于遥控、遥测、通讯、自动控制、机电一体化及电力电子设备中,是最重要的控制元件之一。
继电器一般都有能反映一定输入变量(如电流、电压、功率、阻抗、频率、温度、压力、速度、光等)的感应机构(输入部分);有能对被控电路实现“通”、“断”控制的执行机构(输出部分);在继电器的输入部分和输出部分之间,还
11
有对输入量进行耦合隔离,功能处理和对输出部分进行驱动的中间机构。 2.4.2 继电器驱动电路设计
本系统设计的电子锁门禁系统,采用了一只PNP三极管S8550来驱动电路,其目的是增大驱动电流,因为继电器线圈驱动需要较大的电流才能启动,而单片机IO输出的电流非常微弱,达不到驱动的要求。
当单片机IO口输出低电平时S8550三极管导通,继电器线圈产生电磁感应将开关吸合,就接通了电子锁电源,电子锁就可以开了。当IO口给高电平时,线圈没有电流,继电器断开。
图2.6 继电器驱动电路图
2.5 LCD1602液晶显示电路设计
2.5.1 LCD1602液晶介绍
字符型液晶显示是一种专门用于显示字母、数字、符号等点阵式LCD,本设计采用的是LCD1602型液晶显示器,其外形尺寸为80×36×14,单5V供电,由左到右共16个引脚,其实物如图
602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,如图3.13所示,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A” 。 2.5.2 单片机与LCD1602液晶接口电路介绍
LCD1602液晶显示模块可以和单片机STC89C52直接接口,DB0~DB7
12
与单片
机的P0.0~P0.7连接以便数据的传送与接收,4管脚、5管脚、6管脚分别与STC89C51单片机的P2.7口、P2.6口、P2.5口连接,电路如下图所示:
图2.7 液晶接口电路图
13
3 系统的软件设计
3.1 系统总程序设计
系统上电后首先进行初始化,完成液晶、键盘等初始化任务。然后进入死循环,单片机控制IC卡模块时时扫描判断是否有IC靠近,当靠近时,启动IC卡读取程序,识别IC卡卡片信息后,与AT24C02芯片内存储的IC卡数据库信息进行比对,如果校验成功则控制门禁开,反之则不开门禁。整个过程LCD1602液晶显示操作过程及数据信息。 系统主流程图如下。
图3.1 系统主程序流程图
3.2 IC卡读写子程序设计
IC卡读写卡的过程一般包含如下几个步骤: (1)复位应答(Answer to request)
射频卡的通讯协议和通讯波特率是定义好的,当有卡片进入读写器的操作范围时,读写器以特定的协议与它通讯,从而确定该卡是否为M1射频卡,即验证卡
14