IC卡校园收费系统设计

出处:xukaiguo 发布于:2007-04-29 09:35:17

IC卡校园收费系统设计

辽宁机电职业技术学院 刘

IC卡及IC卡读写器概述

目前常用的IC卡有两种:接触式和非接触式IC卡。接触式IC卡通过机械触点从读写器获取能量和交换数据;非接触式IC卡通过线圈射频感应从读写器获取能量和交换数据,所以又称射频卡。本系统使用的是非接触式IC卡,它具有存储量大,成本低等特点。接触式IC卡虽得到了大量应用,但因本身的特点制约了其发展,如在许多情况下机械触点接通不可靠,且触点对腐蚀和污染缺乏抵抗能力,在有些领域应用不方便。非接触识别已经逐步发展成为一个独立的跨学科的领域,它将大量来自不同领域的技术综合在一起,如高频技术、电磁兼容性、半导体技术、数据保护和密码学、电信、制造技术和许多应用领域。

随着非接触IC卡的大量使用,它的成本也会越来越低,可以自己用单片机开发读写器,一般设计为两种类型:一种是通过串行口与PC机相连,在设计时,电路可以主要由非接触IC卡读写器芯片、单片机、天线和监控电路以及与PC机通信的TC232串行通信接口电路等部分组成。这种读写器除了编写单片机程序外,还需要用VB、DELPHI等语言进行软件开发。

另一种读写器是放在收费现场的,电路主要由非接触式IC卡读写芯片、单片机、键盘、显示、存储器、天线和监控电路等部分组成。 这种读写器的软件在编写时,只允许用户读卡片,并具有自动收费的功能。


系统设计原理

Mifare one s50的功能

容量为8K位EEPROM;

分为16个扇区,每个扇区为4块,每块16个字节,以块为存取单位;

每个扇区有独立的一组密码及访问控制;

每张卡有序列号,为32位;

具有防冲突机制,支持多卡操作;

无电源,自带天线,内含加密控制逻辑和通讯逻辑电路;

数据保存期为10年,可改写10万次,读无限次;

工作温度: 20℃~50℃(温度为90%);

工作频率:13.56MHz;

通信速率:106KBPS;

读写距离:10mm以内(与读写器有关)。

Mifare one s50的工作原理

卡片的电气部分由一个天线和ASIC组成。天线:卡片的天线是只有几组绕线的线圈,适于封装到IS0卡片中。ASIC:卡片的ASIC由一个高速(106KB波特率)RF接口,一个控制单元和一个8K位EEPROM组成。

卡分为16个扇区,每个扇区由4块(块0、块1、块2、块3)组成,将16个扇区的64个块按地址编号为0~63,存贮结构如图1所示。

第0扇区的块0(即地址0块),用于存放厂商代码,已经固化,不可更改。

每个扇区的块0、块1、块2为数据块,可用于存贮数据,可以进行初始化值、加值、减值、读值等操作。

每个扇区的密码和存取控制都独立,可以根据实际需要设定各自的密码及存取控制。

读写器向卡发一组固定频率的电磁波,卡片内有一个LC串联谐振电路,频率与读写器发射的频率相同,在电磁波的激励下,LC谐振电路产生共振,从而使电容内产生电荷,在这个电容的另一端,接有一个单向导通的电子泵,将电容的电荷送到另一个电容储存,当所积累的电荷达到2V时,此电容可做为电源为其它电路提供工作电压,将卡内数据发射出去或接收读写器的数据。

读写器

与PC相连的读写器

硬件图如图2。

单片机系统

硬件中的是ATMEL公司生产的AT89C51/LV51单片机,它是一种低功耗/低电压、高性能的8位单片机,片内带有一个4K字节的Flash可编程可擦除只读存储器,采用CMOS工艺和高密度非易失性存储器技术,输出引脚和指令系统都与MSC-51兼容。

IC卡微模块

采用JMY-502射频读写模块,该模块是基于Philips公司的非接触技术设计的微型嵌入式非接触式IC卡读写模块。内嵌MF RC500 或MF RC531 射频基站,用户不必关心射频基站复杂的控制方法,只需要简单地通过选定的UART 或I2C 接口发送命令就可以对卡片进行操作。JMY-502 支持Mifare One S50,S70,Ultra Light & Mifare Pro,当仅用于Mifare One 时可以设定自动寻卡。该模块内置512 字节的EEPROM,用户可以存储应用数据。每次写入和读取的字节数为1~16 字节,按字节的方式进行操作,Mifare 1 专用,默认为自动寻卡。在本实例中采用I2C通信方式,可以将单片机的串行口留给计算机使用。

读写芯处的引脚及说明如表1。

通信接口

与PC机的串行通信一般采用RS-232、RS-422或RS-485总线标准接口,或采用非标准的20nnJL电流环。为保证通信的可靠,在选择接口时必须注意:(1)通信的速率;(2)通信距离:(3)抗干扰能力;(4)组网方式。

目前有很多为RS-232C标准生产的专用驱动芯片,如MAX232系列、TC232、ICL232、AD232等。它们在单5 V供电条件下,将0/5 V(TTL电平)转换为 10V(RS-232电平),将 10V(RS-232电平)转换为0/5 V(TTL电平)。本实例中采用RS-232方式,使用的是TC232芯片。

一般用户读写器

用户读写器主要由IC卡微模块、单片机、天线、显示电路及时钟电路等部分组成,时钟电路采用DS1302芯片,使用I2C总线与单片机进行通信,提供实时实钟和日历(秒、分、时、日、周、月和年等信息,可以在收费现场按时间进行计时收费,电路图如图3所示。

软件设计

读写器的程序流程如图4。

程序设计中涉及到对数据块的操作,采用中断方式:

读 (Read):读一个块;

写 (Write):写一个块;

加(Increment):对数值块进行加值;

减(Decrement):对数值块进行减值;

存储(Restore):将块中的内容存到数据寄存器中;

传输(Transfer):将数据寄存器中的内容写入块中;

中止(Halt):将卡置于暂停工作状态;

程序中涉及到串行口程序,通信格式设置为:采用串行工作方式1,波特率为9600baud, 1个起始位,8位数据位,1个停止位,采取和校验方式。程序中的显示部分可以使用专用的LCD,按相应要求书写程序。

其中数据库部分的联VB与SQL数据库连接程序可以参考如下程序:

Set conn = New ADODB.Connection

conn.Open "driver={sql server};server=" & usern & ";database=ic"

Set order = New ADODB.Command

order.ActiveConnection = "driver={sql server};server=" & usern & ";database=ic"

oder.CommandText = "use master declare @xm char(10) set @xm='" & xm & "' declare @snr bigint set @snr=" & Snr & " declare @outvalue int set @outvalue=" & outvalue1 & " insert into sp_values (卡号,姓名,金额) values (@snr,@xm,@outvalue)"

cmd1.Execute

以上语句向数据库中插入一个写卡记录,其它操作省略。

PC机软件

可以使用VB和SQL进行人机画面的开发及数据管理等。下面是开发的界面,如图5、6。

结束语

相信随着非接触性IC卡的大量使用,成本的降低,这种卡系统会越来越多地使用于如校园收费中、门禁系统、考勤系统等各种场合。




  
关键词:IC

版权与免责声明

凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。

本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。

如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。

广告
上传BOM文件: BOM文件
*公司名:
*联系人:
*手机号码:
QQ:
应用领域:

有效期:
OEM清单文件: OEM清单文件
*公司名:
*联系人:
*手机号码:
QQ:
有效期:

扫码下载APP,
一键连接广大的电子世界。

在线人工客服

买家服务:
卖家服务:

0571-85317607

客服在线时间周一至周五
9:00-17:30

关注官方微信号,
第一时间获取资讯。

建议反馈

联系人:

联系方式:

按住滑块,拖拽到最右边
>>
感谢您向阿库提出的宝贵意见,您的参与是维库提升服务的动力!意见一经采纳,将有感恩红包奉上哦!