当前位置:首页 > 嵌入式 > 嵌入式软件
[导读]基于VxWorks和MPC860T平台的嵌入式串口通信服务器的解决方案

1.引言 
随着IP技术的迅速发展,“Everything over IP”的观念已深入人心。如何有效的将物理上分布于各个地方的串行设备接入互联网,以实现基于IP技术的遥测遥控成为当前研究和应用的一个热点。论文以嵌入式实时操作系统VxWorks和高性能的嵌入式微处理器MPC860T为软硬件平台,提出了一个适合各种速率的串行设备接入IP网络的高性能通信服务器的解决方案,它充分发挥了操作系统VxWorks的实时性以及嵌入式微处理器MPC860T在网络、通信方面的卓越性能。利用该通信服务器不但可以将低速率的串行设备接入互联网,也可以将具有较高速率、对实时性有较高要求的串行设备接入互联网。
2.串口通信服务器的体系结构
在实际应用中,各种监测、控制设备多以串行通信的方式的和外界通信。而串行设备千差万别,特别是在数据的传输速率和数据格式方面有很大的不同:既有利用UART(universal asynchronous receiver transmitter,通用异步收发)协议传输的低速率数据,又有利用HDLC(high-level data link control,高级数据链路控制)等协议传输的高速率数据;对数据传输实时性的要求也有很大区别:既有非实时性的串行数据传输,也有对实时性要求比较严格的串行数据,如音、视频数据,高速设备的实时监控数据等。如何有效的将各种串行设备合理的接入IP网络,以实现基于互联网的分布式远程监控呢?论文根据这一需求,提出了一种如图1所示的串口通信服务器的体系结构,该串口通信服务器能够较好的将各种串行设备接入IP网络,并且在实时性方面有比较突出的表现:能够将各种高速、实时性的音视频数据快速接入IP网络,以实现基于IP网络的遥测遥控。
500)this.style.width=500;" border="0" />

在图1所示的串口通信服务器体系结构中,服务器配置程序为用户提供了一个基于C/S模式的服务器通信参数配置接口,用户可以利用运行于个人计算机上的客户端配置程序与通信服务器的配置串口通信以随时改变通信参数;嵌入式实时操作系统主要完成各种任务的实时调度、中断管理、系统资源管理等功能;所谓BSP(Board Support Package,板级支持包)就是针对该通信服务器特定的硬件平台所编写的底层程序,它依赖于硬件,主要包括初始化代码和部分驱动程序;FEC(Fast Ethernet Controller,快速以太网控制器)驱动程序提供双工100/10M自适应以太网控制器驱动;双内核的嵌入式微处理器用于运行操作系统、应用程序、配置程序以及通信协议的底层微码;外围接口层对外提供各种标准的通信接口,如RS-232、RJ-45等。
3.串口通信服务器的硬件实现
在串口通信服务器中,嵌入式微处理器的性能无疑是影响整个通信服务器性能的一个关键
因素,根据图1所示的通信服务器体系结构,论文选用Freescale公司的双内核嵌入式微处理器MPC860T。它是一款集成了双内核和丰富的外围设备的微处理器,可广泛应用于各种控制领域,特别是在通信和网络领域有着优异的性能,其组成如图2示。基于PowerPC体系结构的MPC8xx内核主要负责操作系统和应用程序的运行;CPM模块拥有独立的基于RISC的通信处理器,该通信处理器主要为SCC(Serial Communications Controllers,串行通信控制器)、SMC(Serial Management Controllers,串行管理控制器)等通信信道提供服务、执行通信协议的底层代码以及控制DMA。SIU主要负责系统的启动、初始化、中断以及外部总线功能等。FEC提供10/100M以太网控制功能,它提供独立的FIFO和突发DMA,因此可以在不影响CPM性能的情况下提供10/100M以太网连接。其中4个SCC通道可以独立配置成HDLC模式、异步HDLC模式、10M以太网模式等;2个SMC通道可以配置成UART模式、透明传输模式等。
500)this.style.width=500;" border="0" />[!--empirenews.page--]

在实际应用中UART协议和HDLC协议是串口通信常用的两种通信协议,并且HDLC是其它众多协议(如SDLC、SS#7等)的基础,因此该通信服务器的串口协议采用HDLC和UART。基于MPC860T的串口通信服务器的硬件组成如图3所示。在该串口通信服务器中,
500)this.style.width=500;" border="0" />

4个SCC通道分别独立工作于双工的HDLC模式,以提供高速实时的串行数据传输,快速接入以太网;2个SMC通道独立工作在UART模式提供低速率的数据通信,SMC1提供系统级和任务级调试用串口,用户可以利用SMC1通过运行在个人计算机上的程序来配置服务器的相关参数,SMC2提供低速的串口通信。FEC接口提供双工100/10M 以太网接入端口;4M的Flash用来存储操作系统、用户应用程序、服务器配置程序等;32M的SDRAM用来运行应用程序、存储运行过程的数据等。BDM端口供软硬件仿真调试使用,利用VisionProbe通过BDM口可以对软硬件进行调试。
4.串口通信服务器的软件实现
在串口通信服务器中,操作系统也是影响通信服务器整体性能的另一个关键因素。根据
图1所示的体系结构和所使用的微处理器,论文选用美国风河公司的嵌入式实时操作系统VxWorks。VxWorks是美国风河公司推出的一款实时操作系统。它以模块化构造并可高度裁减,这使其能够在较小的存储空间中高效稳定的运行,非常适合于各种高性能、多任务嵌入式实时系统的开发,广泛应用于通信、航空航天等领域。VxWorks系统的构成主要有Wind内核、I/O系统、BSP以及网络协议栈等。
   基于VxWorks操作系统构建的串口通信服务器软件系统层次结构如图4所示。在该软件
500)this.style.width=500;" border="0" />

系统中,由底向上依次是依赖于通信服务器硬件系统的BSP(包括UART驱动、HDLC驱动、config.h配置文件、makefile编译规则文件等)和以太网驱动程序;与硬件无关的操作系统层;属于应用层的通用服务器配置程序。其中操作系统层由VxWorks提供,服务器配置程序和BSP需要根据系统硬件具体实现。FEC驱动需要作为BSP的一部分集成进整个软件系统,之所以将FEC驱动单独列出,是因为FEC驱动是通用的,仅仅需要在BSP中进行集成。下面主要讨论BSP和服务器配置软件的实现方案。
   4.1 通信服务器BSP设计与实现
   嵌入式系统中的BSP一般都是参考一个经过了严格测试的、功能比较类似的BSP来设计和实现的,串口通信服务器的BSP就是参考ADS860评估板的BSP来实现的。根据串口通信服务器的体系结构和硬件实现,BSP的实现需要做以下工作:
 将MPC860T的SCC1~SCC4通道设置成HDLC模式,实现HDLC驱动并将其挂接到VxWorks的TTY系统;
 新建sysSccSerial.c文件以支持HDLC驱动模式;
 根据实际需要修改usrconfig.c或是usrSerial.c文件以便将HDLC通道作为标准的I/O设备;
 修改config.h、configNet.h、makefile、apc860.h等文件使相关的配置参数符合串口通信服务器的具体要求,去除对10M以太网的支持、添加对100/10M FEC以太网的支持;
        其中HDLC驱动程序的实现是BSP开发中的重要一环,因为SCCx通道的HDLC驱动需要满足高速率、高实时性的要求,它的性能直接决定着整个通信服务器的性能。[!--empirenews.page--]
   4.2 通信服务配置软件设计与实现
    串口通信服务器配置软件是为用户实时设置通信服务器的通信参数而提供的应用程序。它基于C/S模式构建:由运行于串口通信服务器上的服务器端配置软件和运行于用户个人计算机上的客户端软件组成,它们通过计算机的串口和通信服务器的SMC1串口通信。通信服务器的通信参数主要包括SMC2 的UART协议相关参数和SCCx 的HDLC协议相关参数。
5.结束语
利用VxWorks实时操作系统和MPC860T嵌入式微处理器设计和实现的串口通信服务器
性能稳定、配置方便,具有很好的实时性,能够较好的满足各种串行设备接入互联网的要求,特别适合于对数据传输速率和实时性要求较高的串行设备。利用串口通信服务器可以方便的将各种串行设备接入IP网络,从而实现基于互联网的远程实时监测和控制。

本文作者创新点:充分利用了VxWorks 的实时性和MPC860T SCC通道提供的高速HDLC串口接入功能,实现了将串行监控设备高速接入IP网络和远程实时监控技术。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

加利福尼亚州圣克拉拉市—2024年4月30日―AMD(NASDAQ: AMD)今日公布2024年第一季度营业额达55亿美元,毛利率为47%,经营收入3600万美元,净收入1.23亿美元,摊薄后每股收益为0.07美元。基于...

关键字: 嵌入式 PC 人工智能

这款全新的中端MCU系列为设计人员提供了更高水平的安全性和灵活性

关键字: 嵌入式 单片机

2024年4月11日,中国——意法半导体的ST25R100近距离通信(NFC)读取器芯片独步业界,集先进的技术功能、稳定可靠的通信连接和低廉的成本价格于一身,在大规模制造的消费电子和工控设备内,可以提高非接触式互动功能的...

关键字: 嵌入式 数据读取器 芯片

单片机是一种嵌入式系统,它是一块集成电路芯片,内部包含了处理器、存储器和输入输出接口等功能。

关键字: 单片机 编写程序 嵌入式

深圳2024年4月23日 /美通社/ -- 全球AI解决方案与工业级存储领导品牌宜鼎国际 (Innodisk)持续深化边缘AI布局,今(23)日发表全球首创"MIPI over Type-C"独家技术,让旗下嵌入式相机模...

关键字: AI 嵌入式 相机

为增进大家对嵌入式主板的认识,本文将对嵌入式主板以及嵌入式主板常见问题及其解决方法予以介绍。

关键字: 嵌入式 指数 主板

为增进大家对嵌入式系统的认识,本文将对嵌入式系统、嵌入式系统的特点予以介绍。

关键字: 嵌入式 指数 嵌入式系统

为增进大家对嵌入式的认识,本文将对嵌入式、嵌入式工作相关的内容予以介绍。

关键字: 嵌入式 指数 嵌入式技术

机器人操作系统(ROS)驱动程序基于ADI产品而开发,因此可直接在ROS生态系统中使用这些产品。本文将概述如何在应用、产品和系统(例如,自主导航、安全气泡地图和数据收集机器人)中使用和集成这些驱动程序;以及这样将如何有助...

关键字: 电机控制器 机器人 嵌入式

支持高达48V@5A的PD受电模式,达到目前USB PD最高标准。

关键字: 嵌入式 开发板
关闭
关闭