Код для подключения шилда Ethernet W5100
В качестве кода подключения можно использовать стандартную библиотеку Ethernet по пути Файл/Примеры/Ethernet/Web-Server. Схема подключения в данном случае не требуется, так как достаточно установить шилд на плату контроллера.
#include <SPI.h> // подключение библиотеки SPI #include <Ethernet.h> // подключение библиотеки Ethernet byte mac[] = {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED}; // указание MAC адреса IPAddress ip(192, 168, 21, 105); // указание статического IP EthernetServer server(80); // инициализация библиотеки Ethernet "server" на порту 80 void setup() { Serial.begin(9600); while (!Serial) {;} Ethernet.begin(mac, ip); // запуск сервера server.begin(); Serial.print("server is at "); Serial.println(Ethernet.localIP()); } void loop() { EthernetClient client = server.available(); // прием данных от клиента if (client) { Serial.println("new client"); boolean currentLineIsBlank = true; while (client.connected()) { if (client.available()) { char c = client.read(); Serial.write(c); if (c == '\n' && currentLineIsBlank) { client.println("HTTP/1.1 200 OK"); client.println("Content-Type: text/html"); client.println("Connection: close"); // соединение будет закрыто после завершения ответа client.println("Refresh: 5"); // обновление страницы каждые 5 секунд client.println(); client.println("<!DOCTYPE HTML>"); client.println("<html>"); 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') { currentLineIsBlank = true; } else if (c != '\r') { currentLineIsBlank = false; } } } delay(1); client.stop(); Serial.println("client disconnected"); } }
Скачать файл с кодом, формат .INO: Ethernet w5100