SKU 00035
Arduino Uno Ethernet Shield W5100
$15,00
Disponible
¡Solo queda 1!
Consultar por WhatsApp
Datos rápidos
- Chip
- WIZnet W5100, red de 10/100 Mbps
- Conexión
- Conector RJ45 (cable de red)
- Comunicación con el Arduino
- SPI: pines 11, 12 y 13 (y el conector ICSP)
- Pines que ocupa
- 10 (W5100) y 4 (tarjeta microSD)
Características
Shield que conecta el Arduino UNO a una red por cable (Ethernet) con el chip W5100 de WIZnet. Con él el Arduino puede mostrar una página web, enviar datos a un servidor o recibir órdenes desde la red local o internet.
Trae además una ranura para tarjeta microSD, útil para guardar datos o las páginas que muestra.
| Chip | WIZnet W5100, red de 10/100 Mbps |
|---|---|
| Conexión | Conector RJ45 (cable de red) |
| Comunicación con el Arduino | SPI: pines 11, 12 y 13 (y el conector ICSP) |
| Pines que ocupa | 10 (W5100) y 4 (tarjeta microSD) |
| Tarjeta | Ranura microSD |
| Conexiones a la vez | Hasta 4 |
| Compatible | Arduino UNO y Mega |
¿Para qué sirve?
- Páginas web para encender luces o relés desde el celular o la computadora
- Enviar datos de sensores a un servidor o a internet
- Domótica por cable, más estable que el WiFi
Código de prueba
// Prueba del Ethernet Shield W5100: pide una dirección IP al router y
// muestra una página web con la lectura de A0. Abre esa IP en el navegador.
#include <SPI.h>
#include <Ethernet.h>
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; // dirección física (única en tu red)
EthernetServer servidor(80);
void setup() {
Serial.begin(9600);
Serial.println("Pidiendo dirección IP al router (DHCP)...");
if (Ethernet.begin(mac) == 0) {
Serial.println("No se obtuvo IP: revisa el cable de red y que el router tenga DHCP");
while (true) {}
}
servidor.begin();
Serial.print("Abre en el navegador: http://");
Serial.println(Ethernet.localIP());
}
void loop() {
EthernetClient cliente = servidor.available();
if (cliente) {
bool lineaVacia = true;
while (cliente.connected()) {
if (cliente.available()) {
char c = cliente.read();
// Una línea vacía marca el final de la petición del navegador
if (c == '\n' && lineaVacia) {
cliente.println("HTTP/1.1 200 OK");
cliente.println("Content-Type: text/html; charset=utf-8");
cliente.println("Connection: close");
cliente.println();
cliente.print("<h1>Hola desde el Arduino</h1><p>A0 = ");
cliente.print(analogRead(A0));
cliente.println("</p>");
break;
}
if (c == '\n') lineaVacia = true;
else if (c != '\r') lineaVacia = false;
}
}
delay(1);
cliente.stop();
}
Ethernet.maintain(); // renueva la IP cuando el router lo pide
}
Conecta el shield al router con un cable de red. La librería Ethernet ya viene con el IDE. Abre el Monitor serie a 9600 baudios para ver la IP y ábrela en un navegador conectado a la misma red.
Precauciones
- Los pines 4, 10, 11, 12 y 13 los usa el shield: no los uses para otra cosa.
- El chip W5100 se calienta mientras trabaja: es normal.
- Si al encender no obtiene IP, presiona el botón de reset del shield; algunas versiones no arrancan bien solas.
- Si tienes dos Arduino con Ethernet en la misma red, cambia la dirección MAC de uno de ellos.
Fuentes consultadas: Arduino: Ethernet Shield (documentación) · ProtoSupplies: Ethernet Shield W5100. Ficha preparada por Electrodrone; verifica siempre el voltaje de tu módulo antes de conectarlo.