概述
HSMS 报文消息长度用一个 4 字节无符号整数表示,它表示消息头部和消息文本的总字节数,在传输过程中,高字节在前,低字节在后。消息长度的最小值是 10。和 SECS-I 中块的信息头部类似,HSMS 消息头部的字节数也是 10。HSMS 消息头部各个字节的含义见表 4.2。
会话标识是一个 16 位无符号整数,用来关联控制消息和其后的数据消息;头部字节 2 在不同 HSMS 消息中的用途不同,在控制消息中,头部字节 2 取值为 0 或者状态码 (Status Code),在数据消息中,它表示等待位(W-Bit)和消息的 SECS 流(SECS Stream);头部字节 3 的用法和头部字节 2 相似,不同之处在于在数据消息中,它表示 SECS 功能 (SECS Function);表示类型是一个 8 位无符号整数,表示类型是一个枚举值,表示消 息头部和消息文本的编码类型,本文设计的系统中其取值为 0,表示编码类型为 SECS-II; 会话类型也是无符号整型数,用来表示消息的类型,取值为 0 时表示 HSMS 数据消息,否则表示 HSMS 控制消息,会话类型不同取值表示的消息类型见表 4.3;HSMS 的系统 字节和 SECS-I 的系统字节的功能相同,都作为事务的唯一标识。
二、SECS-II 报文格式
SECS-II 协议定义了设备和主机之间传送消息的格式和含义,在 SECS-II 协议中,传输的消息使用两种数据结构进行格式化:数据项(Item)和列表(List)。SECS-II 协 议使用数据项和列表对消息进行逻辑划分(Logical Division)。
数据项的长度和格式由数据项头部(Item Header/IH)定义,数据项头部的长度范围是 2-4个字节,其格式如图 4-11 所示。数据项头部的第一个字节是格式字节,它定义了数据项的格式和表示数据项长度的字节数,第 1、2 位表示长度字节的个数,其取值范围是 1-3,第 3-8 位定义了数据项的格式,即数据项的数据类型,目前 SECS-II 协议一共定义了 16 种数据项类型代码,它们的取值和含义如表 4.5 所示。数据项头部的长度由长度字节数决定,长度字节数的取值表示长度字节的个数,长度字节根据长度字节数的取值表示的是 8/16/24 位无符号整数,它表示数据项内容(Item Body/IB)的长度。
最后
以上就是淡然钥匙为你收集整理的SECS/GEM通信协议学习笔记之报文格式的全部内容,希望文章能够帮你解决SECS/GEM通信协议学习笔记之报文格式所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复