当前位置:文档之家› 接口协议定义

接口协议定义

都是一些接口协议,不同的接口.

具体什么:我转一下.

?什么是X.25?公共分组交换服务支持来自许多供货商的多种端站,因此明确定义用户设备与网络间的接口是至关重要的。X.25就是被全世界广为接受的用于确定这一接口的标准。X.25标准由ITU于1976年首次颁布。之后曾经多次修订。X.25指明数据终端(分组模式的DTE)和一个分组网络(DCE)之间的接口,以便访问一个公共的或专用的分组网络。在X.25中定义的协议对应于OSI模型的最低三层。X.25支持纠错和诊错,因此对于那些处在恶劣的高噪声环境下而要求高可靠传输的应用来说十分理想。?什么是帧中继?帧中继技术是在OSI第二层上用简化的方法传送和交换数据单元的一种技术。它是在分组技术充分发展、数字与光纤传输线路逐渐替代已有的模拟线路、用户终端日益智能化的条件下诞生并发展起来的。帧中继仅完成OSI物理层和链路层核心层的功能,将流量控制、纠错等留给智能终端去完成,大大简化了节点机之间的协议;同时,帧中继采用虚电路技术,能充分利用网络资源,因而帧中继具有吞量高、时延低、适合突发性业务等特点。帧中继是一种更新的分组交换概念,旨在通过简化网络处理过程来最大限度地提高吞吐量和降低成本。帧中继特别适用于终点为智能装置(如工作站或局域网互联网桥)及传输线路质量高的应用环境。帧中继概念类似于X.25,但帧中继减少了在每个网络节点的协议处理步骤,从而减少了整个端对端延迟。所有的确认和差错恢复均由最终用户设备执行;类似地,流量控制也是在端点实现的(尽管网络在需要时也会生成拥塞情况报告)。帧中继的简化的网络处理导致线路利用效率更高、网络的数据吞吐量增加。帧中继仅使用OSI模型的最下面两层。ITU I.122建议于1988年中颁布了帧中继协议,继后ANSI也发表了有关规范。一个可以提供高速低延时的帧成包传输;并能提供有效带宽利用的网络技术。它的协议开销字节小于X.25方式。?什么是RS-232-C ?RS-232-C是OSI基本参考模型物理层部分的规格,它决定了连接器形状等物理特性、以0

和1表示的电气特性及表示信号意义的逻辑特性。RS-232-C是EIA发表的,是RS-232-B的修改版。本来是为连接模拟通信线路中的调制解调器等DCE及电传打印机等DTE拉接口而标准化的。现在很多个人计算机也用RS-232-C作为输入输出接口,用RS-232-C作为接口的个人计算机也很普及。RS-232-C的如下特点:采用直通方式,双向通信,基本频带,电流环方式,串行传输方式,DCE-DTE间使用的信号形态,交接方式,全双工通信。RS-232-C 在ITU建议的V.24和V.28规定的25引脚连接器在功能上具有互换性。

RS-232-C所使用的连接器为25引脚插入式连接器,一般称为25引脚D-SUB。DTE端的电缆顶端接公插头,DCE端接母插座。RS-232-C所用电缆的形状并不固定,但大多使用带屏蔽的24芯电缆。电缆的最大长度为15m。使用RS-232-C在200K位/秒以下的任何速率都能进行数据传输。?什么是V.35 ?V.35是通用终端接口的规定,其实V.35是对60-108kHz 群带宽线路进行48Kbps同步数据传输的调制解调器的规定,其中一部分内容记述了终端接口的规定。V.35对机械特性即对连接器的形状并未规定。但由于48Dbps-64Kbps的美国Bell规格调制解调器的普及,34引脚的ISO2593被广泛采用。模拟传输用的音频调制解调器的电气条件使用V.28(不

平衡电流环互连电路),而宽频带调制解调器则使用平衡电流环电路。?什么是X.21 ?X.21是对公用数据网中的同步式终端(DTE)与线路终端(DCE)间接口的规定。主要是对两个功能进行了规定:其一是与其他接口一样,对电气特性、连接器形状、相互连接电路的功能特性等的物理层进行了规定;其二是为控制网络交换功能的网控制步骤,定义了网络层的功能。在专用线连接时只使用物理层功能,而在线路交换数据网中,则使用物理层和网络层的两个功能。X.21接口用的连接器引脚也只用15引脚电气特性分别参照V 系列接口电气条件的V.10和V.11。数字网的同步都是从属于网络主时钟的从属

TCP自定义通讯协议

一.设计 1.详细设计: 2个字节的起始字头,1个字节的命令字,1个字节的数据包编号,4个字节的报文总大小, 4个字节的传输数据总大小, 2个字节的文件名大小, 1个字节的保留(备用)字,若干字节的数据块. 2.详细内容 (1)报头的内容: 1.标志位, 2.命令字, 3.数据包的编号, 4.该报文的总大小, 5.该段传输 数据的大小, 6.文件名的大小, 1)命令字: 1.普通图片, 2.普通文档, 3.普通消息, 4.加密图片, 5.加密文档, 6.加密消息. 2)数据包编号: 1.对大文件或长消息体, 以一定的大小进行分割. 一次编号. 3)文件名大小: 1.数据包的数据块中, 刚开头的部位, 进行写文件名, 用来保证每段新数据写入对应的文件. 4)标志位: 1.消息体中需要对与报头,校验字相同的内容进行转义. (2)消息体: 1.文件名或消息名; 2.文件或消息的具体内容. 定义一个规则,发送的时候按照规则封装,接收的时候再按照这个规则解封装(TLV)。 二.TCP报文分段传输的依据: (1)MTU(最大传输单元) 是链路层中的网络对数据帧的一个限制,以以太网为例,MTU为1500个字节。 一个IP数据报在以太网中传输,如果它的长度大于该MTU值,就要进行分片传输,使得每片数据报的长度小于MTU。分片传输的IP数据报不一定按序到达,但IP首部中的信息能让这些数据报片按序组装。IP数据报的分片与重组是在网络层进完成的。

(2)MSS(最大分段大小) MSS是TCP里的一个概念(首部的选项字段中)。MSS是TCP数据包每次能够传输的最大数据分段,TCP报文段的长度大于MSS时,要进行分段传输。 TCP协议在建立连接的时候通常要协商双方的MSS值,每一方都有用于通告它期望接收的MSS选项(MSS选项只出现在SYN报文段中,即TCP三次握手的前两次)。 MSS的值一般为MTU值减去两个首部大小(需要减去IP数据包包头的大小20Bytes和TCP数据段的包头20Bytes)所以如果用链路层以太网,MSS的值往往为1460。而Internet 上标准的MTU(最小的MTU,链路层网络为x2.5时)为576; 如果不设置,则MSS的默认值就为536个字节。很多时候,MSS的值最好取512的倍数。TCP报文段的分段与重组是在运输层完成的。 TCP分段的原因是MSS,IP分片的原因是MTU,由于一直有MSS<=MTU,很明显,分段后的每一段TCP报文段再加上IP首部后的长度不可能超过MTU,因此也就不需要在网络层进行IP分片了。因此TCP报文段很少会发生IP分片的情况。 对于TCP协议来说,整个包的最大长度是由最大传输大小(MSS)决定,MSS就是TCP 数据包每次能够传输的最大数据分段。 为了达到最佳的传输效能TCP协议在建立连接的时候通常要协商双方的MSS值.这个值TCP协议在实现的时候往往用MTU值代替(需要减去IP数据包包头的大小20Bytes和TCP 数据段的包头20Bytes)所以往往MSS为1460。通讯双方会根据双方提供的MSS值得最小值, 确定为这次连接的最大MSS值。

自定义应用层通信协议

1.通信协议的概念及其要素 在OSI开放互联参考模型中,对等实体之间数据单元在发送方逐层封装,在接收方的逐层解析。发送方N层实体从N+1层实体得到的数据包称为服务数据单元(Service Data Unit,SDU)。N层实体只将其视为需要本实体提供服务的数据,将服务数据单元进行封装,使其成为一个对方能够理解的数据单元(Protocol Data Unit,PDU),封装过程实际上是为SDU增加对等实体间约定的控制信息(Protocol Control Information,PCI)的过程。为了保证网络的各个功能的相对独立性,以及便于实现和维护,通常将协议划分为多个子协议,并且让这些协议保持一种层次结构,子协议的集合通常称为协议簇。 网络协议的分层有利于将复杂的问题分解成多个简单的问题,从而分而治之。各层的协议由各层的实体实现,通信双方对等层中完成相同协议功能的实体称为对等实体。对等实体按协议进行通信,所以协议反映的是对等层的对等实体之间的一种横向关系,严格地说,协议是对等实体共同遵守的规则和约定的集合。 通信协议精确地定义了双方通信控制信息和解释信息:发送方能将特定信息(文本、图片、音频、视频)按协议封装成指定格式的数据包,最终以串行化比特流在网络上传输;接收方接收到数据包后,根据协议将比特流解析为本地化数据,从而获取对方发送过来的原始信息。通信协议包括三个要素: (1)语法:规定了信息的结构和格式; (2)语义:表明信息要表达的内容; (3)同步:规则涉及双方的交互关系和事件顺序。 整个计算机网络的实现体现为协议的实现,TCP/IP协议是Internet互联网的核心协议。2.通信协议开发步骤 (1)协议的开发主要包括协议设计、协议形式描述、协议实现和协议一致性测试。协议的开发过程与步骤如图1所示。 图1 协议开发过程与步骤 (2)协议设计过程中的分组发送接收模型如图2所示。

串口通信协议

串口通讯—通信协议 所谓通信协议是指通信双方的一种约定。约定包括对数据格式、同步方式、传送速度、传送步骤、检纠错方式以及控制字符定义等问题做出统一规定,通信双方必须共同遵守。因此,也叫做通信控制规程,或称传输控制规程,它属于ISO'S OSI七层参考模型中的数据链路层。 目前,采用的通信协议有两类:异步协议和同步协议。同步协议又有面向字符和面向比特以及面向字节计数三种。其中,面向字节计数的同步协议主要用于DEC公司的网络体系结构中。 一、物理接口标准 1.串行通信接口的基本任务 (1)实现数据格式化:因为来自CPU的是普通的并行数据,所以,接口电路应具有实现不同串行通信方式下的数据格式化的任务。在异步通信方式下,接口自动生成起止式的帧数据格式。在面向字符的同步方式下,接口要在待传送的数据块前加上同步字符。 (2)进行串-并转换:串行传送,数据是一位一位串行传送的,而计算机处理数据是并行数据。所以当数据由计算机送至数据发送器时,首先把串行数据转换为并行数才能送入计算机处理。因此串并转换是串行接口电路的重要任务。 (3)控制数据传输速率:串行通信接口电路应具有对数据传输速率——波特率进行选择和控制的能力。 (4)进行错误检测:在发送时接口电路对传送的字符数据自动生成奇偶校验位或其他校验码。在接收时,接口电路检查字符的奇偶校验或其他校验码,确定是否发生传送错误。 (5)进行TTL与EIA电平转换:CPU和终端均采用TTL电平及正逻辑,它们与EIA采用的电平及负逻辑不兼容,需在接口电路中进行转换。 (6)提供EIA-RS-232C接口标准所要求的信号线:远距离通信采用MODEM时,需要9根信号线;近距离零MODEM方式,只需要3根信号线。这些信号线由接口电路提供,以便与MODEM或终端进行联络与控制。 2、串行通信接口电路的组成 为了完成上述串行接口的任务,串行通信接口电路一般由可编程的串行接口芯片、波特率发生器、EIA 与TTL电平转换器以及地址译码电路组成。其中,串行接口芯片,随着大规模继承电路技术的发展,通用的同步(USRT)和异步(UART)接口芯片种类越来越多,如下表所示。它们的基本功能是类似的,都能实现上面提出的串行通信接口基本任务的大部分工作,且都是可编程的。才用这些芯片作为串行通信接口电路的核心芯片,会使电路结构比较简单。 3.有关串行通信的物理标准 为使计算机、电话以及其他通信设备互相沟通,现在,已经对串行通信建立了几个一致的概念和标准,这些概念和标准属于三个方面:传输率,电特性,信号名称和接口标准。 1、传输率:所谓传输率就是指每秒传输多少位,传输率也常叫波特率。国际上规定了一个标准波特率系列,标准波特率也是最常用的波特率,标准波特率系列为110、300、600、1200、4800、9600和19200。大多数CRT终端都能够按110到9600范围中的任何一种波特率工作。打印机由于机械速度比较慢而使传输波特率受到限制,所以,一般的串行打印机工作在110波特率,点针式打印机由于其内部有较大的行缓冲

通信电源规约CSU03B通信协议-通信局电源、空调及环境集中监控管理系统前端智能设备通信协议

CSU03B通信协议更改记录 2006-06-13:V1.0;其中历史告警记录有重大调整,其他与CSU03A兼容。

CSU03B通信协议 本协议以电信总局《通信局(站)电源、空调及环境集中监控管理系统前端智能设备通信协议》(一九九九年三月)为基础制定;与CSU03A通信协议兼容(历史数据和历史告警除外)。 一.物理接口 1.串行通信口采用RS232/RS485,数据传输速率2400bps; 2.信息传输方式为异步方式,起始位1位,数据位8位,停止位1位,无校验。 3.局站监控系统(SU)与设备监控单元(SM)的通信为主从方式。SU呼叫SM并下发命令,SM收到命令后返回响应信息。SU500ms内收不到SM响应或接收响应信息错误,则认为本次通信过程失败。 二.信息类型及协议的基本格式 1.信息分两种类型: (1) 由SU发出到SM的命令信息(简称命令信息); (2) 由SM返回到SU的响应信息(简称响应信息)。 基本格式的注解见表2.2、表2.3。 表2.2 协议的基本格式 说明: COMMAND INFO由以下控制命令码(其中一部分)组成: COMMAND GROUP(1字节):表示同一类型设备的不同组号; COMMAND ID(1字节):表示同一类型设备相同组内的不同监控点; COMMAND TYPE(1字节):表示不同的遥控命令或历史数据传输中的不同控制命令; COMMAND TIME(1字节):表示时间字段。 DA TA INFO由以下应答码(其中一部分)组成: DATAI:含有整型数的应答信息;

RUNSTATE:设备的运行状态; WARNSTA TE:设备的告警状态; DATAFLAG:标示字节;本协议中该字节无效,固定为00H; DATATIME:时间字段。 表2.3返回码RTN 3.数据格式 3.1 基本数据格式 在表2.1基本格式中各项除SOI和EOI是以十六进制解释(SOI=7EH,EOI=0DH),十六进制传输外,其它各项都是十六进制解释,十六进制—ASCII码的方式传输,每个字节用两个ASCII码表示,即高四位一个ASCII码表示,低四位用一个ASCII码表示。 例:CID2=4BH,传送时顺序发送34H和42H两个字节。 3.2 LENGTH数据格式 LENGTH共两个字节,由LENID和LCHKSUM组成,LENID表示INFO项的ASCII 码字节数,当LENID=0时,INFO为空,即无该项。LENGTH传输中先传高字节,再传低字节,分四个ASCII码传送。 校检码的计算:D11D10D9D8+D7DD6D5D4+D3D2D1D0,求和后模16余数取反加1。例:I NFO项的ASCII码字节数为18,即LENID=0000 0001 0010B。 D11D10D9D8+D7D6D5D4+D3D2D1D0=0000B+0001B+0010B=0011B,模16余数为0011B,0011B取反加1就是1101B,即LCHKSUM为1101B。 可得: LENGTH为1101 0000 0001 0010B,即D012H。 3.3 CHKSUM数据格式 CHKSUM的计算是除SOI、EOI和CHKSUM外,其他字符按ASCII码值累加求和,所得结果模65536余数取反加1。 例:收到或发送的字符序列是:“~1203400456ABCDFEFC72C C R R”(“~”为SOI,“C C R R”为EOI),则最后五个字符“FC72C C R R”中的FC72是CHKSUM,计算方法是: ‘1’+‘2’+‘0’+…+‘A’+‘B’+…+‘F’+‘E’ = 31H + 32H + 30H + …+ 41H + 42H + …+ 46H + 45H = 038EH 其中‘1’表示1的ASCII码值,‘E’表示E的ASCII码值。038EH模65536余数是

通讯协议标准

编号: 密级:内部 页数:__________基于RS485接口的DGL通信协议(修改) 编写:____________________ 校对:____________________ 审核:____________________ 批准:____________________ 北京华美特科贸有限公司 二○○二年十二月六日

1.前言 在常见的数字式磁致伸缩液位计中,多采用RS485通信方式。但RS485标准仅对物理层接口进行了明确定义,并没有制定通信协议标准。因此,在RS485的基础上,派生出很多不同的协议,不同公司均可根据自身需要设计符合实际情况的通信协议。并且,RS485允许单总线多机通信,如果通信协议设计不好,就会造成相互干扰和总线闭锁等现象。如果在一条总线上挂接不同类型的产品,由于协议不一样,很容易造成误触发,造成总线阻塞,使得不同产品对总线的兼容性很差。 随着RS485的发展,Modicon公司提出的MODBUS协议逐步得到广泛认可,已在工业领域得到广泛应用。而MODBUS的协议规范比较烦琐,并且每字节数据仅用低4位(范围:0~15),在信息量相同时,对总线占用时间较长。 DGL协议是根据以上问题提出的一种通信协议。在制定该协议时已充分考虑以下几点要求: a.兼容于MODBUS 。也就是说,符合该协议的从机均可挂接到同一总线上。 b.要适应大数据量的通信。如:满足产品在线程序更新的需要(未来功能)。 c.数据传输需稳定可靠。对不确定因素应加入必要的冗错措施。 d.降低总线的占用率,保证数据传输的通畅。 2.协议描述 为了兼容其它协议,现做以下定义: 通信数据均用1字节的16进制数表示。从机的地址范围为:0x80~0xFD,即:MSB=1; 命令和数据的数值范围均应控制在0~0x7F之间。即:MSB=0,以区别地址和其它数据。 液位计的编码地址为:0x82~0x9F。其初始地址(出厂默认值)为:0x81。 罐旁表的编织地址为:0xA2~0xBF。其初始地址(出厂默认值)为:0xA1。 其它地址用于连接其它类型的设备,也可用于液位计、罐区表地址不够时的扩充。 液位计的命令范围为:0x01~0x2F,共47条,将分别用于参数设定、实时测量、诊断测试、在线编程等。 通信的基本参数为:4800波特率,1个起始位,1个结束位。字节校验为奇校验。 本协议的数据包是参照MODBUS RTU 通信格式编写,并对其进行了部分修改,以提高数据传输的速度。另外,还部分参照了HART协议。其具体格式如下: 表中,数据的最大字节数为16个。也就是说,整个数据包最长为20个字节。 “校验和”是其前面所有数据异或得到的数值,然后将该数值MSB位清零,使其满足0~7F 的要求。在验证接收数据包的“校验和”是否正确时,可将所有接收数据(包括“校验和”)进行异或操作,得到的数据应=0x80。这是因为,只有“地址”的MSB=1,所以异或结果的MSB也必然等于1。 本协议不支持MODBUS中所规定的广播模式。 3.时序安排 在上电后,液位计将先延迟10秒,等待电源稳定。然后,用5秒的时间进行自检和测试数据。

PPTP V0.1通讯协议定义

PPTP V0.1通讯协议定义 开始:2003-7-19 初稿:2003-7-27 修改:2003-9-16 2003-9-20、24、25 1、前言及范围 本规范为P2P项目中所用到的通讯协议,简称为PPTP,现在的版本是草拟的1.0版。本规范描述了在本项目中客户(Peer)和服务器(Serv11er)以及客户与客户(Peer to Peer)之间的相关消息的类型和定义。 本规范解释权属于本作者,有不合实际情况之处将及时更改。 本规范包括两方面的内容: (1)客户与登录服务器之间的接口协议; (2)客户与客户进行点到点传输的接口协议; 本规范应有一定通用性,便于扩展和增加新的功能,如语音和视频传输等; 2、缩略语

3.网络结构 图1 P2P协议逻辑网络结构 如图1所示,服务器为各Peer的登录实体,所有的注册、信任、认证信息均必须从服务器发出(客户端一般可以缓存在线客户的信息);各Peer的地址,所提供的资源清单均必须反馈到服务器; 客户与客户之间可进行点到点传输,传输内容包括:文本信息、语音(暂未处理)、视频(暂未处理)、文件(包括小于1M的文件和大文件); 点到点传输的连接建立成功后,不需要服务器的参与。 4、PPTP功能概述 如前言所述,PPTP主要实现两方面的业务操作: (1)客户与服务器之间(Client Server): 1) Peer 向Server发出连接请求(并在程序运行期间保持该连接,并测试连接是否Alive); 2)Server 向Peer 回发连接响应,即建立有效连接(1)和(2)可用于测试连接是否Alive; 3)Peer向Server发出终止连接请求; 4)Server向Peer回发终止连接的响应; 5)Peer 向Server提交注册请求; 6)Server向Peer回发注册响应,成功则Server记载必要信息并返回唯一的用户ID号 7)Peer向Server查询在线好友列表信息; 8)Server向Peer返回在线好友列表; 9)Peer向Server提交更改注册信息请求; 10)Server向Peer回发更改注册信息响应,成功则更新服务器上的用户信息并返回; 11)Peer 向Server 提交登录请求; 12)Server向Peer回发登录成功信息;

常用几种通讯协议

常用几种通讯协议 Modbus Modbus技术已成为一种工业标准。它是由Modicon公司制定并开发的。其通讯主要采用RS232,RS485等其他通讯媒介。它为用户提供了一种开放、灵活和标准的通讯技术,降低了开发和维护成本。 Modbus通讯协议由主设备先建立消息格式,格式包括设备地址、功能代码、数据地址和出错校验。从设备必需用Modbus协议建立答复消息,其格式包含确认的功能代码,返回数据和出错校验。如果接收到的数据出错,或者从设备不能执行所要求的命令,从设备将返回出错信息。 Modbus通讯协议拥有自己的消息结构。不管采用何种网络进行通讯,该消息结构均可以被系统采用和识别。利用此通信协议,既可以询问网络上的其他设备,也能答复其他设备的询问,又可以检测并报告出错信息。 在Modbus网络上通讯期间,通讯协议能识别出设备地址,消息,命令,以及包含在消息中的数据和其他信息,如果协议要求从设备予以答复,那么从设备将组建一个消息,并利用Modbus发送出去。 BACnet BACnet是楼宇自动控制系统的数据通讯协议,它由一系列与软件及硬件相关的通讯协议组成,规定了计算机控制器之间所有对话方式。协议包括:(1)所选通讯介质使用的电子信号特性,如何识别计算机网址,判断计算机何时使用网络及如何使用。(2)误码检验,数据压缩和编码以及各计算机专门的信息格式。显然,由于有多种方法可以解决上述问题,但两种不同的通讯模式选择同一种协议的可能性极少,因此,就需要一种标准。即由ISO(国际标准化协会〉于80年代着手解决,制定了《开放式系统互联(OSI〉基本参考模式(Open System Interconnection/Basic Reference Model简称OSI/RM)IS0- 7498》。 OSI/RM是ISO/OSI标准中最重要的一个,它为其它0SI标准的相容性提供了共同的参考,为研究、设计、实现和改造信息处理系统提供了功能上和概念上的框架。它是一个具有总体性的指导性标准,也是理解其它0SI标准的基础和前提。 0SI/RM按分层原则分为七层,即物理层、数据链路层、网络层、运输层、会话层、表示层、应用层。 BACnet既然是一种开放性的计算机网络,就必须参考OSIAM。但BACnet没有从网络的最低层重新定义自己的层次,而是选用已成熟的局域网技术,简化0SI/RM,形成包容许多局 域网的简单而实用的四级体系结构。 四级结构包括物理层、数据链路层、网络层和应用层。

所谓通信协议是指通信双方的一种约定

所谓通信协议是指通信双方的一种约定。约定包括对数据格式、同步方式、传送速度、传送步骤、检纠错方式以及控制字符定义等问题做出统一规定,通信双方必须共同遵守。因此,也叫做通信控制规程,或称传输控制规程,它属于ISO'S OSI 七层参考模型中的数据链路层,其主要完成的作用如下: (1)实现数据格式化:因为来自CPU勺是普通的并行数据,所以,接口电路应具有实现不同串行通信方式下的数据格式化的任务。在异步通信方式下,接口自动生成起止式的帧数据格式。在面向字符的同步方式下,接口要在待传送的数据块前加上同步字符 ( 2)进行串-并转换:串行传送,数据是一位一位串行传送的,而计算机处理数据是并行数据。所以当数据由计算机送至数据发送器时,首先把串行数据转换为并行数才能送入计算机处理。因此串并转换是串行接口电路的重要任务。 ( 3)控制数据传输速率:串行通信接口电路应具有对数据传输速率——波特率进行选择和控制的能力。 ( 4)进行错误检测:在发送时接口电路对传送的字符数据自动生成奇偶校验位或其他校验码。在接收时,接口电路检查字符的奇偶校验或其他校验码,确定是否发生传送错误。 (5)进行TTL与EIA电平转换:CPU和终端均采用TTL电平及正逻辑,它们与 EIA采用的电平及负逻辑不兼容,需在接口电路中进行转换。 (6)提供EIA-RS-232C接口标准所要求的信号线:远距离通信采用MODE时, 需要9根信号线;近距离零MODE方式,只需要3根信号线。这些信号线由接口 电路提供,以便与MODE或终端进行联络与控制。 (7)为了完成上述串行接口的任务,串行通信接口电路一般由可编程的串行接 口芯片、波特率发生器、EIA与TTL电平转换器以及地址译码电路组成。其中, 串行接口芯片,随着大规模继承电路技术的发展,通用的同步(USRT和异步(UART接口芯片种类越来越多,它们的基本功能是类似的,都能实现上面提出的串行通信接口基本任务的大部分工作,且都是可编程的。选用这些芯片作为串行通信接口电路的核心芯片,会使电路结构比较简单。 1.. 现场总线同RS-232/485/422 的区别与应用

三菱FX系列通信协议

FX系列PLC专用协议通信指令一览 以下将详细列出PLC专用协议通信的指令: 指令注释 BR 以1点为单位,读出位元件的状态 WR 以16点为单位,读出位元件的状态,或以1字为单位,读出字元件的值 BW 以1点为单位,写入位元件的状态 WW 以16点为单位,写入位元件的状态,或以1字为单位,写入值到字元件 BT 以1点为单位,SET/RESET 位元件 WT 以16点为单位,SET/RESET 位元件,或写入值到字元件 RR 控制PLC运行RUN RS 控制PLC停止STOP PC 读出PLC设备类型 TT 连接测试 注:位元件包括X,Y,M,S以及T,C的线圈等; 字元件包括D,T,C,KnX,KnY,KnM等。 三菱FX系列PLC编程口通信协议总览 该协议实际上适用于PLC编程端口以及FX-232AW 模块的通信。通讯格式: 命令命令码目标设备 DEVICE READ CMD "0" X,Y,M,S,T,C,D DEVICE WRITE CMD "1" X,Y,M,S,T,C,D FORCE ON CMD " 7" X,Y,M,S,T,C FORCE OFF CMD "8" X,Y,M,S,T,C 传输格式: RS232C 波特率: 9600bps 奇偶: even 校验: 累加方式(和校验) 字符: ASCII 16进制代码: ENQ 05H 请求 ACK 06H PLC正确响应 NAK 15H PLC错误响应 STX 02H 报文开始 ETX 03H 报文结束 帧格式: STX CMD DATA ...... DATA ETX SUM(upper) SUM(lower) 例子: STX ,CMD ,ADDRESS, BYTES, ETX, SUM 02H, 30H, 31H,30H,46H,36H, 30H,34H, 03H, 37H,34H SUM=CMD+......+ETX; 30h+31h+30h+46h+36h+30h+34h+03h=74h;

设备通讯协议

设备通信协议

目录 1.适用范围 (3) 2.协议框架 (3) 3.协议内容 (3) 3.1设备内部组网协议(或者MCU透传模式协议) (3) 3.1.1 通讯命令格式 (3) 3.1.2 配对机制 (3) 3.1.3 连接机制 (4) 3.1.4 心跳机制 (5) 3.2 设备与云端通讯协议 (5) 3.2.1 通讯命令格式 (5) 3.2.2 连接流程 (5) 3.3 数据包格式定义 (6) 3.3.1 设备间通讯数据格式 (6) 3.3.2 设备与云、APP通讯数据格式 (11) 4. ..............................................................................................................................................公共命令定义 11 5. ........................................................................................................................................................... 编码表 18 5.1节点类型编码表 (18) 5.2命令回应编码表 (18)

1.适用范围 本协议定义WiFi模块与MCU控制单元,WiFi模块与云APP间,以及主从模块之间的通讯协议框架。 2.协议框架 协议基于二进制协议框架,完成命令发送接收、命令上报、内部组网等功能。 3.协议内容 3.1设备内部组网协议(或者MCU透传模式协议) 备内部组网协议包括设备配对、连接、心跳机制等,目的是将一个子设备加入到设备组中,并保持连接。3.1.1 通讯命令格式 采用二进制的通讯协议格式,包格式如下表: 详细的包格式在后续章节介绍 3.1.2 配对机制 配对机制仅适用于设备内组网模式,MCU透传模式不需要组网协议。 进入配对模式由主从设备分别触发,只有在进入配对模式后,才处理相关的配对命令。 从设备进入配对模式后定时发送配对请求,直到收到请求回应。 主设备收到请求后分配一个设备ID给从设备,标识此ID被占用,并等待采集器的上线通知,一定时间内收到通知之后确认存入设备列表,如果没有上线通知,则认为设备没有配对成功,从子设备中删除。 从设备收到配对回应后存储设备ID,并且发送上线通知,收到上线通知后完成配对。 配对的过程如下图所示:

基于串口自定义协议的数据通信方式设计

基于串口自定义协议的数据通信方式设计 ?引言 计算机与计算机之间的数据交换不仅可以采用常用的通信协议进行联网方式交换,还可以采用串行通信方式或并行通信方式通过非常规的通信协议方式交换。不同安全等级的计算机之间需要进行数据传输(出于安全考虑,多数是从安全等级高的计算机向安全等级低的计算机单向传输数据) ,而不同安全等级的计算机是不允许进行直接网络连接的,由此设计了自定义通信协议下通过串行通信端口RS2232 实现处于不同安全等级的计算机之间进行数据传输。 1.RS232 串行端口 一组比特数据在多条线上同时被传送的传输方式被称为并行传输。在传输过程中各数据位可并行传送,传送速度快、效率高,多用于要求实时、快速的场合。但是有多少数据位就需要多少根数据线,传送成本高。而串行端口通信是数据通过一根传输线逐位传送,数据传送按位顺序进行,至少只需要一根传输线即可完成,节省传输线。由于串行通信方式使用线路少、成本低,特别是在远程传输时,避免了多条线路特性的不一致而被广泛采用. 1.1 RS 2232 端口简介 RS232 串行通信端口属于PC 机(个人计算机)及电信应用领域中最为成功的串行数据标准。它被定义为一种在低速率串行通信中增加通信距离的单端标准,是目前PC 机与通信工业中应用最广泛的一种串行通信接口。现在的PC机一般有1 到2 个串行通信端口COM1 及COM2 ,这些串行通信端口均为9 个引脚,即异步通信的9 个信号。在通信速率低于20 kbit / s时,与其直接连接的电缆最大物理距离为15 m(即直接传输距离) 。RS232 标准规定,若不使用Modem ,在码元畸变小于4 %的情况下,数据终端设备(DTE)和数据通信设备(DCE)之间最大传输距离为15 m。一般应用中当通信距离小于12 m 时,可以用电缆线直接连接标准RS232 端口。若距离较远, 须附加调制解调器(Modem) 。本方案中传输数据的2 台计算机距离很近,采用最基本的接法,将RS232 端口的关键引脚直接用电缆线相连。 RS2232 端口引脚说明见表1。

各种通讯协议

Modbus通讯协议 目录 1Modbus 协议简介在Modbus网络上转输 1在其它类型网络上转输 1查询—回应周期 Modbus 协议简介 Modbus 协议是应用于电子控制器上的一种通用语言。通过此协议,控制器相互之间、控制器经由网络(例如以太网)和其它设备之间可以通信。它已经成为一通用工业标准。有了它,不同厂商生产的控制设备可以连成工业网络,进行集中监控。此协议定义了一个控制器能认识使用的消息结构,而不管它们是经过何种网络进行通信的。它描述了一控制器请求访问其它设备的过程,如何回应来自其它设备的请求,以及怎样侦测错误并记录。它制定了消息域格局和内容的公共格式。 当在一Modbus网络上通信时,此协议决定了每个控制器须要知道它们的设备地址,识别按地址发来的消息,决定要产生何种行动。如果需要回应,控制器将生成反馈信息并用Modbus协议发出。在其它网络上,包含了Modbus协议的消息转换为在此网络上使用的帧或包结构。这种转换也扩展了根据具体的网络解决节地址、路由路径及错误检测的方法。 在Modbus网络上转输 标准的Modbus口是使用RS-232C兼容串行接口,它定义了连接口的针脚、电缆、信号位、传输波特率、奇偶校验。控制器能直接或经由Modem组网。控制器通信使用主—从技术,即仅一设备(主设备)能初始化传输(查询)。其它设备(从设备)根据主设备查询提供的数据作出相应反应。典型的主设备:主机和可编程仪表。典型的从设备:可编程控制器。 主设备可单独和从设备通信,也能以广播方式和所有从设备通信。如果单独通信,从设备返回消息作为回应,如果是以广播方式查询的,则不作任何回应。Modbus协议建立了主设备查询的格式:设备(或广播)地址、功能代码、所有要发送的数据、错误检测域。从设备回应消息也由Modbus协议构成,包括确认要行动的域、任何要返回的数据、和一错误检测域。如果在消息接收过程中发生错误,或从设备不能执行其命令,从设备将建立一错误消息并把它作为回应发送出去。 在其它类型网络上转输 在其它网络上,控制器使用对等技术通信,故任何控制都能初始和其它控制器的通信。这样在单独的通信过程中,控制器既可作为主设备也可作为从设备。提供的多个

通信知识及通信协议的基本概念

串口通信协议 什么是串口 串口是计算机上一种非常通用的设备通信协议(不要与通用串行总线Universal Serial Bus或者USB混淆)。大多数计算机包含两个基于RS232的串口。串口同时也是仪器仪表设备通用的通信协议;很多GPIB兼容的设备也带有 RS-232串口。同时,串口通信协议也可以用于获取远程采集设备的数据。 串口通信的概念非常简单,串口按为(bit)发送和接收字节。尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。它很简单并且能够实现远距离通信。比如IEEE488定义并行通信状态时,规定设备线总长不得超过20米,并且任意两个设备间的长度不得超过2米;而对于串口而言,长度可达1200米。 典型地,串口用于ASCII码的字符传输。通信使用3根线完成:1)地线,2)发送,3)接收。由于串口通信是异步的,端口能够在一根线上发送数据的同时在另一根线上接收数据。其他线用于握手,但是不是必须的。串口通信最重要的参数是波特率,数据位,停止位和奇偶校验。对于两个进行通信的端口,这些参数必须匹配。 a、波特率:这是一个衡量通信速度的参数。它表示每秒钟传送的bit的个数。例如300波特表示每秒钟发送300个bit。当我们提到时钟周期时,我们就是指波特率。例如,如果协议需要4800波特率,那么时钟是4800HZ。这意味着串口通信在数据线上的采样率为4800HZ。通常电话线的波特率为14400,28800,36600。波特率可以远远大于这些值,但是波特率和距离成反比。高波特率常常用于放置的很近的仪器之间的通信,典型地例子就是GPIB设备的通信。 b、数据位:这是衡量通信中实际数据位的参数。当计算机发送一个信息包,实际的数据位不会是8位的,标准的值是5,7和8位。如何设置取决于你想传送的信息。比如,标准的ASCII码是0-127(7位)。扩展的ASCII码是0-255(8位)。如果数据使用简单的文本(标准ASCII码),那么每个数据包使用7位数据。每个包是指一个字节,包括开始/停止位,数据位和奇偶校验位。由于实际数据位取决于通信协议的选取,术语“包”指任何通信的情况。 c、停止位:用于表示单个包的最后一位。典型地值为1,1.5和2位。由于数据是在传输线上定时的,并且每个设备有其自己的时钟,很可能在通信中两台设备间出现小小的不同步。因此,停止位不仅仅表示传输的结束,并且提供计算机校正时钟的机会。适用于停止位的位数越多,不同时钟同步的容忍程度越大,但是数据传输率同时也越慢。 d、奇偶校验位:在串口通信中一种简单的检错方式。有四种检错方式:偶、奇、高和低。当然,没有校验位也是可以的。对于偶和奇校验的情况,串口会设置校验位(数据位后面的那一位),用一个值确保传输的数据有偶个或奇个逻辑高位。例如如果数据时011,那么对于偶校验,校验位为0,保证逻辑高的位数是偶数个。如果是奇校验,校验位为1,这样就有3个逻辑高位。这样的校验能够使接收设备知道一个位的状态,有机会判断是否有噪声干扰了通信或者是否传输和接收数据不同步。

1. 通讯协议

网络通讯协议 服务器端:ARM 客户端:PC IP地址: 端口号:8088 通讯方式:TCP 1.协议格式 发送命令格式:(由PC机发入ARM) FLAG1 LEN ADR COMND DATA SUM FLAG1 双字节帧头,为十六进制的7E7E。 LEN 单字节,从ADR到SUM的字节数(含ADR和SUM)。 ADR 单字节地址(FF为通用地址)。 COMND 单字节,命令字节。 DATA 数据字节,长度不定。 。 SUM 单字节校验和,SUM=FLAG1+LEN+ADR+COMND+DATA 应答命令格式:(ARM应答PC机命令) FLAG2 LEN ADR RESP DATA SUM FLAG2 双字节帧头,为十六进制的E7E7。 LEN 单字节,从ADR到SUM的字节数(含ADR和SUM)。 ADR 单字节地址(FF为通用地址)。 RESP 单字节,应答字节。接收命令无误时同命令字节,命令错误时为FF。 DATA 数据字节,长度不定。 。 SUM 单字节校验和,SUM=FLAG2+LEN+ADR+RESP+DATA 其中: 2.详细命令格式 a)读取全部参数 命令字:0x00

命令帧格式: FLAG1 0x03 0xFF 0x00 SUM 应答: FLAG2 0x39 0xFF 0x00 SN1 SN2 SN3 ALM1 ALM2 ALM3 TEMP Op_Mode Op_Para Pin Pout Pin_th Pout_th P1_lop P1_Power P1_Tchip P1_cooler P2_lop P2_Power P2_Tchip P2_cooler 预留预留预留 预留预留预留预留预留预留预留 SUM 测试数据: PC: 7e 7e 03 ff 00 fe ARM:e7 e7 25 ff 00 01 02 03 04 05 06 07 07 08 09 5a 0a 5b 0b 5c 0c 5d 0d 5e 0e 5f 0f 50 10 51 11 52 12 53 13 54 14 55 15 fa b)读取序列号 命令字:0x01 命令帧格式: FLAG1 0x03 0xFF 0x01 SUM 应答: FLAG2 0x06 0xFF 0x01 SN1 SN2 SN3 SUM EDFA的序列号= SN1*65536 +SN2*256+SN3 测试数据: PC: 7e 7e 03 ff 01 ff ARM: e7 e7 06 ff 01 01 02 03 da c)读取告警字节 命令字:0x02 命令帧格式: FLAG1 0x03 0xFF 0x02 SUM

CAN总线自定义协议使用说明

CAN总线自定义协议使用说明 用C语言实现自己的协议 进入EV5000安装目录下builddriver目录(如图1),这个目录里面的fbserver.c文件即协议程序,用户不需要了解CAN口的细节编程,只需要按照该框架,用C语言来编写自己的协议即可。不可随意更改该文件中的函数名及头文件引用。 图1

CAN 自定义协议程序的流程图 接收线程流程 主程序流程 图2 需要用户实现的函数 void Init (CAN_PORT canport) 调用方式:仅在组态程序运行的时候执行一次 功能:用户程序的初始化 void main_process (CO_Data* d, UNS32 id) 调用方式:周期性执行,默认周期为10ms ,周期可以在void Init(CAN_PORT canport)中调用Set_Cycle 来设定,最小周期为10ms 功能:用户程序的“main 函数” void MsgDispatch (CO_Data* d, Message *m) 调用方式:每接收到一帧CAN 数据,就执行一次 功能:常用于对接收到的数据做解析,或者做出响应。与main_process 没有关联。

供用户调用的API_V0.1 除了C语言标准库中的API可以使用外,还提供以下AP I void Set_Cycle(ms) 功能:用于设定main_process的运行周期, 参数:ms的单位为毫秒, 非零 UNS8 Send_Msg(CAN_PORT port, Message *m,UNS8 bExtended) 功能:向CAN总线发送一帧CAN数据 参数:port指向已打开CAN口的句柄,m指向Message结构体的指针,bExtended为1时按扩展帧发送,为0时按标准帧发送 void Write_LW8K (UNS32 n,UNS16 val) 功能:将val 写入LW8000+n的寄存器 参数:n偏移量、最大999,val待写入的值 UNS16 Read_LW8K (UNS32 n) 功能:读取LW8000+n的寄存器的值 参数:n偏移量、最大999 void Set_Timer(TimerCallback_t callback,TIMEVAL value, TIMEVAL period) 功能:使用定时器,经过设定的时间后,调用callback函数 参数:callback回调函数指针,value单次定时时间,period周期定时时间 int CopyToLW(UNS32 addr,const void *src, size_t n) 功能:由src所指内存区域复制n个字节到LW +addr所在内存区域 参数:addr 为LW寄存器地址、最大8999;src待写入数据缓冲的指针;n写入的字节数 说明:src和LW8000+addr所在内存区域不能重叠 返回值:失败,返回‐1 成功,返回写入的字节数 int CopyFromLW(UNS32 addr,const void *src, size_t n) 功能:由LW8000+addr所在内存区域复制n个字节src所指内存区域 说明:addr 为LW寄存器地址、最大9999;src存储读取数据缓冲的指针;n读取的字节数 返回值:失败,返回‐1 成功,返回读取的字节数 早期的版本只能使用LW8000~8999这段寄存器,现在已取消该限制,CopyToLW,CopyFromLW 这个两个API的参数意义有所变化,现在CopyToLW,CopyFromLW的第一个参数表示LW的地址,而之前用0~999表示LW8999~LW8999。因此,之前的代码需要做小的改动,如: 老版本 CopyFromLW(100,readbuff, 8) 表示将从LW8100开始的8个字节读取到readbuff中

通讯协议介绍

OPC通讯协议介绍 OPC(OLE for Process Control, 用于过程控制的OLE)是一个工业标准,管理这个标准国际组织是OPC基金会,OPC基金会现有会员已超过220家。遍布全球,包括世界上所有主要的自动化控制系统、仪器仪表及过程控制系统的公司。 基于微软的OLE(现在的Active X)、COM (部件对象模型)和DCOM (分布式部件对象模型)技术。OPC包括一整套接口、属性和方法的标准集,用于过程控制和制造业自动化系统。 OPC全称是OLE for Process Control,它的出现为基于Windows的应用程序和现场过程控制应用建立了桥梁。在过去,为了存取现场设备的数据信息,每一个应用软件开发商都需要编写专用的接口函数。由于现场设备的种类繁多,且产品的不断升级,往往给用户和软件开发商带来了巨大的工作负担。通常这样也不能满足工作的实际需要,系统集成商和开发商急切需要一种具有高效性、可靠性、开放性、可互操作性的即插即用的设备驱动程序。在这种情况下,OPC标准应运而生。OPC标准以微软公司的OLE技术为基础,它的制定是通过提供一套标准的OLE/COM接口完成的,在OPC技术中使用的是OLE 2技术,OLE标准允许多台微机之间交换文档、图形等对象。 COM是Component Object Model的缩写,是所有OLE机制的基础。COM 是一种为了实现与编程语言无关的对象而制定的标准,该标准将Windows下的对象定义为独立单元,可不受程序限制地访问这些单元。这种标准可以使两个应用程序通过对象化接口通讯,而不需要知道对方是如何创建的。例如,用户可以使用C++语言创建一个Windows对象,它支持一个接口,通过该接口,用户可以访问该对象提供的各种功能,用户可以使用Visual Basic,C,Pascal,Smalltalk 或其它语言编写对象访问程序。在Windows 操作系统下,COM规范扩展到可访问本机以外的其它对象,一个应用程序所使用的对象可分布在网络上,COM的这个扩展被称为DCOM(Distributed COM)。 通过DCOM技术和OPC标准,完全可以创建一个开放的、可互操作的控制系统软件。OPC采用客户/服务器模式,把开发访问接口的任务放在硬件生产

相关主题