基于ARM的双频RFID读写设计
1 引言
RFID(Radio Frequency Identification Technology,无线射频识别技术)由于具有高速移动物体识别、多目标识别和非接触识别等特点,显示出巨大的发展潜力和应用空间,被认为是21 世纪最有发展前途的信息技术之一。射频识别技术虽然有很多优点,但其技术本身也有局限性。对RFID 系统而言,低频系统具有良好的对水、肉体等可导媒介的穿透力,而速度、距离、抗冲突性较差;而高频系统则正好相反。如能结合各种频率系统,用其所长,则可以使RFID 适应多种场合,拓展其应用范围。本文设计的系统正是基于这一出发点,将低频和高频二种频率的RFID 模块组合在一起,构成双频系统,使系统兼具低频可穿透性和高频良好的距离、速度、抗冲突性等方面的优势。鉴于目前国内市场上应用最为广泛的射频卡和读写器实现方法,本文采用ARM 嵌入式系统作为微控制器,设计了能对低频125KHz 和高频13.56MHz 的二种频率RFID 卡操作的读写模块,实现了的双频 RFID 读写系统。
2 系统设计
由于ARM 微处理器具有运行速度快,接口功能丰富,其应用越来越广泛。本文采用三星公司的S3C44B0X,它是ARM7 系列的低功耗的32 位RISC 处理器,具有 ARM7TDMI内核,有丰富的内置部件,包括8K 字节Cache 和内部SRAM,带自动握手联络的2 通道UART,定时器,通用 I/O 口,ADC 和I2C-BUS 控制器等。尤其是它的内置液晶显示器接口,可直接连接LCD 显示器,无需专用LCD 显示器接口芯片,可使成本降低,很适合在本系统中使用。读写系统的结构如图1 所示。
图1 系统结构框图
整个系统由ARM 嵌入式系统(包括S3C44B0X,SDRAM 存储器和FLASH 存储器),低频RFID 卡读写模块,高频RFID 卡读写模块,USB 接口,LCD 显示器以及蜂鸣器、状态指示灯等组成。RFID 模块是北京华闰得公司开发的具有串行数据通信接口的模块,低频读写模块是 CR001,为工作于125kHz 的EM4001 卡;高频模块是CR013,为工作于13.56MHz的MF 卡。由于RFID 模块具有TTL 电平的串行通信接口,这样ARM 微处理器可直接通过片上的二个UART 接口与其连接,不需要电平转换即可轻松实现与RFID 模块的通信。嵌入式系统与 PC 机的连接则通过USB 接口实现。
因为低频 RFID 卡一般都是只读卡,进入读卡器磁场范围后,就自动发出信号。ARM微处理器通过不断检测端口捕捉信号,一旦读到卡,就读取信息,并在LCD 上显示。对于高频卡,可根据需要进行读或写操作。
LCD 显示器采用320*240 点阵的STN 型彩色液晶模块,可直接与S3C44B0X 连接,成本也较低。对LCD 的显示控制直接使用 S3C44B0X 内部的LCD 驱动控制器实现,它能自动产生LCD 驱动控制所需的信号。在这种接口方式下,LCD 显示缓冲区映射在系统的存储器空间上,程序只需将像素点内容写入存储器对应地址就可以实现对应LCD 屏上像素点颜色的显示刷新,控制十分方便。
键盘和状态指示灯的操作控制采用 ZLG7290 实现。ZLG7290 是一款功能较强的按键处理和7 段数码管显示专业芯片,提供了I2C 串行接口和键盘中断信号,可方便地与S3C44B0X连接。
在上位机(PC 机)上,通过设计专门的软件实现对RFID 卡的读写操作,并对RFID 卡进行管理。由于PC 机功能强大,如再配上数据库系统,可以对大量用户的数据和信息进行存储和查询等处理,满足多种应用的需要。
3 系统的软件设计
3.1 RFID 模块操作
CR001 模块与S3C44B0X 的串口(UART0)相连,在接收数据前首先要对UART0 进行初始化。根据CR001 的使用规范,设置波特率为9600Baud,数据位为8 位,1 位停止位,无校验位。为使ARM 对低频RFID 卡及时作出响应,软件采用中断方式接收数据,即当 S3C44B0X 的UART0 接收到数据时,产生中断,在中断服务程序中接收CR001 模块的数据。
根据 CR001 射频读写模块的使用规范,CR001 模块输出的数据包有5 个字段,即起始符(STX,02H)、数据(10 个ASCII 字符)、校验和(2 个 ASCII 字符)、LD 和LF(0DH和0AH)、结束符(ETX,03H)。因此在软件设计中,当收到UART0 的数据时,首先要判断一个数据包的起始符和结束符,以确定一个数据帧的起止位置,然后再检验数据的校验和是否正确。只有在接收的数据无误时,再将其中的数据取出、存储,并在LCD 上显示。中断服务软件的流程如图2 所示。
图 2 CR001 模块的中断服务程序流程
CR013 射频读写模块是采用Philips 公司的Mifare 技术设计的微型嵌入式、非接触式IC卡读写模块,内嵌 ISO14443 Type A 协议解释器,并可直接驱动射频天线。这是一种以被动方式工作的卡,刚进入天线有效感应区的卡得电进入空闲(IDLE)状态,它只吸收感应区内的磁场能量,不会首先发出信号。当读卡设备发出请求信号,符合条件的卡才会响应。因此处理器与模块之间以一问一答式的半双工方式进行通信。
- 赛普拉斯半导体CEO将RFID系统用在自家酿酒厂(11-18)
- 金属对RFID系统影响研究(12-01)
- RFID温度标签解决食品冷藏和加热问题(05-28)
- RFID 技术在矿灯管理中的应用(10-06)
- 基于FM 1702SL的射频读写器(01-25)
- 远距离RFID读写天线的研究(03-01)