新闻中心

EEPW首页>嵌入式系统>设计应用> 基于μC/OS-II和TCP/IP协议的多串口服务器

基于μC/OS-II和TCP/IP协议的多串口服务器

作者: 时间:2011-09-12 来源:网络 收藏
SC28L198的系统时钟(SCLK)可同时作为主机接口和其他内部电路的基本时间基准。为了确保内部控制器的正确操作,提供的SCLK频率必须大于X1晶体时钟的2倍或任何外部的1X数据时钟输入。由于LM8962芯片本身没有提供时钟信号输出引脚,若由定时器中断产生7.3728MHz以上频率的方波信号将使LM8962频繁处理中断程序,影响程序执行效率。当SC28L198工作在50MHz频率下,其中的PWM硬件模块最高可以产生25MHz输出,且不产生任何中断,因此LM8962将从频繁的查询和处理中断中解脱出来。

本文引用地址://m.amcfsurvey.com/article/150228.htm

  在该系统中,需根据不同的应用场合使用RS-232收发器或RS-422/485收发器及其外围电路。使用RS-232收发器可以进行近距离全双工通信,使用RS-422/485收发器能够进行远距离数据传输。由于整个系统工作于3.3V电压下,为了匹配TTL电平和RS-232电平或RS-422/485电平,该电路采用MAX3232芯片或MAX3485芯片。

  LM8962内部集成的以太网控制器包含一个完整的MAC模块和PHY接口器件,简化了硬件电路设计。该以太网控制器完全支持10BASE-T和100BASE-TX标准以及遵守IEEE802.3。整个系统连接以太网只需一个隔离变压器,无需外接以太网控制芯片,简化了硬件设计。隔离变压器能够隔离模块地和数字地,从而保证SC28L198能够远离外界的复杂信号。

  3 软件设计

  在该系统中,用户可以对的配置、状态查询和在计算机(客户端)上通过以太网收发数据进而操作该。在客户端上,8个SC28L198的通道被虚拟成8个COM接口。操作这些虚拟COM接口就如同操作计算机上的物理COM接口,因此用户不必知道数据是通过以太网进行传输。实际上,用户操作这些COM接口时,产生的命令和数据将被打包成一帧数据并发往处理器LM8962,然后LM8962将数据通过SC28L198的相应通道发送到设备上。使用ARM处理器LM8962作为嵌入式设备的核心器件,在其上运行μ操作系统来打开、关闭和管理8个串行通道的相应进程。因此,8个串行通道能够同时收发数据而不相互影响。

  3.1μ

  μ是免费开源、专门为嵌入式系统设计的实时操作系统。它包括任务计划、任务管理、时间管理、内存管理、任务间的通信以及其他一些基本功能。在该系统中采用μC/OS-II来实现以下功能:

  (1)建立一个消息队列来存储串口通道的消息和UDP消息;(2)控制SC28L198收发串口数据;(3)建立一个任务来管理UDP通信,并通过以太网收发数据;(4)建立一个任务来管理串口通道收发任务与UDP通信任务之间的通信。

  3.2模块

具有分层结构,能够实现对以太网数据帧进行打包和解包。UDP在的传输层,提供一种不可靠的数据传输服务,但UDP相对简单,比起TCP协议更能够提供实时和快速的数据传输。在正常的运行过程中,该TCP/IP程序模块能够从数据队列中获取串口通信的数据并将数据打包至UDP包中,然后将UDP包发送至IP层,最后形成一帧数据。该帧数据将会通过以太网发送到计算机中。与此同时,该程序模块还将从以太网接收到的数据解包出来,将其中的串口通道号和串口数据发送到SC28L198中去。表1描述了收发一帧数据的格式。

  表1数据传输格式

tcp/ip相关文章:tcp/ip是什么




评论


相关推荐

技术专区

关闭