Good day!

I decided to experiment with the Ethernet W5100 shield, but, unfortunately, I didn’t go far ... I can’t connect the Arduino Leonardo + W5100 to one network. The PC persistently refuses to see the connection.

I'm testing on a simple standard example. Ping does not pass (gives information about the waiting time exceeded and the loss of all packets) and, accordingly, I cannot access the web server through the browser either ...

Sin was on the cable because first I used the most common, non-cross, and then pereobzhal old cable under the cross and tested it. The result was all the same.

I connect it all directly to the PC in the absence of a router.

Also noticed that on the shield sensors only signal the presence of power (PWR).

Can anyone come across a similar problem? I fight is not the first evening. Himself in this case a beginner, help with good advice, guys)

#include <SPI.h> #include <Ethernet.h> // Enter a MAC address and IP address for your controller below. // The IP address will be dependent on your local network: byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; IPAddress ip(192, 168, 1, 177); // Initialize the Ethernet server library // with the IP address and port you want to use // (port 80 is default for HTTP): EthernetServer server(80); void setup() { // Open serial communications and wait for port to open: Serial.begin(9600); while (!Serial) { ; // wait for serial port to connect. Needed for native USB port only } // start the Ethernet connection and the server: Ethernet.begin(mac, ip); server.begin(); Serial.print("server is at "); Serial.println(Ethernet.localIP()); } void loop() { // listen for incoming clients EthernetClient client = server.available(); if (client) { Serial.println("new client"); // an http request ends with a blank line boolean currentLineIsBlank = true; while (client.connected()) { if (client.available()) { char c = client.read(); Serial.write(c); // if you've gotten to the end of the line (received a newline // character) and the line is blank, the http request has ended, // so you can send a reply if (c == '\n' && currentLineIsBlank) { // send a standard http response header client.println("HTTP/1.1 200 OK"); client.println("Content-Type: text/html"); client.println("Connection: close"); // the connection will be closed after completion of the response client.println("Refresh: 5"); // refresh the page automatically every 5 sec client.println(); client.println("<!DOCTYPE HTML>"); client.println("<html>"); // output the value of each analog input pin for (int analogChannel = 0; analogChannel < 6; analogChannel++) { int sensorReading = analogRead(analogChannel); client.print("analog input "); client.print(analogChannel); client.print(" is "); client.print(sensorReading); client.println("<br />"); } client.println("</html>"); break; } if (c == '\n') { // you're starting a new line currentLineIsBlank = true; } else if (c != '\r') { // you've gotten a character on the current line currentLineIsBlank = false; } } } // give the web browser time to receive the data delay(1); // close the connection: client.stop(); Serial.println("client disconnected"); } } 
  • Do you have a wire cross or normal? - Vanyamba Electronics
  • Cross. Initially I tried the usual, but in the end I made a crossover. But the result remains the same, unfortunately - ArtWh0
  • Look here, everything is set up correctly. acerfans.ru/faq/… - Vanyamba Electronics
  • I apologize for the delay. Thanks to all for the help) End alarm) I found the problem. It turned himself shild kosyachny. On the Ethernet port, the transistor stood 511th. Googling in this direction found that this problem is quite common, because few of these shilds are not from China and are not necessary every time. I removed the 510th transistor from the old motherboard and changed it. Now everything is in order) - ArtWh0

0