EtherCAT使用与解析-子报文填充与发送

本文深入探讨EtherCAT数据帧的结构,特别是子报文的组成。子报文由子报文头、数据和WKC构成,其中头部的命令字段用于指示寻址方式和操作类型。文章详细解释了EC_DATAGRAM_BRD类型子报文的工作原理,及其如何通过APD和ADO字段获取从站数量。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ethercat数据帧是基于ethernet数据帧的,整体来讲也就是:

ethernet数据报头 + ethernet数据 + FCS这样的格式;

而ethercat子报文则填充在ethernet数据部分进行发送,具体来说呢,整体的格式如下:

先暂时只讨论子报文数据部分,具体的整个的报文组成放在之后描述,那么在子报文中,他的构成也可以大体明白了,就是 子报文头+子报文数据+WKC,先了解子报文头:

子报文头的0~8bit为命令,也就是./master/datagram.h/ec_datagram_type_t枚举类型,大体分为顺序寻址、配置寻址、逻辑寻址、广播寻址等。每中类型又分为读、写、读写三种命令类型。首先就是介绍EC_DATAGRAM_BRD类型子报文,这种类型的子报文,地址区32bit数据是分为APD和ADO两个部分的,前者为从站自增地址,后者为从站内部的物理内存地址,相同的地址分法同样适用于顺序寻址和配置寻址,但是不适用于逻辑寻址。对于BRD类型子报文,从站接收到并进行转发就会在APD部分增加1,通过这种方法就可以获得从站个数的信息。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值