手持式RFID读写器网络接口设计
件主要包括硬件设备驱动程序、TCP /IP 协议栈、应用协议和其他用户应用程序。网络接口软件的流程如图3 所示。 图3 网络接口软件流程图。 其中应用协议和其他用户应用程序将在二次开发时根据RFID 读写器的具体功能要求进行设计,这里主要介绍硬件设备驱动程序、TCP /IP 协议栈的实现方法。 2. 1 硬件设备驱动程序 硬件设备驱动是将PCI 接口当作单片机的外部存储器看待,单片机以读写外部存储器的时序对PCI 接口进行读写,再由PCI 接口将这种读写操作时序转换成PCI 时序对以太网控制器进行操作。主要包括3 个部分,网络初始化,发送控制和接收控制。主要完成对CR,TCR,RCR IMR ISR,RBSTART,MAR 等寄存器操作。 发送控制过程在网络中,帧传输的过程是发送方将待发送的数据按帧格式要求封装成帧,然后同过网卡发送到网络的传输线上。发送程序框图如图4所示。 图4 RTL8139 数据发送流程图。 接收控制过程分成2 步,第1 步是根据哈稀算法判断数据包是否是本地的数据包,如果是则接收放入FIFO,如果FIFO 里的数据包达到了RCR 寄存器预先设定阈值,把数据报放入RX_BUFF.第2 步主机程序将RX_BUFF 里的数据读取到内存进行处理。 2. 2 TCP /IP 协议栈 如图5 所示,以太网控制器提供了逻辑链路层协议,TCP /IP 协议栈则通过底层的硬件设备驱动程序来接收和发送数据,对接收到的以太帧数据进行协议的分析,并给其上层应用提供一些简单、易用的函数。 图5 RTL8139 数据接收流程图。 TCP /IP 实质上是一系列协议的总称,是实现Internet通讯必不可少的部分,包括十几个协议标准,在这里要实现的是通过网络读取居民用表的读数,传输的数据量少且对实时性要求不高,不需要全部的协议,只要实现几个必备的即可,权衡之下,求在最小代码、最小资源需求和功能实现间取得一个平衡: 只实现了ICMP、TCP、IP、ARP 4 个协议,组成一个小型化的TCP /IP 协议。因为任何一个以太网数据帧要发送时都必须要知道对方的物理地址,这能过ARP 协议获得,所以要实现ARP 协议。而IP 协议是TCP, ICMP协议数据的传输格式; TCP 协议提供可靠的,可重组服务; 而ICMP 协议是调试时所不可缺少的。另外,在实现重发功能时,大多的做法是应用层不参与,当需要重发时,由TCP /IP 协议把存储在数据缓冲区的数据再发送一次即可,但在以单片机为主处理器的情况下,因为单片机自身的资源有限,为了减少RAM 的使用,可以在需要重发时再由应用层产生这一帧数据即可,这无需太多的时间。这样也不必每发送一帧数据都要存在缓冲区中以备重发时使用,进一步节省了RAM。 3 实验结果及分析 将手持式RFID 读写器通过网线连入局域网交换机,预先将读写器的IP 地址设置为192. 168. 1. 37,启动读写器、交换机及电脑,在电脑的命令终端输入ping192. 168. 1. 37 命令,其结果如图6 所示。 图6 RFID 连入局域网结果。 由图6 可知,手持式RFID 读写器已通过交换机成功连入局域网,与电脑建立网络连接。 在电脑中打开RFID 综合管理系统,将实验用RFID 卡放入手持式RFID 读写器后,综合管理系统读到信息如图7 所示。 图7 综合管理系统接收信息。 由图7 可知,手持式RFID 读写器将读到的实验卡信息,通过局域网交换机成功地传输到电脑的综合管理系统当中,实现了网络接口的功能。 4 结束语 设计的手持式RFID 读写器网络接口硬件采用MSP430F149 作为控制芯片,选用PM34 - 1 006M10 /100 /1 000M 变压器作为隔离变压器,以及全面支持IEEE802. 3 标准高度集成的RTL8139 作为以太网控制器芯片,整个系统具有超低功耗等优点,实现了RFID 读写器的网络化功能,为提高产品的竞争力创造了条件。同时,网络接口驱动程序及TCP /IP C 语言进行开发,具有较好的可读性和移植性,可以提高开发效率,缩短开发周期。
- 巧用测试仪器解决错综复杂的无线网络问题(05-16)
- 怎样选择适合您应用的无线网络(10-10)
- 电路保护器件保护移动设备避免ESD影响(04-22)
- 基于FPGA水磁无刷直流电机控制电路(04-28)
- 如何顺利通过电磁兼容试验(04-16)
- 高速电路设计中时序计算方法与应用实例(04-28)