新闻中心

EEPW首页 > 手机与无线通信 > 设计应用 > 基于LXI总线的1553B通讯模块设计与开发

基于LXI总线的1553B通讯模块设计与开发

作者:时间:2012-06-25来源:网络收藏

2.5 接口
BU-61580与控制器的接口形式非常灵活,本文根据需求和资源情况选择16位缓冲连接方式。为了提高本的抗干扰性,论文采用变压器耦合方式。BU-61580的外围电路连接图如图5所示。

3 软件
3.1 软件结构
软件结构层次由NiosII处理器系统硬件、设备驱动程序、HAL API、μC/OSII、LwIP协议栈、系统初始化和应用程序7部分组成,如图6所示。

本文引用地址:http://www.amcfsurvey.com/article/154578.htm

e.JPG


1)NiosII处理器系统硬件:模型的核心,包括在FPGA中实现的NiosII软核处理器和硬件外设;2)设备驱动程序:管理以太网、组件和其它外设的软件函数;3)HAL API:硬件抽象层应用程序接口,对设备驱动程序提供标准化的接口,对外层提供类似于POSIX的API;4)μC /OSII:实时操作系统层,为LwIP协议栈、任务和嵌入式Web任务提供多任务和任务间服务;5)LwIP协议栈:通过套接字API为应用程序和应用系统初始化提供网络服务;6)系统初始化:包括μC/OSII、LwIP协议栈和1553B组件初始化函数,也包括所有应用程序的任务、信号量、队列和事件性标志等实时操作系统任务间资源的创建;7)应用程序:最外一层是建立的各项应用任务。
应用程序工作过程如下:首先进行系统初始化,然后进入工作等待状态。以太网任务等待客户端通过以太网发来的数据包,当有数包到达时,经物理层处理后交于TCP/IP层处理。在TCP/IP协议层之上,建立了3个套接字接口来侦听套接字连接:嵌入式Web端口、PING端口和1553B端口。对于1553B任务,根据客户端不同的请求,将启动不同的任务来完成相应的数据命令的发送或状态的读取。
3.2 μC/OSII的LwIP协议实现
轻量型IP(Light Weight IP,LwIP)协议是用于嵌入式系统开放源代码的TCP/IP协议栈。LwIP在保持TCP协议主要功能的基础上减少对RAM的占用,非常适合在嵌入式系统中使用。
LwIP协议栈在设计时就考虑了移植问题,把所有与硬件、OS和编译器相关的部分独立了出来,因此LwIP在μC/OSII上移植只需修改目录下的文件即可。
3.3 1553B协议任务的实现
为方便对BU-61580芯片操作,了BU-61580的驱动程序。驱动程序包括BU-61580芯片的初始化函数、BC发送接收命令函数、BC发送发送命令函数、BC发送接收/发送命令函数、BC发送不带数据字的方式命令函数和BC发送带数据字的方式命令函数。
参考嵌入式Web服务器的实现方式,LwIP和μC/OSII建立了端口号为8000的1553B套字接口任务,流程如图7所示。

f.JPG


首先建立1553B任务接口守护进程,创建TCP套接字,绑定端口,将TCP套接字转换成侦听套接字,进入循环结构,等待接受用户的连接请求。当有客户端请求连接端口8000时,调用套接字数据接收函数recv()将客户端发送的数据读取过来,将数据映射到定义的结构体变量alt_avalon_BU61580*bdev上;用请求解析函数int 1553B_request(alt_avalon BU61580*bdev)根据messagemode判断需要采取什么操作方式:然后BU-61580的发送数据函数将数据内容写到相应的寄存器或存储器内,启动BC发送;如果调用读取数据函数,则将存储器或寄存器地址传递给读取函数,将读取到的数据调用函数int 1553B_transmit(bdev[i],i)经以太网打包后发送给客户端。

4 仪器驱动程序
仪器驱动程序是介于上层用户应用程序和底层仪器硬件之间的一组函数,用户在开发上层应用程序时,可以调用这些基本动作函数来使用仪器,而无须与底层硬件
参阅VPP规范,提供了VISA函数的仪器驱动程序。通过调用VISA函数,向模块发送命令来完成模块的功能。开发环境为LabWindo ws/CVI,而选用Agilent VISA作为VISA函数库,主要是考虑Agilent是LxI的发起者,而且其提供的Agilent I/O Libraries封装了许多关于LxI的功能。VISA函数所用的LxI仪器描述符有两种:
1)对于VXI-11规范为:TCPIPO::192.168.4.10::instO::INSTR;
2)对于Sockets接口为:TCPIPO::192.168.4.10::8000::SOCKET。
其中192.168.4.10为模块地址(非固定),8000为1553B接口任务的端口号。开发的驱动程序以动态链接库形式提供给上层应用程序使用。

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




评论


相关推荐

技术专区

关闭