This may be of interest to someone who wants to write code for the W5500 for a non-arduino processor that can be programmed in C.
The following article is useful to a beginner to implement the webserver except arduino platform.
This is a stripped down version of a web server that just serves a static page. I have cut everything out that wasn’t strictly necessary. It’s not useful as such but it may be of interest to someone who wants to write code for the W5500 for a non-arduino processor that can be programmed in C. I’ve included the code below but it is also available at this link. To expand the code below, click on the title lines.
I have much more interesting plans for the W5500 but I’ll get to them later.
A Note On the Hardware Connections
The ioShield-A is meant to connect to an Arduino-type processor using mostly the 6 pin ICSP connector plus one Slave Select line. In the picture above the SPI control lines are shown at the ICSP connector, 5V power, Ground, and Slave Select are shown on the arduino headers. Reset is also pointed out but it is not strictly necessary. Power, Ground, and Reset can also be connected at the ICSP but Slave Select cannot.
The W5500 requires very little in the way of initialization. It initializes itself with a MAC as well as a static ip address, gateway address, and subnet mask suitable for a home network. I override its static IP address to 169.254.180.2 so that it will work on a direct ethernet cable connection to my windows box.
For anyone who gets the impression the W5500 is tough to understand or program for: it’s not. I spent a lot of time at a very detailed level because I am working with an offbeat processor and had to bull my way through C++ libraries. The W5500 is more powerful than the W5100 and W5200 and the SPI transactions are more intuitive and much much faster.