当前位置:   article > 正文

CAPL如何使用socket套接字实现TCP通信(建立连接)_capl socket

capl socket

socket套接字相关的文章我们已经写过太多,这里就不再展开。CAPL使用socket实现TCP和UDP通信,在文章《【CANoe示例分析】TCP/UDP Server/Client》也有过介绍,但主要介绍的是工程示例,代码分析比较粗略,今天重点介绍下CAPL代码如何实现socket套接字在TCP通信中的使用。

首先TCP通信双方的角色不同,一个是client,一个是server。

client作为连接的发起方,创建socket后,负责发起连接。

variables
{
  const dword             INVALID_SOCKET      = 0xFFFFFFFF;
  dword                   clientSocket        = INVALID_SOCKET;
}
on key 'a'
{
  clientSocket = tcpOpen(ipGetAddressAsNumber("192.168.0.52"), 6001);
  tcpConnect(clientSocket, ipGetAddressAsNumber("192.168.0.17"), 6002);
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

tcpOpen()函数除了可以创建tcp socket以外,还可以绑定本地ip地址和端口号。这样就不需要再调用ipBind()函数绑定。

调用tcpConnect()函数会发起连接请求,请求的目标主机的ip地址和端口号需要明确。

连接请求到达server端时,server端需要监听这个请求,为此,server端也需要创建socket并监听。

variables
{
  const dword             INVALID_SOCKET    = 0xFFFFFFFF;
  dword       
  • 1
  • 2
  • 3
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/730309
推荐阅读
相关标签
  

闽ICP备14008679号