9-网络芯片CH395Q学习开发-模块使用Socket0作为UDP和电脑上位机UDP局域网通信

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

说明

这节演示一下模块使用Socket0作为UDP和电脑上位机UDP局域网通信 

提醒:无论是SPI,USART,并口,程序操作步骤都是一样的!

只是不同的接口发指令发给模块,然后用不同的接收接收数据而已.

测试本节代码(STM32F103xxxx)

1.用户可以使用杜邦线根据自己的情况设置和连接引脚

 

2,注意!

要想模块使用SPI通信,模块的TX引脚需要在模块重启之前设置为低电平.

上面的引脚分配把模块的TX引脚接到了单片机的PA3上,也就是串口2的RX上,如果用户使用了串口2,请注意!

3.把模块用网线和路由器或者交换机(和上位机在同一个局域网下)

注意,连接路由器或者交换机的时候是连接其LAN口.

4.查看自己电脑的IP地址

我的为 192.168.0.103

5.把程序里面的UDP目的地址改为电脑的IP地址

目的端口号6666为电脑端UDP的端口号,用户根据自己的修改

本地端口号1000为模块自身的UDP端口号

6.编译下载到单片机

正常情况会打印模块的IP地址等信息

我的模块的IP地址是: 192.168.0.104

6.打开电脑端TCP调试助手,并配置UDP

7.上位机发送数据

单片机程序里面设置的接收什么数据就返回什么数据

程序说明

1.初始化UDP

UDP是面向无连接的,所以只需要配置一下.

2.模块连接路由器通信需要启用DHCP,并打印模块分得的地址信息

3.在中断检测事件里面处理Socket相关事件(本例中使用的Socket 0)

4.提醒

用户也可以开多个UDP测试,不过如果要使用Socket4-7

的时候记得重新配置下内存分配.

当然也可以接着开TCP服务器,TCP客户端. 可以同时进行.

原文地址:https://www.cnblogs.com/yangfengwu/p/14879388.html