CAPL学习-SOME/IP交互层-TCP处理类函数

TCP Handling

SomeIpCloseEstablishedTCPConnection

CAPL 函数 >> 以太网 >> SOME/IP IL >> SomeIpCloseEstablishedTCPConnection

函数功能

关闭一个或多个数据库中定义的 TCP 连接。

语法
capl 复制代码
dword SomeIpCloseEstablishedTCPConnection();                  // 形式 1  
dword SomeIpCloseEstablishedTCPConnection(dword aepHandle);   // 形式 2  
dword SomeIpCloseEstablishedTCPConnection(dword aepHandle, dword remoteIPv4Address);  // 形式 3  
dword SomeIpCloseEstablishedTCPConnection(dword aepHandle, dword remoteIPv4Address, dword remotePort);  // 形式 4  
dword SomeIpCloseEstablishedTCPConnection(dword aepHandle, byte remoteIPv6Address[]);  // 形式 5  
long SomeIpCloseEstablishedTCPConnection(dword aepHandle, byte remoteIPv6Address[], dword remotePort);  // 形式 6  
long SomeIpCloseEstablishedTCPConnection(dword aepHandle, IP_Endpoint remoteIPEndpoint);  // 形式 7  
形式说明
  • 形式 1:关闭本节点(作为 TCP 客户端)的所有 TCP 连接。
  • 形式 2:关闭 TCP 客户端的所有 TCP 连接。
  • 形式 3/5:关闭 TCP 客户端与特定 TCP 服务器的所有 TCP 连接。
  • 形式 4/6:关闭 TCP 客户端与特定 TCP 服务器的 TCP 连接。

TCP 连接可通过 SomeIpEstablishTCPConnection 函数建立。

参数说明
  • aepHandle:发起连接的源应用端点,必须在数据库中定义。
  • remotePort:可发送和接收消息的端口。
  • remoteIPv4Address :需关闭连接的 IPv4 地址,可通过 IPGetAddressAsNumber 函数转换。
  • remoteIPv6Address :需关闭连接的 IPv6 地址,可通过 IpGetAddressAsArray 函数转换。
  • remoteIPEndpointIP_Endpoint 类型对象,包含远程端点的地址和端口。
返回值
  • 0:函数执行成功。
  • >0:错误代码。
可用性
版本 支持形式 限制范围 测量配置 仿真/测试配置
11.0 SP3 形式 1-6 以太网 ---
12.0 SP2 形式 7 以太网 ---
示例
capl 复制代码
variables  
{  
  dword aep;  // 应用端点句柄  
}  

on start  
{  
  // 句柄需关联数据库中有效的应用端点  
  aep = SomeIpOpenLocalApplicationEndpoint(IP_Endpoint(TCP:192.168.1.1:40000));  
}  

on key 'o'  
{  
  // 建立到特定端点的连接  
  if (SomeIpEstablishTCPConnection(aep, IP_Endpoint(TCP:192.168.1.2:50000)) != 0)  
  {  
    write("连接未建立");  
  }  
}  

on key 'c'  
{  
  // 关闭节点上下文中的所有连接  
  if (SomeIpCloseEstablishedTCPConnection() == 0)  
  {  
    write("连接已关闭");  
  }  
}  

SomeIpEstablishTCPConnection

CAPL 函数 >> 以太网 >> SOME/IP IL >> SomeIpEstablishTCPConnection

函数功能

建立一个或多个数据库中定义的 TCP 连接。

语法
capl 复制代码
dword SomeIpEstablishTCPConnection();                  // 形式 1  
dword SomeIpEstablishTCPConnection(dword aepHandle);   // 形式 2  
dword SomeIpEstablishTCPConnection(dword aepHandle, dword remoteIPv4Address);  // 形式 3  
dword SomeIpEstablishTCPConnection(dword aepHandle, dword remoteIPv4Address, dword remotePort);  // 形式 4  
dword SomeIpEstablishTCPConnection(dword aepHandle, byte remoteIPv6Address[]);  // 形式 5  
long SomeIpEstablishTCPConnection(dword aepHandle, byte remoteIPv6Address[], dword remotePort);  // 形式 6  
long SomeIpEstablishTCPConnection(dword aepHandle, IP_Endpoint remoteIPEndpoint);  // 形式 7  
形式说明
  • 形式 1:建立本节点(作为 TCP 客户端)的所有 TCP 连接。
  • 形式 2:建立 TCP 客户端的所有 TCP 连接。
  • 形式 3/5:建立 TCP 客户端与特定 TCP 服务器的所有 TCP 连接。
  • 形式 4/6:建立 TCP 客户端与特定 TCP 服务器的 TCP 连接。

TCP 连接可通过 SomeIpCloseEstablishedTCPConnection 函数关闭。

参数说明
  • aepHandle:发起连接的源应用端点,必须在数据库中定义。
  • remotePort:可发送和接收消息的端口。
  • remoteIPv4Address :需建立连接的 IPv4 地址,可通过 IPGetAddressAsNumber 函数转换。
  • remoteIPv6Address :需建立连接的 IPv6 地址,可通过 IpGetAddressAsArray 函数转换。
  • remoteIPEndpointIP_Endpoint 类型对象,包含远程端点的地址和端口。
返回值
  • 0:函数执行成功。
  • >0:错误代码。
可用性
版本 支持形式 限制范围 测量配置 仿真/测试配置
11.0 SP3 形式 1-6 以太网 ---
12.0 SP2 形式 7 以太网 ---
示例
capl 复制代码
variables  
{  
  dword aep;  // 应用端点句柄  
}  

on start  
{  
  // 句柄需关联数据库中有效的应用端点  
  aep = SomeIpOpenLocalApplicationEndpoint(IP_Endpoint(TCP:192.168.1.1:40000));  
}  

on key 'o'  
{  
  // 建立到特定端点的连接  
  if (SomeIpEstablishTCPConnection(aep, IP_Endpoint(TCP:192.168.1.2:50000)) != 0)  
  {  
    write("连接未建立");  
  }  
}  

on key 'c'  
{  
  // 关闭节点上下文中的所有连接  
  if (SomeIpCloseEstablishedTCPConnection() == 0)  
  {  
    write("连接已关闭");  
  }  
}  

SomeIpTCPListen

CAPL 函数 >> 以太网 >> SOME/IP IL >> SomeIpTCPListen

函数功能

监听此 TCP 应用端点。

语法
capl 复制代码
long SomeIpTCPListen(dword aepHandle)  
参数说明
  • aepHandle:应用端点。
返回值
  • 0:函数执行成功。
可用性
版本 限制范围 测量配置 仿真/测试配置
11.0 SP3 以太网 ---
示例

相关推荐
圣光SG4 小时前
Servlet学习笔记
笔记·学习·servlet
@Mike@6 小时前
02-数据库学习笔记(SQL引擎)
数据库·笔记·学习
六点_dn6 小时前
RabbitMQ学习笔记-定义与作用
笔记·学习·rabbitmq
我的xiaodoujiao7 小时前
快速学习Python基础知识详细图文教程9--函数进阶
开发语言·python·学习·测试工具
世人万千丶8 小时前
鸿蒙Flutter Flexible与Expanded的区别
学习·flutter·harmonyos·鸿蒙
YM52e9 小时前
鸿蒙Flutter Center居中组件:Align对齐详解
android·学习·flutter·华为·harmonyos·鸿蒙
玩转4G物联网11 小时前
FS800DTU 新品上线|免费使用 DMP 设备管理平台,支持远程批量配置 & OTA 升级
物联网·网络协议·tcp/ip·云平台·核心板·fs800dtu·iot管理平台
金伟API102411 小时前
SQL Server基础学习笔记
笔记·学习
MartinYeung511 小时前
[论文学习]MiCA:比LoRA和全参数微调学到更多知识
深度学习·学习·机器学习
浮江雾12 小时前
Flutter第十节-----Flutter布局与组件全解析
android·开发语言·前端·学习·flutter·入门