• 203CH32V307(RISCV)学习开发以太网例程TCP客户端电脑网线直连


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

    说明

    这节测试一下控制板作为TCP客户端,和电脑端的TCP服务器通信(和电脑直接连接)

    测试(网线和电脑连接)

    1.控制板网络信息设置如下

    网关地址:192.168.1.1

    子网掩码:255.255.255.0

    开发板地址:192.168.1.200

    2.程序中设置的连接的TCP服务器IP地址为192.168.1.100  端口号为:6000

    3.修改电脑配置

    关闭电脑防火墙

    打开电脑的网络配置,配置下电脑

     

    4.打开网络调试助手,启动TCP服务器,监听的端口号为6000

    5.把这节的程序下载到控制板

     

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

    7.开发板上面的串口会打印连接成功的日志

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

    开发板会返回数据,并在串口打印接到的数据

    9.使用串口助手发送数据

    TCP服务器会收到数据

    程序说明

    1,TCP客户端API函数封装了下

    2,创建 tcp_client变量; 设置连接的服务器信息; 创建socket

    3,把重连函数放到检测到网线断开里面; 调用net_tcp_client_data函数处理接收的TCP数据

    4,在进主函数前调用下初始化连接

    5,如果接收到数据,会进 tcp_client1_recv函数

    6,发送数据给服务器

    假设需要多路客户端

    1,先设置最多支持几路

    2,把上面的程序拷贝一下, 然后把1设置为2

    注意把本地端口号改下

    3,在头文件里面声明下

    4,下面的再写上,就可以了

    5,下载测试的话,可以看到有两个连接

  • 相关阅读:
    IDEA中Git实战
    高并发下redis缓存穿透问题解决方案
    springboot整合mybatis+generator
    Github修改项目显示的语言类型
    Github中README.md换行
    maven中可以直接引用的java系统属性和环境变量属性
    springboot启动异常java.lang.NoSuchFieldError: DEFAULT_INCOMPATIBLE_IMPROVEMENTS
    java获取Linux持续运行时间及友好显示
    http工具类
    idHTTP最简洁的修改和取得Cookie例子
  • 原文地址:https://www.cnblogs.com/yangfengwu/p/16717794.html
Copyright © 2020-2023  润新知