以太网通信控制板-A1-控制板作为TCP客户端和电脑TCP服务器通信(连接电脑网线方式, TCP服务器<-->RS485)
<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>
说明
这节测试一下控制板连接电脑网线然后作为TCP客户端和电脑端的TCP服务器通信
RS485接收的数据通过TCP发送给TCP服务器, 从TCP服务器接收的数据通过RS485输出
测试
1,电脑的网线连接控制板网口
2,控制板网络信息设置如下
IP地址:192.168.1.200
网关地址:192.168.1.1
子网掩码:255.255.255.0
3.如若修改,可在单片机程序eth_driver文件中修改配置
4.程序中设置的连接的TCP服务器IP地址为192.168.1.100 端口号为:6000
5.修改电脑配置
关闭电脑防火墙
打开电脑的网络配置,配置下电脑
6.打开网络调试助手,启动TCP服务器,监听的端口号为6000
7.把这节的程序下载到控制板
8.调试助手上会显示一个连接
9.TCP服务器发送数据给控制板
用户可以在RS485 收到服务器发送的数据
10.用户通过RS485给控制板发数据
数据将会转发到服务器
程序说明
1,用户可以在net_config.h里面配置socket,受内存限制,最多只能8路socket
当前是配置的2路UDP, 3路TCP client, 1路 TCP server
2,定义一个TCP客户端变量,然后写几个回调函数
3,创建和连接
4,TCP客户端处理网络数据
这是固定写法,这个函数里面会判断是不是自己的socket数据,如果是自己的socket数据,就会做处理
5,下面的程序是支持上域名连接(固定这样子写就可以)
提示: 如果是域名连接实际过程是这样子的, 一开始net_tcp_client1.ip_addr_remote数组全是0, 是连接不上的,
客户端就在不停的重连, 直到DNS解析出来IP地址并赋值给net_tcp_client1.ip_addr_remote数组,然后后面就可以正常连接了
6,在网线状态检测里面加了断线重连函数
7,发送数据
发送数据就是调用 net_tcp_client_send(&net_tcp_client1, data, length);
比如把RS485接收的数据发送给服务器
.
分类:
电路模块使用说明
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
2022-04-12 401-STM32+ESP8266+Air302基本控制篇(阿里云物联网平台)-Android使用APUConfig配网绑定ESP8266并通过阿里云物联网平台实现远程通信控制
2021-04-12 300-STM32+BC26丨260Y基本控制篇(阿里云物联网平台)-阿里云物联网平台-规则引擎(云产品流转),让MQTT设备之间实现通信
2021-04-12 200-STM32+BC26丨260Y基本控制篇(阿里云物联网平台)-关于物模型Topic
2021-04-12 100-STM32+BC26丨260Y基本控制篇(阿里云物联网平台)-阿里云物联网平台-关于自定义Topic
2021-04-12 005-STM32+BC26丨260Y基本控制篇(阿里云物联网平台)-在阿里云物联网平台上一型一密动态注册设备(微信小程序)
2021-04-12 004-STM32+BC26丨260Y基本控制篇(阿里云物联网平台)-在阿里云物联网平台上一型一密动态注册设备(Android)
2021-04-12 涂鸦开发-单片机+涂鸦模组开发+OTA