引言
最近接触到Arduino模块的开发,并且模块的主要使用场景是机房,因此选择使用以太网W5500模组使得数据能够通过网线稳定而快速地将数据上传到外网。在开发的过程中发现,Arduino模块的库示例代码配套使用的是W5100模块。
网上的教程依然五花八门,有的说W5500的API与W5100的是一样的,也有的说官方WIZ550io与国内W5500模组的设计区别,导致W5500模组不能自动写入MAC地址,以驱动其获取IP与联网。在这里,我分享一下我的项目经验,以供相关领域同志参考。
模块清单
1、Arduino Nano模块
2、泥人W5500以太网模组
3、网线与数据线
4、路由器
接线介绍
因为Arduino与W5500使用的是快速SPI连接,因此我们首先要知道Arduino-Nano模块的SPI接口以及工作原理:
这里借用一篇详细的博客说明:Arduino-Nano各个接口的博客:
Arduino Nano 引脚分配图及定义详解
(图片也是借用的)
因此详细的接线应该为:
Arduino | W5500 |
---|---|
D10 | SCS |
D11 | MOSI |
D12 | MISO |
D13 | SCLK |
至于INT、RST这两个引脚,要根据自己的需求去接,我这次开发没有用到可以置空
关于VCC的话,建议使用5V供电,个人测试,3V3供电会发现W5500工作不正常
Arduino代码操作
1、下载使用W5500的Arduino库
2、使用最新下载的Ethernet2库中的例程即可:
3、例程需要修改的地方:
总结
个人觉得Arduino虽然简单,简单就是简单在Arduino提供了大量的库以供使用,其实我们更加应该深入去了解以及学习一下Arduino库里面是应该怎么写,以及怎么实现的。同时,这也为什么很多商家包括泥人,提供的只有51以及STM32的例程原因之一吧。
此博客以作为一次Arduino项目开发的笔记记录,希望对你也有帮助。