- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
TCP_IP协议在vxWorks嵌入式平台上的实现
TCP/IP协议在VxWorks嵌入式平台上的实现
作者:朱世宇 刘春雷 单位:重庆工业自动化仪表研究所
摘要:本文介绍了基于VxWorks嵌入式平台的TCP/IP协议在工业现场总线上的实现。根据对嵌入式设备网络连接的结构体系和协议层次的分析,详细阐述了在vxworks系统中如何建立和实现网络通信。
关键词:TCP/IP协议 VxWorks 嵌入式系统
Abstract: In this paper, an application of TCP/IP by VxWorks embedded system in the field bus of industrial is introduced. It give a total presentation of how to design net in VxWorks embedded system with the analysis of the architecture of embedded device net connection and protocol hierarchy.
Keywords: TCP/IP VxWorks embedded system
0 引言
随着工业自动化的发展,工业现场总线上的数据量的交互越来越大,对数据传输的速度和可靠性要求越来越高。因此,网络通信已经逐渐开始成为工业现场总线应用的主流之一,也是嵌入式采集板与人机界面通信方法中常见的一种。
VxWorks是最早在其内核中加入TCP/IP网络协议的嵌入式实时操作系统,它提供了对其它网络和TCP/IP网络系统的“透明”访问,包括与BSD套接字兼容的编程接口。
1 VxWorks简介
VxWorks是由Wind River 公司开发的一种强实时性嵌入式操作系统,支持Motorola、PowerPC、ARM等多种嵌入式CPU。它以良好的实时性被广泛地应用在通信、军事、航空和航天等领域中。Wind River 同时提供了集成开发环境Workbench,用户可以通过图形界面方便地对VxWorks的内核进行配置。Workbench还集成有编译器并提供动态下载、远程源级调试等功能,非常适合交互式开发。
2 底层驱动的实现
VxWorks操作系统实现网络层、传输层和应用层协议,网络接口控制芯片来实现物理层和链路层协议。网络体系结构和协议分层如图1所示。
图1 网络协议分层示意图
VxWorks支持常见的几种网卡和网口芯片:如NE2000和Intel82557等,只需要定义几个宏,系统就会在启动时自动加载底层驱动;此外Wind River公司还提供了通用模板,只需奥做适当的改动,就可以使系统支持其它的网口芯片。在实际的设计过程中,我们采用HR61H50L作为网络隔离器,采用AM79C874作为以太网控制器,完成网络物理层和链路层的设计与实现。
3 网络通信的实现
VxWorks完全支持BSD socket,可以使用TCP和UDP两种通信形式。TCP和UDP是两种不同的传输协议。UDP 是User Datagram Protocol的简称,中文名是用户数据包协议,是 OSI 参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。
TCP是Transmission Control Protocol 传输控制协议,是一种面向连接(连接导向)的、可靠的、基于字节流的运输层(Transport layer)通信协议。
两者之间的区别主要在于对传输数据的可靠性保证。UDP追求最短时间内的快速传输数据包,可靠性低而速度快。TCP追求高可靠性,而导致在某些环境中传输速度较慢。
下面介绍TCP传输协议在VxWorks下的编程步骤。
3.1 建立流程
在网络通信中,要建立TCP传输协议的服务端,首先要创建一个侦听用套接字。在VxWorks中,创建侦听用套接字需要调用socket()函数。其作用是建立一个套接字并返回这个新建立的套接字的描述符。在创建套接字时,需要设定通信协议类型,分别为:连接(数据流)型,电报(UDP)型和最基础(raw)型。本文使用的是连接(SOCK_STREAM)型。当套接字使用socket()创建后,它只是属于某种网络地址的类型,而没有真正和网络地址绑定。这时需要与本地地址相绑定。
绑定地址,是指将网络地址绑定到指定的套接字,使其他套接字可以连接它。绑定所用的函数为bind()。在调用前,首先要建立本地地址,需要用到sockaddr_in结构体。sockaddr_in结构体由sin_family、sin_port、sin_addr、sin_zero四部分组成,分别是地址家族(一般为AF_INET)、存储端口号、存储IP地址、保留的空
您可能关注的文档
- OA需求文档.doc
- OPEC破天荒达成减产协议,油市后市前景仍难以捉摸.docx
- Oracle公司介绍及IDM案例.docx
- PACS建设技术方案-I3600.docx
- JavaScritp基础进阶以及Ubuntu系统中的JavaScript开发调试工具.doc
- Photoshop按钮制作实验报告.doc
- onlyit企业管理软件人力资源帮助.doc
- PCCAD一日通.doc
- PID燃油炉温度仿真系统的设计.docx
- PKPM计算软件TAT,SATWE和PMSAP的新旧规范版本之间的变化.doc
- 【课件】Unit+2+课时4+Section+B+(1a~2b)+读写课课件人教版七年级英语上册.pptx
- 可编辑文档:美国劳动力市场专题分析报告:研判非农就业.pptx
- 【课件】Unit+3+Section+B+(1a-2b)+课件+人教版(2024)七年级英语上册.pptx
- 【课件】Unit+3+My+School+(Period+6)单元复习课件人教版英语七年级上册.pptx
- 【课件】Unit+1+Section+B+1a~2b+课件人教版七年级英语上册.pptx
- 【课件】Unit+1+Section+B+Project+课件人教版(2024)英语七年级上册.pptx
- 【课件】Starter+Unit+1+Section+B+课件人教版(2024)七上.pptx
- 【课件】Unit3+Section+A+Grammar+Focus~3d课件人教版(2024)七年级英语上册.pptx
- 【课件】Unit+3+My+School+Section+B+2a-2b+课件人教版英语七年级上册.pptx
- 【课件】Unit+3+My+School+(Period+3)+Section+A+(Grammar+Focus-3d)+课件人教版(2024)七年级英语上册.pptx
最近下载
- 超星网课尔雅《服装流行分析与预测》尔雅答案2022章节测试答案.docx
- ZG-108阻垢剂安全技术说明书.doc VIP
- 人教版2024-2025学年七年级数学上册综合与实践 进位制的认识与探究(习题课件).pptx VIP
- 事业单位工勤技能岗位驾驶员职业技能考试真题汇总.pdf
- 蓝色橙色扬帆起航携手并进简约商务工作述职报告.pptx
- 2024年RDPAC认证考试必备题库-上(单选题部分).docx
- 英文阅读-I Wonder.pdf
- 美国ITT赛莱默飞力FLYGT潜水污水泵N系列选型样本手册.pdf
- 通用版2023《铸牢中华民族共同体意识》专题精品课件.ppt VIP
- 借名买车协议书范本.docx
文档评论(0)