(三)字典生成工具使用

前言

本篇主要介绍objdictedit这个字典生成工具的使用。
实现Canopen的协议栈有Canfestival和Canopennode,其中Canfestival的配套字典生成工具是objdictedit,而Canopennode的配套字典生成工具是object dictionary editor。本篇主要针对Canfestival。工具后边会提供。

操作步骤

新建

在这里插入图片描述
新建一个工程,各个配置项后边介绍到。
注:描述这里不能出现中文,不然即使后边能导出EDS文件,那也是空的,用不了!
名字这里建议如Slave_0x01、Master_0x0F…这样子的格式,简单好记,个人建议。

配置

上边新建之后点击ok后,会出现这个界面。
在这里插入图片描述
我们在厂家自定义的索引段0x2000-0x5FFF里,添加我们自己的索引,地图变量那里不用管,因为只有这么一个选项。点击添加后会出现下边的弹窗
在这里插入图片描述
指标这里填写的范围只要在0x2000-0x5FFF都可以,名字这里随便填,但是要英文的,这个代码里是转化为实际的变量来的。关键是类型这里怎么选!上图,让我们直观的感受下。
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
可见如果选择
VAR类型:子索引只能配置为1,数据类型可选
ARRAY:子索引个数可以配置,数据类型只有第一个可以配置,其他的只能配置为UMSIGNED8
REC:子索引个数可以配置,数据类型也可以随便配置

保存导出

文件 -> 保存---------------------------------------------->.od文件
文件 -> 导出生成EDS文件---------------------------->.eds文件
文件 -> 建立词典---------------------------------------->.c和.h文件

配置项说明

Profile

在这里插入图片描述
第一篇有简单介绍到Cia301是基础协议,之后各个行业又在此基础上扩展出了其他的协议,这里我们配置成“毫无”跟“DS404”进行比较:
在这里插入图片描述
在这里插入图片描述
可见,“DS404”就比“毫无”多了圈起来的几个索引,“毫无”的是没法添加的,添加按钮是灰色的。可能不止这点区别,这里只是说明一下profile的作用,具体哪个行业再具体去了解吧。

节点护卫

在这里插入图片描述
在这里插入图片描述
可见,配置了节点守护之后,比没有配置的多出了0x100C、0x100D索引

心跳

在这里插入图片描述
配置了心跳之后,多了0x1017这个索引,表示的是多长时间发出一条心跳报文。但是如果是检测对方的心跳报文,就需要我们收到配置0x1016这个索引了。

生成SYNC

在这里插入图片描述
在这里插入图片描述

勾选了“生成SYNC”这个选项之后,会自动添加0x1005、0x1006索引。功能如描述。

紧急支援

在这里插入图片描述
配置“紧急报文”之后,新增了0x1014索引。该索引用于配置紧急报文的Cob-id

另外说明一点,上边的配置选中,只是比较方便,objdictedit自己给我们添加了相应的索引。我们也可以不选中,然后自己添加对应的索引,如果我们知道添加哪些索引的话。

参考链接

索引描述
致远笔记

软件包下载

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值