- 2
- 0
- 约2.78千字
- 约 5页
- 2020-08-19 发布于天津
- 举报
.
IEC62056 技术文档
ASN.1 语法(补充)
深圳市航天泰瑞捷电子有限公司
.
.
修订记录
版本 日期 作者 备注
1.0 2012-5-29 汪俊 初版
范围:
本文就 IEC62056 系列标准中涉及的 ASN.1 语法进行补充说明,便于协助开
发工程师阅读、理解 DLMS/COSEM通信协议。
.
.
目录
1 概述 3
2 ASN.1 语法 3
3 编码规则 3
.
.
ASN.1 语法补充
1 概述
理解 DLMS/COSEM应用层协议,需要首先了解: ASN.1、BER、A-XDR。
抽象语法记法 ASN.1是用来描述应用层数据帧的。 DLMS协议不同于其他一些简
单通讯协议的地方就在于此。 他不是用一些表格, 及一些固定的帧格式来描述
的,而是用一种抽象语法语言来描述。这样做的好处是,极大的提高了协议的
抽象性和通用性,有利于程序移植。
编码规则 BER和A-XDR 是用来实现 ASN.1 语法的。
2 ASN.1 语法
ASN.1 语法描述的数据帧:
Name ::= [tag] IMPLICIT/EXPLICIT Data type
{
null-data [0] IMPLICIT NULL ,
item1 [1] IMPLICIT/EXPLICIT Data type A1 OPTIONAL
item2 [2] IMPLICIT/EXPLICIT Data type A2 OPTIONAL
item3 [3] Data type
…
}
语法详细解释:
1)Name是这个数据帧的名字。
2 )tag 包含类和一个数字。
类有四种:
Universal( 该数据帧在所有应用中的含义唯一 )
Application( 该数据帧的含义与具体应用有关 )
Private( 该数据帧属于某厂商的自定义范围 )
Context-specific( 该数据帧与上下文有关,在不同上下文环境中可能有不
同的含义 ) 。Tag 中的数字是这个数据帧的标号。
3 )IMPLICIT/EXPLICIT 描述子数据帧与父数据帧的关系。当前数据帧为子数据
帧,可能派生于某一数据帧 (父数据帧)。IMPLICIT:改变了父数据帧的 Tag;
EXPLICIT:不改变父数据帧的 Tag。未注明 IMPLICIT的项即为 EXPLICIT。
4 )Data type 分为简单和复合类型, SEQUENCE和CHOICE是2 个重要的复合类
型。 SEQUENCE表示数据帧中的内容是顺序排列的;
原创力文档

文档评论(0)