首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >通过CAPL发送以太网/udp数据包

通过CAPL发送以太网/udp数据包
EN

Stack Overflow用户
提问于 2018-03-30 15:18:20
回答 2查看 7.5K关注 0票数 1

如何通过CAPL发送以太网包或UDP数据包?我知道有一个以太网IG块,但我想知道我们是否可以通过capl脚本发送它,就像can消息通过CaPL发送一样。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-04-04 06:48:04

您确实可以通过CAPL发送以太网数据包。

使用选项.Ethernet,提供了几个用于接收和传输以太网帧的API。

CAPL功能指南。

例如,函数ethernetPacket用于创建以太网发送对象。不幸的是,我自己从来没有这样做过,所以我没有一个片段来演示这一点,但是我敦促您参考CAPL Functions > Ethernet CAPL Functions节下的独木舟/卡纳里泽指南。类似中断的过程也被提供给以太网通信,例如on ethernetPacket.另外,你可能需要在研究上投入更多的精力,下次.

我对UDP一无所知,但为了完整起见,CAPL为TCP/IP、FlexRay、RS232 (串行)以及J1939、nothing等标准提供了API。

票数 0
EN

Stack Overflow用户

发布于 2019-02-06 12:37:43

函数ethernetPacket <packet var>;可用于创建以太网发送对象。对象数据可以由与此对象关联的选择器进行操作。有关这些选择器的更多信息,可以在以下路径的帮助中找到: CAPL函数?以太网?这里是关于如何通过CAPL发送以太网数据包的示例。

代码语言:javascript
运行
复制
ethernetPacket txPacket;
int i;

txPacket.msgChannel = 1;
txPacket.hwChannel = 2;
txPacket.source = EthGetMacAddressAsNumber( "20:00:00:00:00:01" );
txPacket.destination = EthGetMacAddressAsNumber( "FF:FF:FF:FF:FF:FF" );
txPacket.Length = 100;
txPacket.type = 0xF123;

for( i = 0; i < txPacket.Length; i++ )
{
  txPacket.Byte(i) = i & 0xFF;
}
output( txPacket );
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49576946

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档