最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

嵌入式系统实验报告三

来源:动视网 责编:小OO 时间:2025-09-25 21:41:37
文档

嵌入式系统实验报告三

实验三实验要求:安装TornadoULIP仿真网卡驱动,启动2个vxSim目标系统,其中一个vxSim为TCPClient,另一个为TCPServer。TCPServer与Client通过socketAPI进行数据的收发。另外要求在VxWorks中集成targetshell组件及ping相关组件,能够在两个vxsim上互相ping通,验证网络环境。最基本要求是能够完成数据收发。具体通信内容及方式不限,可以自由发挥,简单的可以是消息收发,复杂的可以是协议通信。需要将targetshell中pin
推荐度:
导读实验三实验要求:安装TornadoULIP仿真网卡驱动,启动2个vxSim目标系统,其中一个vxSim为TCPClient,另一个为TCPServer。TCPServer与Client通过socketAPI进行数据的收发。另外要求在VxWorks中集成targetshell组件及ping相关组件,能够在两个vxsim上互相ping通,验证网络环境。最基本要求是能够完成数据收发。具体通信内容及方式不限,可以自由发挥,简单的可以是消息收发,复杂的可以是协议通信。需要将targetshell中pin
实验三

实验要求:

安装Tornado ULIP仿真网卡驱动,启动2个vxSim目标系统,其中一个vxSim为TCP Client,另一个为TCP Server。TCP Server与Client通过socket API进行数据的收发。另外要求在VxWorks中集成target shell组件及ping相关组件,能够在两个vxsim上互相ping通,验证网络环境。

最基本要求是能够完成数据收发。具体通信内容及方式不限,可以自由发挥,简单的可以是消息收发,复杂的可以是协议通信。需要将target shell中ping通的截图放在实验报告中。

实验目的:

熟悉Tornado ULIP仿真网卡驱动的安装和使用;熟悉VxWorks bootable工程的创建和VxWorks映像的生成;熟悉VxWorks网络编程。

一、实验原理

TCP的双机通信是基于socket套接字建立连接的。网络的Socket数据传输是一种特殊的I/O,Socket也是一种文件描述符。Socket也具有一个类似于打开文件的函数调用Socket(),该函数返回一个整型的Socket描述符,随后的连接建立、数据传输等操作都是通过该Socket实现的。常用的Socket类型有两种:流式Socket(SOCK_STREAM)和数据报式Socket(SOCK_DGRAM)。流式是一种面向连接的Socket,针对于面向连接的TCP服务应用;数据报式Socket是一种无连接的Socket,对应于无连接的UDP服务应用。在本次实验中要用到的就是流式Socket。两个网络程序之间的一个网络连接包括五种信息:通信协议、本地协议地址、本地主机端口、远端主机地址和远端协议端口。Socket数据结构中包含这五种信息。

二、设计说明

本实验是一个需要使用到客户端/服务器通信模式的问题。主要的设计流程

为,底层的网卡驱动安装好后,调用标准的Socket套接字通过TCP/IP 协议进行通信。服务器端等待服务。一旦有客户端的通信请求,如果通信协议符合,则建立连接,进行通信。服务器一方使用TCP套接字与客户端通信。在服务的主循环中,任务tcpServerWorkTask首先读取来自客户端的请求,并想控制台输出客户信息,如果需要,将向客户端发送应答信息。客户端通过控制台提示输入,建立请求报文,然后发送到服务器,如果需要应答,则等待来自服务器端的回应。

具体的通信流程如下图:

实验具体步骤:

1.安装ULIP适配器

在控制面板里选择“添加删除硬件”->“添加/排除设备故障”->“添加新设

备”-> “从列表选择硬件”->“网卡”->”从磁盘安装”,接着选择tornado\\host\\x86-win32\\bin\下的netULIP.inf,然后确定并关闭窗口;装好之后,在ipconfig /all的输出中可看到多了一个网卡windriver ulip;

2.

3.配置ULIP适配器

在IP栏输入192.168.255.254(可以是x.x.x.254),子网掩码设为

255.255.255.0,点高级,在wins页选择禁用TCP/IP上的NETBIOS,然后确定

关闭,然后可用ping 192.168.255.254验证适配器是否工作正常;

   

4.启动Routing and Remote Access这个服务,并将该服务设为自动启动;

5. 修改tornado\arget\\config\\simpc\\config.h中的 #if TRUE 为#if FALSE。

6.新建一个Bootable的工程,BSP选为simpc,然后编译,如果你想检验一下网络功能,可在workspace的vxworks页的network components->networking protocols->network applications->ping client点右键include ping client,重新build;

7.Launch simulator,选择custom-built simulator,浏览选中刚才编译出来的vxworks.exe,processor no.设为0(full simulator可支持16个simulator,并且能够互相通信,它们的processor no.分别是0-15),确定;

8.Launch target server,关闭Launch simulator后会提示你launch target server,点Details,选中Full simulator,修改上面的命令行参数,将C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/tsfs改为系统中存在的目录,点OK启动target server,然后你可以双击窗口右下方的target server图标查看启动情况;也可以通过Tornado菜单(Tools->target server->configure)进行target server的配置并启动它;

9.如果Target server启动成功,你点launch shell启动一个shell,输入 “ping "host的ip",3”,回车,ping通了就说明网络仿真已经成功;

10.将所需文件添加到工程,然后build工程。为每一台目标机配置一个target server,然后启动它们。为了实现双向通信,必须将build生成的tcpServer.o和tcpClient.o都分别下载到两台目标机。在两台目标机的命令行下将tcpServer.o和tcpClient.o load到内存,命令如下:-> ld < tcpServer.o和-> ld < tcpClient.o。

11. 在每一台目标机下启动服务器端的任务,命令如下:-> sp tcpServer 查看当前的任务,便可以发现每一台目标机上都启动了tcpServer这个任务,表示都处于监听状态。可以双向通信了,两台目标机ip分别为192.168.225.1和192.168.225.2。

三、运行结果图片

(1) VxSim0 为TCP Client,先执行ping函数,ping 服务器的ip地址,成功ping通,接着运行了函数client(“192.168.255.2”, “my name is Dongwenjing, my number is 2011111785”),192.168.255.2为server的IP地址。Client顺利与Server连接后输入要发送的字符串,确定后成功发送,并收到了server的回复。

(2) VxSim1 为TCP Server,同样ping客户端的ip地址,成功。执行server函数,可以看到client发来的消息。

四、程序调试纪录

   在程序调试的过程中花费时间较多的是在前期准备上,主要是ULIP仿真网卡的安装和配置上,可能是由于自己在安装和配置过程中的马虎和步骤遗漏,使得在命令行中ping并没有ping通,后来查找原因又实验了一次,总算在命令行中ping通。后来在同时启动两个VxSim的过程中也遇到了问题,经过向师兄们请教,解决了这个问题。

文档

嵌入式系统实验报告三

实验三实验要求:安装TornadoULIP仿真网卡驱动,启动2个vxSim目标系统,其中一个vxSim为TCPClient,另一个为TCPServer。TCPServer与Client通过socketAPI进行数据的收发。另外要求在VxWorks中集成targetshell组件及ping相关组件,能够在两个vxsim上互相ping通,验证网络环境。最基本要求是能够完成数据收发。具体通信内容及方式不限,可以自由发挥,简单的可以是消息收发,复杂的可以是协议通信。需要将targetshell中pin
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top