Ejemplo #11 Servidor web con Arduino y enc28j60
Conexión con Arduino
Este es un ejemplo sencillo de prender y apagar un led desde una pagina, lo que se hizo fue que el botón de prender y apagar dependa del estado del de la salida, si la salida esta encendida entonces nos da la opción de apagar y si esta apagada la opción de prender.
Materiales
- Shield enc28j60
- Led
- 1 Resistencia 220Ω
- Arduino Uno
Código
/********************************************************* servidor web prender y apagar un led *********************************************************/ #include "etherShield.h" #include "ETHER_28J60.h" int outputPin = 6; static uint8_t mac[6] = {0x54, 0x55, 0x58, 0x10, 0x00, 0x24}; // this just needs to be unique for your network, // so unless you have more than one of these boards // connected, you should be fine with this value. static uint8_t ip[4] = {10, 10, 1, 10}; // the IP address for your board. Check your home hub // to find an IP address not in use and pick that // this or 10.0.0.15 are likely formats for an address // that will work. static uint16_t port = 80; // Use port 80 - the standard for HTTP ETHER_28J60 e; void setup() { e.setup(mac, ip, port); pinMode(outputPin, OUTPUT); digitalWrite(outputPin, LOW); } void loop() { char* params; if (params = e.serviceRequest()) { //lee los parametros del url if (strcmp(params, "?cmd=on") == 0) { digitalWrite(outputPin, HIGH); } else if (strcmp(params, "?cmd=off") == 0) { digitalWrite(outputPin, LOW); } //imprime de acuerdo a los valores e.print("Web Remote
"); if(digitalRead(outputPin) == HIGH) { e.print("Turn off"); } else { e.print("Turn on"); } e.respond(); } } Librería ETHER_28J60
Librería EtherShield
Fuentes:http://arduinocostarica.blogspot.com/
0 comentarios:
Publicar un comentario