您当前的位置:五五电子网电子知识通信技术射频技术-RFID手持式RFID读写器网络接口设计 正文
手持式RFID读写器网络接口设计

手持式RFID读写器网络接口设计

点击数:7316 次   录入时间:03-04 11:51:34   整理:http://www.55dianzi.com   射频技术-RFID

    内容摘要:为适应RFID 读写器在不同应用系统中的要求,开发了一种以MSP430F149单片机为核心的具有嵌入式以太网网络接口的手持式RFID 读写器。文中介绍RFID 读写器中单片机与以太网控制器RTL8139 组成的网络接口设计方法,实现了手持式RFID 读写器接入Internet 网络进行数据通信。

      RFID 技术目前广泛应用于身份识别、防伪应用、供应链应用、公共交通管理、物流管理、生产线自动化与过程控制、容器识别等领域。由于手持式RFID读写器的存储器容量有限,保存在读写器中的数据可以通过USB 等接口传送到计算机中进行处理,但为更方便快捷地将读写器中的数据传送到远程的计算机系统中,将便携设备网络化是解决上述问题的有效途径之一。但目前的手持式RIFD 读写器并不具备与互联网进行网络连接的网络接口。另外,手持式RFID 读写器是通过内部所装有的电池进行供电,所以降低其工作功耗也是主要问题之一。而MSP430F149 单片机是一款16 位超低功耗的处理芯片,它将多个不同功能的模拟电路,数字电路模块集成于一身,适合应用与需要电池供电的便携式仪器仪表中。

      因此,文中主要介绍手持式RFID 读写器中MSP430F149 单片机与以太网控制器RTL8139 接口的硬件设计的方法,以及相应的硬件设备驱动程序的设计和TCP /IP 协议栈的处理方法。

      1 网络接口硬件结构。

      1. 1 网络接口

      手持式RFID 读写器是便携式射频识别系统的主要设备,其网络接口主要由MSP430 单片机与以太网控制器RTL8139 块等组成。其网络接口硬件结构如图1 所示。

图1 网络接口框图

图1 网络接口框图

      根据便携设备的低功耗要求,MSP430 单片机采用MSP430F149,具有超低功耗、强大处理能力、丰富片上外围模块及多种存储器形式等功能,其中有2 个具有中断功能的8 位并行端口P1与P2和4 个8 位的通用并行端口P3、P4、P5与P6,可以满足和以太网控制器的接口,而且能够实现RFID 读写器的其他接口功能。

      隔离变压器选用PM34 - 1006M10 /100 /1000M 变压器。采用RTL8139 以太网控制器作为网络接口。

      由于RTL8139 是PCI 总线接口,不能直接与8 位的MCU 接口,需要一个PCI 接口进行转接。单片机在进行外部存储器操作时采用的信号有P0口、P2口、ALE以及RD 和WR 信号。其中,P0口为地址( 低8 位) /数据复用,P2口为高8 位地址信号; ALE 为地址锁存信号,为高电平时将P0口的值锁存到低8 位数据线上; RD 和WR 为读写有效信号,低电平有效。因此,PCI 接口实际上是起到一个从单片机读写时序到32位PCI 读写时序转换的作用。

      1. 2 RTL8139 的结构及编程接口

      RTL8139 是台湾ReaLTEk 公司生产的一种高度集成的全面支持IEEE802. 3 标准的以太网控制器芯片,支持微软的PNP 规范。利用双绞线可以和全双工网络交换机相连接,能够同时接收和发送数据。支持UTP( UnshiELDed Twisted Paired) ,AUI( Attachment UnitInterface) 自动侦测。支持IO 地址全解码模式。其主要特性如下:

      ( 1 ) 符合Ethernet Ⅱ 和IEEE802. 3 ( 10Base5,10Base2,10BaseT) 标准。

      ( 2) 支持跳线和免跳线两种工作方式。

      ( 3) 全双工,收发可同时达到100 Mbit·s - 1 的速率。

      ( 4) 支持32 位数据PCI 总线。

      ( 5) 允许3 个诊断LED 可编程输出。

      ( 6) 128 脚LQFP 封装,缩小了PCB 尺寸。

      如图2 所示,RTL8139 内部已经包含有整个网络接口层的协议,因此应用起来较简单。用户不必考虑链路控制问题,而只需考虑单片机如何从RTL8139 中去读TCP /IP 协议的数据即可。

图2 RTL8139AS 内部结构图

图2 RTL8139AS 内部结构图

      PCI 总线信号有3. 3 V 标准和5 V 标准,信号线众多,但并不是所有的PCI 设备都使用全部的PCI 接口信号,实际只使用需要的即可。RTL8139AS 以太网控制器遵循3 V 标准,并且只使用了PCI 总线信号中的以下部分: AD[31: 0]为数据信号复用总线。

      FRAME 为帧周期信号,由当前主设备驱动,表示一次访问的开始和持续时间。IRDY 为主设备准备好信号。

      TRDY 为从设备准备好信号。C /BE 为总线命令和字节使能复用信号。地址期是总线命令,数据期是字节使能。IDSEL 为初始化设备选择信号。在参数配置读写传输期间,用作片选。对于只有一个PCI 设备的情况,它可以总接高电平。RST 为复位信号。CLK 为系统时钟信号,频率范围DC ~ 33 MHz.以上信号都在CLK 的上升沿有效。INTA 为中断请求信号,RTL8139数据准备好后可以用来向主控制器发出中断。

      DEVSEL 为设备选择信号,表明驱动它的设备已成当前访问的设备,由于系统中,RTL8139 是单一的PCI 设备,因此该信号可以不用。

      2 网络接口软件结构

      RFID 读写器系统网络接口软件主要包括硬件设备驱动程序、TCP /IP 协议栈、应用协议和其他用户应用程序。网络接口软件的流程如图3 所示。

图3 网络接口软件流程图

图3 网络接口软件流程图。

      其中应用协议和其他用户应用程序将在二次开发时根据RFID 读写器的具体功能要求进行设计,这里主要介绍硬件设备驱动程序、TCP /IP 协议栈的实现方法。

      2. 1 硬件设备驱动程序

      硬件设备驱动是将PCI 接口当作单片机的外部存储器看待,单片机以读写外部存储器的时序对PCI 接口进行读写,再由PCI 接口将这种读写操作时序转换成PCI 时序对以太网控制器进行操作。主要包括3 个部分,网络初始化,发送控制和接收控制。主要完成对CR,TCR,RCR IMR ISR,RBSTART,MAR 等寄存器操作。



www.55dianzi.com

      发送控制过程在网络中,帧传输的过程是发送方将待发送的数据按帧格式要求封装成帧,然后同过网卡发送到网络的传输线上。发送程序框图如图4所示。

图4 RTL8139 数据发送流程图。

图4 RTL8139 数据发送流程图。

      接收控制过程分成2 步,第1 步是根据哈稀算法判断数据包是否是本地的数据包,如果是则接收放入FIFO,如果FIFO 里的数据包达到了RCR 寄存器预先设定阈值,把数据报放入RX_BUFF.第2 步主机程序将RX_BUFF 里的数据读取到内存进行处理。

      2. 2 TCP /IP 协议栈

      如图5 所示,以太网控制器提供了逻辑链路层协议,TCP /IP 协议栈则通过底层的硬件设备驱动程序来接收和发送数据,对接收到的以太帧数据进行协议的分析,并给其上层应用提供一些简单、易用的函数。

图5 RTL8139 数据接收流程图。

图5 RTL8139 数据接收流程图。

      TCP /IP 实质上是一系列协议的总称,是实现Internet通讯必不可少的部分,包括十几个协议标准,在这里要实现的是通过网络读取居民用表的读数,传输的数据量少且对实时性要求不高,不需要全部的协议,只要实现几个必备的即可,权衡之下,求在最小代码、最小资源需求和功能实现间取得一个平衡: 只实现了ICMP、TCP、IP、ARP 4 个协议,组成一个小型化的TCP /IP 协议。因为任何一个以太网数据帧要发送时都必须要知道对方的物理地址,这能过ARP 协议获得,所以要实现ARP 协议。而IP 协议是TCP, ICMP协议数据的传输格式; TCP 协议提供可靠的,可重组服务; 而ICMP 协议是调试时所不可缺少的。另外,在实现重发功能时,大多的做法是应用层不参与,当需要重发时,由TCP /IP 协议把存储在数据缓冲区的数据再发送一次即可,但在以单片机为主处理器的情况下,因为单片机自身的资源有限,为了减少RAM 的使用,可以在需要重发时再由应用层产生这一帧数据即可,这无需太多的时间。这样也不必每发送一帧数据都要存在缓冲区中以备重发时使用,进一步节省了RAM。

[1] [2]  下一页


本文关键字:网络  接口  读写器  射频技术-RFID通信技术 - 射频技术-RFID