STM32F103VCT6+W5500实现TCP Client通信

      一直对嵌入式的以太网也就是TCPIP感兴趣,最近听说有硬件TCPIP的芯片,SPI接口,W5500。我就自己照着芯片手册推荐电路画了一个。最近几天测了一下,效果很不错。

      网上W5500资料不太多,手册也多是英文版,还好,写的很简单。主要是SPI通讯的东西。实现TCP/IP等也就是操作SPI的东西。

      我之前调通了在火牛开发板上的ENC28J60,SPI的基本设置与通信代码也是可以拿来用的。

我其实主要关心的就是:如何建立TCP连接,然后我发数据过去,W5500通过STM32把数据通过网线给传回来。也就是底层的传输。因为我想做嵌入式的以太网,而不是在STM32上架网站之类。

      程序已经调通,修改了网上的一些代码,加入了自己的思路。实现建立一个TCP连接。当然,稍改一下,就可以同时建立多个连接。

      操作为:在电脑上,通过网络调试助手,建一个TCP的服务端,然后打开后监听网络,就收到了来自STM32+W5500的TCP Client的连接。

      程序代码可以去我上传的资源处下载。

这里谈下如何设置环境,也就是以太网的测试环境。

测试方法:下面两种的一种:


(1)采用交叉网线与电脑直接连接。
(2)采用直联网线通过路由器与电脑连接。


      电脑上最好设置为静态的IP。程序里要使用这个IP。
在电脑打开网络调试的助手。然后建立TCP server。这里的IP是本机的IP,端口在程序里设置的,如我设置的为:8000。


      STM32 连接W5500模块,主要为SPI1 和复位及片选线。还有就是:电源线,我做的模块,+3.3V GND。
程序下载到STM32后,W5500网口灯会闪烁。若打开网络助手连接后,建立连接的指示LED会亮起来。
然后发送,接收到发送的数据。


      这只是简单的实现,不过万事都是开头容易,今后,还有很多的路。继续。
明天打算把TCP server的程序也调通。
慢慢的,了解TCPIP 的通信,打算熟悉后,做Modbus-TCP。


效果图:


STM32F103VCT6+W5500实现TCP Client通信_第1张图片


工程文件下载




你可能感兴趣的:(嵌入式软件)