概述
在AUTOSAR架构下,ARXML文件作为通用配置文件或数据库文件,在数据传输和存储中起到关键作用,所以我们很有必要了解ARXML。因为ARXML是在XML基础上发展起来的,我就先从XML了解。
1. XML和HTML的区别
XML 被设计用来传输和存储数据,其焦点是数据的内容。
HTML 被设计用来显示数据,其焦点是数据的外观。
在xml文件的基础上,AUTOSAR规范基于汽车电子的应用场景,将传输信息的文件格式定义为arxml,ar即architecture。
2.ARXML文件的结构
ARXML文档中的元素形成了一棵文档树。这棵树从根部开始,并扩展到树的最顶端。
所有元素均可拥有子元素,所有元素均可拥有文本内容和属性。
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<bookstore>
<book category="计算机">
<title>操作系统</title>
<author>Demu</author>
<year>2021</year>
<price>35.00</price>
</book>
<book category="汽车工程">
<title>汽车电子功能安全实战应用</title>
<author>赵鑫</author>
<year>2005</year>
<price>36.00</price>
</book>
</bookstore>
在XML文档的第一行,声明由以下几个部分组成:
- version:文档版本,比如version=“1.0”;
- encoding :文档字符编码,比如”GB2312”或者”UTF-8”;
- standalone :文档定义是否独立使用,yes代表独立使用,no代表非独立使用,默认值为“no”。
每个XML文档有且只有一个根元素:
- 根元素是完全包括文档中其他所有元素的元素;
- 根元素的起始标记要放在所有其他元素的起始标记之前;
- 根元素的结束标记要放在所有其他元素的结束标记之后;
上面例子中根元素是 <bookstore>,文档中的所有 <book> 元素都被包含在 <bookstore> 中。<book>元素有 4 个子元素:<title>、< author>、<year>、<price>。
3. ARXML文件 语法规则
- ARXML 元素标签必须成对,省略关闭标签是非法;
<year>2005</year>
- ARXML标签对大小写敏感,必须使用相同的大小写来编写打开标签和关闭标签;
<Demu>这是错误的</DEMU>
- ARXML元素需正确嵌套,标签需成对;
<p><l>汽车电控与人工智能</l></p>
- ARXML文档必须有根元素;
- ARXML的属性值须加引号;
<book category=“汽车工程”>
ARXML支持实体引用:
在ARXML中,一些字符拥有特殊的意义,比如把字符 “<” 放在ARXML元素中,会发生错误,这是因为解析器会把它当作新元素的开始,为了避免这个错误,需用实体引用“<”来代替 “<” 字符:
实体引用 | 对应符号 |
---|---|
< | < |
> | > |
& | & |
' | ’ |
" | " |
ARXML中的注释:
ARXML中的注释格式:
<!-- 我就是一行注释 -->
- 被注释的内容不要出现–
- 不要把注释放在标记中间;
- 注释一定不能嵌套;
ARXML元素必须遵循以下命名规则:
- 名称可以含字母、数字以及其他字符
- 名称不能以数字或者标点符号开始
- 名称不能包含空格
- 名称中间不能包含冒号(:)
- 可使用任何名称,没有保留字。
- 可以使用中文,但不推荐使用
- 比较好的命名习惯:使名称具有描述性;使用下划线的名称;名称尽可能简短;避免使用连词符 “-”;避免使用点".";避免使用冒号 “:”。
4. ARXML的应用场景
在AUTOSAR标准下,ARXML文档的解析均已实现工具化,如Vector DavinciDeveloper、Artop、AutosarExplorer等,也有部分企业基于Eclipse自主开发了工具。将ARXML文件导入支持其文件格式的工具,可查看到里面的信息。
由于整车OEM更加关注系统应用层功能,因而,OEM端将提供系统的描述文件,文件中包含ECU的应用功能需求,不包含基础软件组件。
然后,控制器供应商基于OEM提供的系统描述文档,加载到工具链,引入系统的虚拟功能总线上,即AUTOSAR RTE层的VFB,如此就可以和系统的其它模块进行通讯。
最后,因OEM提供的系统功能描述文件包含了系统部件到ECU的映射关系,信号的映射关系,供应商可进行ECU内部硬件结构和接口的设计,并将信号分配给实际的接口,如此就完成了arxml创建。
最后
以上就是听话朋友为你收集整理的ARXML简介的全部内容,希望文章能够帮你解决ARXML简介所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复