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

发布者:诚信与爱最新更新时间:2020-12-09 来源: elecfans关键字:手持式  RFID读写器  网络接口  MSP430 手机看文章 扫描二维码
随时随地手机看文章

  摘要:为适应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 等寄存器操作。


  发送控制过程在网络中,帧传输的过程是发送方将待发送的数据按帧格式要求封装成帧,然后同过网卡发送到网络的传输线上。发送程序框图如图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。


  3 实验结果及分析

  将手持式RFID 读写器通过网线连入局域网交换机,预先将读写器的IP 地址设置为192. 168. 1. 37,启动读写器、交换机及电脑,在电脑的命令终端输入ping192. 168. 1. 37 命令,其结果如图6 所示。

  图6 RFID 连入局域网结果

  图6 RFID 连入局域网结果。

  由图6 可知,手持式RFID 读写器已通过交换机成功连入局域网,与电脑建立网络连接。

  在电脑中打开RFID 综合管理系统,将实验用RFID 卡放入手持式RFID 读写器后,综合管理系统读到信息如图7 所示。

  图7 综合管理系统接收信息

  图7 综合管理系统接收信息。

  由图7 可知,手持式RFID 读写器将读到的实验卡信息,通过局域网交换机成功地传输到电脑的综合管理系统当中,实现了网络接口的功能。


  4 结束语

  设计的手持式RFID 读写器网络接口硬件采用MSP430F149 作为控制芯片,选用PM34 - 1 006M10 /100 /1 000M 变压器作为隔离变压器,以及全面支持IEEE802. 3 标准高度集成的RTL8139 作为以太网控制器芯片,整个系统具有超低功耗等优点,实现了RFID 读写器的网络化功能,为提高产品的竞争力创造了条件。同时,网络接口驱动程序及TCP /IP C 语言进行开发,具有较好的可读性和移植性,可以提高开发效率,缩短开发周期。


关键字:手持式  RFID读写器  网络接口  MSP430 引用地址:手持式RFID读写器网络接口设计

上一篇:德州仪器低功耗高性能烟雾探测器解决方案
下一篇:基于单片机的数字频率计的设计

推荐阅读最新更新时间:2024-11-08 16:02

MSP430F149看门狗及其应用
1、概述 看门狗有两个作用:1、可以防止程序跑飞,若程序跑飞可让单片机复位;2、可作为间隔时间发生器,在中断中进行定期刷新显示、读取数据等对外设的操作。 2、设置 不需要看门狗时可用软件关闭,设置:WDTCTL = WDTPW + WDTHOLD; 为防止误触发操作WDTCTL需要先写入WDTPW。 作为间隔定时器时详细操作可见MSP430F149.H文件中的宏定义。 3、相关寄存器 1、WDTCTL Watchdog Timer Register WDTPW Bits 15-8 Watchdog timer password. Always read as 069h. Must be written
[单片机]
LTE网络中SGs接口短消息容灾方式研究
  现有的技术方案无法实现MSC故障时的SGs接口短消息业务的实时容灾,本文在研究现有技术方案的基础上,分析了SGs接口发送/接收短消息的实时容灾实现方式,并提出了相关解决方案。   1.SGs接口短消息现有技术方案分析   3GPP规范中,当TD-LTE多模终端驻留在LTE网络,可直接通过LTE网络实现传统短消息业务的收发,而无需回落到2G/3G网络,如图1所示。      图1中,移动性管理实体MME是LTE核心网唯一的控制平面设备,负责信令处理;MSCServer是2G/3G核心网CS域核心控制设备,负责完成呼叫处理、补充业务等,SMS服务也是由MSC处理的。SGs接口是MME与MSC之间的接口,用来处理EP
[嵌入式]
MSP430中的SD16模块
Datesheet中的英文看着不爽,突然发现了利尔达430演讲资料中的SD16模块介绍,还有MSP430FE42X中文参考手册,总结下方便学习,先来结构图。 SD16结构图 SD16CTL,ADC控制寄存器 ReservedBit 0 保留,读出总是0。 OVIE Bit 1溢出中断使能,溢出中断矢量独立使能。 若一个转换结果写进ADC存储器SD16MEMx,但前一结果还未读,发生溢出。 REFONBit 2接通内部参考电压,如果不用参考应该关闭以节约能源。 0:内部参考关闭。 如果使用ADC,参考电压必须有外部供给,否则转换结果不可预知。 1:内部参考电压接通。 注意VREF引脚需要连接一个
[单片机]
<font color='red'>MSP430</font>中的SD16模块
基于MSP430单片机的称重式液位仪的设计
1引言   液位测控仪是属于智能化仪器仪表的一种(指采用了微处理器的仪器仪表),其发展始于70年代[1]。它是一种集测量与控制于一体的智能化产品,适用于石油化工、冶金、电力、制药、环保等行业中各种介质的液位测量。本仪器主要针对罐体内液体进行测量并能计算其重量,适用于对各种液态物质进行静态和动态测量与监控,并具有超限报警和主-从站模式联网功能。   2 系统设计方案   2.1 液位传感器的选择   一般情况下在液位测量中所采用的传感器有:压力传感器、超声波传感器、浮子式传感器等,由于系统设计中要求在测量液位的同时还要实现液体重量的检测。在液罐内,液体重量P的检测可直接利用计算得到,即P=H*S*ρ(H为液体高度CM;S为
[工业控制]
基于<font color='red'>MSP430</font>单片机的称重式液位仪的设计
MSP430F5529 (六)定时器Timer_A-1
MSP430F5529共有两类共4个定时器,分别是Timer_A定时器3个和Timer_B定时器1个,按照每个寄存器配备的捕获/比较器的个数分别命名为Timer0_A(内有5个捕获比较器)、Timer1_A(3个)、Timer2_A(3个)、Timer0_B(7个)。 这一章,我们讲定时器Timer0_A.(A类的都一样) 注意:下面所提到的所有寄存器,在TA后面插入0或1或2就分别表示Timer0_A、Timer1_A、Timer2_A(我这里省略了数字) 定时器很重要啊! 6.1 简介一下 定时器A是一个复合了捕获/比较寄存器的十六位的定时(加减)计数器。定时器A支持多重捕获/比较,PWM输
[单片机]
<font color='red'>MSP430</font>F5529 (六)定时器Timer_A-1
MSP430F5529 DriverLib 库函数学习笔记(六)定时器A产生PWM波
平台:Code Composer Studio 10.3.1 MSP430F5529 LaunchPad™ Development Kit (MSP‑EXP430F5529LP) 1.通过Timer_A_outputPWM配置产生PWM波 所选输出引脚为P1.2 初始化函数 #define TIMER_PERIOD 12500 void Timer_A_PWM_Init(void) { Timer_A_outputPWMParam htim = {0}; //P1.2复用输出 GPIO_setAsPeripheralModuleFunctionOutputPin(GPIO_PORT_P1, GPIO_
[单片机]
<font color='red'>MSP430</font>F5529 DriverLib 库函数学习笔记(六)定时器A产生PWM波
讲讲我自己对ADC12模块的心得——MSP430f5529
AD部分主要配置ADC12模块的时钟、参考源、采样通道、采样模式、存储和采样保持。 我就一个部分一个部分来。 第一个是ADC12模块的时钟,这个是模块运行时的时钟,跟采样定时器是两个概念,曾经我有一段时间被迷惑住了。这个由ADC12CTL1里面的ADC12SSEL和ADC12DIV配置,可以选择ADC12OSC/ACLK/SMCLK/MCLK,TI例程里面好像都是选择的ADC12OSC,这个是5MHZ,不过频率容易受外界影响而改变。这个部分配置好了就得到了ADC12CLK。 第二个参考源,这个部分可以用单片机的参考模块控制,也可以用ADC12模块控制,REFCTL0 &= ~REFMSTR;这句就是设置ADC模块直接控
[单片机]
MSP430系列单片机设计便携式医用自动输液器
摘要:介绍了一种医用自动输液器的设计方案,该输液器以TI的MSO430系列单片机为控制芯片,配有显示模块、输液泵驱动模块和键控模块等。该设计方案整机结构新颖,体积小,耗电少,操作方便,使用安全可靠。 关键词:MSP430;液晶;步进电机;输液 1 引言 对于需要自助式护理的病人来说,尤其是由于手术后、晚期癌症、分娩等原因所导致的慢性疼痛的病人,往往需要一种可以由病人自己操作、自动定时、定量向病人进行输液的智能型自动输液器,以达到治疗和镇痛的目的。为此,笔者设计了一种便携式医用自动输液器,该仪器采用电池作为供电电源,并具有功耗小、体积小、重量轻等特点,可满足便携式需要。此外,该仪器使用安全可靠、计量准确、自动化程度高,可适应
[应用]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved