Atmega16L控制的刷卡消费计量系统

时间:2024-06-30 03:10:01 MBA毕业论文

关于Atmega16L控制的刷卡消费计量系统

  引言

  随着智能 IC 卡的普及,人们的衣食住行逐渐与IC 卡息息相关起来,对IC 卡的安全性、实用性也普遍提高。容量小、结构简单、安全性能差的磁卡正逐步淘汰,接触式IC 卡克服了磁卡的种种缺点应运而生,占据了绝大部分市场,然而非接触式IC 卡的出现将会给其带来巨大的挑战。非接触式IC 卡避免了接触读写带来的各种故障,如接触不良、污垢、粗暴插拔带来的损坏等,同时读写器与IC 卡实施双向密码鉴别制,安全性更好[1]。

  本文提到的刷卡消费系统中读卡器芯片 FM1702LS 便是针对基于ISO14443 协议的非接触式IC 卡设计的。该系统采用了射频自动识别技术开发的非接触式读卡器,在安全性、耐用性、防听、防解密方面将会有较大的优势,同时非接触式IC 卡采用的是1994 年由荷兰NXP 半导体公司发明的MIFAREI,操作简单、成本低、抗干扰能力强、安全可靠、且有多个扇区,该存储特点能使它一卡多用,应用于不同的场合或系统,从而真正实现“一卡通”。

  1 系统组成及工作原理

  如所示为该系统大致结构,主要由PC、RS232 通信接口、MCU(Atmega16L)、读卡芯片FM1702LS、非接触式IC 卡(MF1ICS50)、语音芯片(AP8942A),还包括语音功放、滤波等电路模块。其中天线该系统采用的是矩形设计。

  整个读卡器模块通过直流 5V 输出的电源适配器供电,经滤波、稳压为3.3V 供MCU 工作。通过在线调试SPI 接口初始化读卡器芯片,读卡器模块不间断的通过天线向外发送13.56MHz 的调制信号,进行寻卡,用户所购物品金额通过串口发送到单片机缓存寄存器,语音提示消费者刷卡,当M1 非接触式IC 卡靠近感应区,卡与读卡芯片进行信息交互,FM1702 通过SPI 接口向AVR 单片机上传用户卡内信息,扣除消费金额,通过串口上传用户消费信息给PC,与此同时PC 检索IC 卡序列号在数据库中对应的用户信息并更新,通过网络上传到后台服务器。

  2 系统硬件设计

  2.1 基于 Atmega16L 控制的读卡器电路

  该单片机与 FM1702LS 间主要电路是SPI 接口,通过它实现数据的交互,FM1702 接受单片机发送的指令,执行相应的操作,配置相应寄存器,初始化读卡器芯片,通过TX1、TX2 不断经天线发送13.56M 调制信号,接收脚Rx 等待接收IC 卡发送用户数据。读卡器的硬件电路原理图如所示。

  2.2 天线设计

  天线是非接触式IC 卡读写模块的一个重要组成部分,是无源MIFARE 卡能量的来源。当M1 卡接近刷卡区,卡片内与读卡器发射频率相同的LC 串联谐振电路,在电磁波的激励下产生共振,从而使电容有了电荷,通过电子泵积累电荷达到2V 时,可供卡内电路工作,M1 卡将卡内数据发射出去或接受读卡器的数据[2]。

  影响天线设计的主要因素有两个,最大磁通量和带宽。根据ISO14443 标准要求,各参数优化后天线与IC 卡通信距离可达10cm。从互感的原理可知,天线的半径越大,匝数越多,互感系数越大,但长度也有一定的限制。该系统天线采用的是PCB 印制矩形设计,对于13.56MHz 的系统来说,天线的最大尺寸在50cm 左右。

  2.3 语音模块设计

  如图所示,本系统语音模块采用的是CPU 并口触发模式,通过Atmega16L 上PA0-7的8 个I/O 口模拟并口实现与语音芯片AP8942a 间的寻址通信,SBT 为片选信号引脚,置高时读取并口地址信息,语音芯片输出地址对应段所烧录的语音信号,后经放大滤波,扬声器播报语音提示。

  3 系统软件流程

  系统的工作流程大致可分为以下几个步骤:

  3.1 刷卡请求

  系统上电复位后,读卡器自动寻卡。若PC 机未发送消费金额,则单片机中存储消费金额的缓存空间数据清零,用户刷卡后可查看所剩金额,扣款为零;若PC 机通过串口向单片机发送消费者消费金额,单片机判断所发送的数据格式是否正确或是否在单笔消费限额之内,语音提示刷卡或无效操作。

  3.2 刷卡验证

  语音提示刷卡后,用户进行刷卡扣款操作,读卡器检测感应区内的符合ISO14443A 标准的IC 卡,若有多个卡在感应区域防冲突机制会检测所有卡片的序列号进行区分,选中其中一张,未选中的进入等待下一次选卡。单片机将读卡器访问扇区的密钥与存放在单片机的片内EEPROM 中的密码进行效验,效验方式采用三次令牌认证机制,若密钥通过,即可对相应扇区进行读写操作,同时也可对IC 卡控制位进行编码,实现加值、减值、只读或只写等操作。

  3.3 刷卡结算

  读取指定扇区用户信息,在单片机中进行运算,返回余额到IC 卡中。同时单片机向上位机发送用户消费信息,更新PC 用户数据库。上位机采用Delphi 进行应用软件开发,其内容可包括新用户添加、用户删除、用户卡号姓名、消费余额、消费记录等等,建立起数据库备份,通过网络接口构建消费网络。工作流程如下图所示:

  4 结论

  本文介绍的一种简易的刷卡消费计量系统立足于国产芯片 FM1702LS 设计的非接触式IC 卡读卡器,相对于接触式IC 卡、磁卡等读卡方式,在安全性、可靠性、耐用性、易操作等居多方面占有明显优势,正逐步取代其它智能卡,具有良好的发展前景[5]。

  [参考文献] (References)

  【1】何翔,刘大健. 基于FM1702N 的射频识别系统的开发. 现代电子技术,2007,12(125):49-50

  【2】蒋慧. 基于FM1702SL 的射频读写器. 电子世界,2005,10:53-54

  【3】黎洪生,文浩,舒怀. 基于FM1702 的非接触式读写模块设计. 电子元器件应用,2007,1(9):16-18

  【4】邢海霞,索明何. 基于FM1702N 的射频识别读写器的设计与实现,科技广场,2007,1:202-204

  【5】何将三,陈国栋. 基于MF RC500 的射频识别读写器设计[J].单片机与嵌入式系统应用,2004,(11).

  【6】蒋宏艳,姚凯学,金智鹏,基于FM1702 通用芯片的智能远程水表设计,石油化工高等学校校报2007,9(20):36-39

【Atmega16L控制的刷卡消费计量系统】相关文章:

刷卡消费中身份识别新方法探讨03-10

物流系统的成本控制03-18

本钱系统控制03-28

电能计量装置的无线抄表系统03-18

PLC控制的花样喷泉系统03-29

农村文化消费:现状特征及计量分析03-22

本钱计量模式与企业本钱控制机制研究03-25

运动控制系统中的上位控制单元03-19

基于用电采集系统的计量异常监测与分析03-16