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

2023-11-15 08:49:57 浏览数 (2)

说明

这节测试一下控制板作为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接收的数据发送给服务器

0 人点赞