首页 > 其他分享 >以太网通信控制板-B1-控制板作为单路TCP客户端和电脑TCP服务器通信(连接路由器或者交换机方式,TCP-RS485)

以太网通信控制板-B1-控制板作为单路TCP客户端和电脑TCP服务器通信(连接路由器或者交换机方式,TCP-RS485)

时间:2023-11-14 15:22:39浏览次数:34  
标签:通信 TCP 控制板 服务器 net 连接 客户端

<p><iframe name="ifd" src="https://mnifdv.cn/resource/cnblogs/CH579_DTU_PBX/index1.html" frameborder="0" scrolling="auto" width="100%" height="1500"></iframe></p>

<iframe frameborder="0" height="1500" name="ifd" scrolling="auto" src="https://mnifdv.cn/resource/cnblogs/CH579_DTU_PBX/index1.html" width="100%"></iframe>

 

说明

这节测试一下控制板作为TCP客户端,和电脑端的TCP服务器通信(连接路由器或者交换机)

 

测试

1,把设备通过网线连接路由器或者交换机

 

2,测试和电脑通信,打开网络调试助手,启动TCP服务器,监听的端口号为6000

 

 

 

 

 

 

 

3,查下电脑的IP地址

 

 

 

 

4,程序上修改为自己电脑的IP地址,端口号为TCP服务器的端口号:6000

 

5,编译下载程序, 日志上会打印DHCP 成功 和 连接服务器成功

 

6,调试助手上会显示一个连接

 

7.TCP服务器发送数据给控制板

 

 

 

用户可以在RS485 收到服务器发送的数据

 

 

   

 

 

8.用户通过RS485给控制板发数据

 

 

数据将会转发到服务器

 

程序说明

1,用户可以在net_config.h里面配置socket,受内存限制,最多只能8路socket

当前是配置的2路UDP, 3路TCP client, 1路 TCP server

 

2,打开DHCP功能

 

3,定义一个TCP客户端变量,然后写几个回调函数

 

4,创建和连接

 

5,TCP客户端处理网络数据

这是固定写法,这个函数里面会判断是不是自己的socket数据,如果是自己的socket数据,就会做处理

 

 

6,下面的程序是支持上域名连接(固定这样子写就可以)

提示: 如果是域名连接实际过程是这样子的, 一开始net_tcp_client1.ip_addr_remote数组全是0, 是连接不上的,

客户端就在不停的重连, 直到DNS解析出来IP地址并赋值给net_tcp_client1.ip_addr_remote数组,然后后面就可以正常连接了

 

 

7,在网线状态检测里面加了断线重连函数

 

8,发送数据

发送数据就是调用 net_tcp_client_send(&net_tcp_client1, data, length);

比如把RS485接收的数据发送给服务器

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

标签:通信,TCP,控制板,服务器,net,连接,客户端
From: https://www.cnblogs.com/yangfengwu/p/17831694.html

相关文章

  • 以太网通信控制板-A3-控制板作为TCP服务器和电脑TCP客户端通信(连接电脑网线方式, TCP
    <p><iframename="ifd"src="https://mnifdv.cn/resource/cnblogs/CH579_DTU_PBX/index1.html"frameborder="0"scrolling="auto"width="100%"height="1500"></iframe></p> 说明这节......
  • 微服务系列-Spring Boot使用Open Feign 微服务通信示例
    公众号「架构成长指南」,专注于生产实践、云原生、分布式系统、大数据技术分享。前言在前几个教程中我们已经看到:使用RestTemplate的SpringBoot微服务通信示例使用WebClient的SpringBoot微服务通信示例在本教程中,我们将学习如何使用SpringCloudOpenFeign库在......
  • chapter 13:TCP/IP 和网络编程
    学习笔记:TCP/IP和网络编程13.0摘要本章分为两个部分:TCP/IP协议与应用包括TCP/IP协议栈、IP地址、主机名、DNS、IP数据包和路由器。描述了UDP和TCP协议、端口号以及TCP/IP网络中的数据流。解释了服务器-客户端计算模型和套接字编程接口。通过使用UDP和TCP套接字的示例......
  • Istio:微服务开发的终极利器,你还在为繁琐的通信和部署流程烦恼吗?
    引言在前面的讲解中,我们已经提及了微服务的一些弊端,并介绍了Istio这样的解决方案。那么,对于我们开发人员来说,Istio究竟会带来哪些变革呢?今天我们就来简要探讨一下!Kubernetes简单介绍Kubernetes,俗称K8s,仅仅是因为L与s之间有8个字母所以叫的K8s,是一种用于管理和编排Docker集群的......
  • 可靠传输 —— TCP
    源端口号和目标端口号是不可少的,如果没有这两个端口号,数据就不知道应该发给哪个应用。接下来有包的序号,这个是为了解决包乱序的问题。还有应该有的是确认号,目的是确认发出去对方是否有收到。如果没有收到就应该重新发送,直到送达,这个是为了解决丢包的问题。接下来还有一些状态位。例......
  • linux进程通信的六种方法
    一、管道​ 一个进程:​ ​ 所谓的管道,就是内核里面的一串缓存。从管道的一段写入的数据,实际上是缓存在内核中的,另一端读取,也就是从内核中读取这段数据。另外,管道传输的数据是无格式的流且大小受限。​ 父子进程:​ ​ 创建的子进程会复制父进程的文件描述符,这样就做到了两个......
  • Linux socket 通信和 select 以及 epoll 函数
    1.socket通信1.1大小端转换主机字节序16位值<==>网络字节序16位值主机字节序32位值<==>网络字节序32位值#include<arpa/inet.h>//主机字节序转换为网络字节序uint16_thtons(uint16_thostshort);//hosttonetunsignedshort可用端口转换unit3......
  • http、https、tcp三次握手,四次挥手
    HTTP、HTTPS和TCP介绍HTTP(超文本传输协议是一种发布和接收HTML页面的方法,被用于在Web浏览器和网站服务器之间传递信息。是用于www浏览的一个协议。HTTPS(超文本传输安全协议)=HTTP+SSL/TSL(安全层),HTTPS经由HTTP进行通信,但利用SSL/TLS来加密数据包。HTTPS开发的主......
  • 微服务系列-使用WebFlux的WebClient进行Spring Boot 微服务通信示例
    公众号「架构成长指南」,专注于生产实践、云原生、分布式系统、大数据技术分享。概述在之前的教程中,我们看到了使用RestTemplate的SpringBoot微服务通信示例。从5.0开始,RestTemplate处于维护模式,很快就会被弃用。因此Spring团队建议使用org.springframework.web.reac......
  • TCP连接数计算
    最近有一些时间,想着把某些基础的东西整理下,毕竟地基很重要,首先从计算机网络这部分入手。1、网络收发概览现在绝大部分的系统都是基于TCP协议的可靠传输,从数据的发送到接收的整个过程经历了很多环节,每一个环节也都有其各自的使命,通过大家的协同工作,最终将一个复杂的数据传输问题得以......