Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <SPI.h>
- #include <Ethernet.h>
- #define fotocelda A2
- #define pot1 A0 // potenciometro 1
- #define pot A1 // potenciometro 2
- #define sr A3 //switch reed
- / / Introducir una dirección MAC y la dirección IP para el dispositivo de abajo .
- / / La dirección IP será dependiente de la red local:
- byte mac[] = {
- 0x01, 0x50, 0x56, 0xC0, 0x00, 0x08 };
- IPAddress ip(192,168,1,5); //direccion ip configurada para funcionar con el servidor.
- / / Inicializar la biblioteca de servidor Ethernet
- / / Con la dirección IP y el puerto que desee utilizar
- / / ( El puerto 80 es el predeterminado para HTTP ) :
- EthernetServer server(80);
- void setup() {
- Serial.begin(9600);
- pinMode(fotocelda, INPUT);
- pinMode(pot1, INPUT);
- pinMode(pot, INPUT);
- pinMode(sr, INPUT);
- while (!Serial) {
- ; / / Esperar al puerto serial para conectar .
- }
- / / Iniciar la conexión Ethernet y el servidor :
- 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");
- / / Una petición http termina con una línea en blanco
- boolean currentLineIsBlank = true;
- while (client.connected()) {
- if (client.available()) {
- char c = client.read();
- Serial.write(c);
- / / Si usted ha llegado a la final de la línea ( recibió una nueva línea
- / / Carácter ) y la línea está en blanco , la petición http ha terminado,
- / / Para que pueda enviar una respuesta
- if (c == '\n' && currentLineIsBlank) {
- / / Enviar un encabezado de respuesta HTTP estándar
- client.println("HTTP/1.1 200 OK");
- client.println("Content-Type: text/html");
- client.println("Connection: close"); / / La conexión se cierra
- client.println("Refresh: 5"); / / Actualizar la página automáticamente cada 5 segundos
- client.println();
- client.println("<!DOCTYPE HTML>");
- client.println("<html>");
- / / Salida el valor de cada pin de entrada analógica
- int luminosidad = analogRead(fotocelda);
- client.print("Luminosidad");
- client.print(" es ");
- client.print(luminosidad);
- client.println("<br />");
- int valorT1 = analogRead(pot1);
- int POTE1 = map(valorT1, 0, 1023, 0, 100);
- client.print("Potenciometro 1");
- client.print(" es ");
- client.print(POTE1);
- client.println("<br />");
- int valorT2 = analogRead(pot);
- int POTE2 = map(valorT2, 0, 1023, 0, 100);
- client.print("Potenciometro 2");
- client.print(" es ");
- client.print(POTE2);
- client.println("<br />");
- int valorSw = analogRead(sr);
- int SWIT = map(valorSw, 0, 1023, 0, 100);
- client.print("Switch Reed");
- client.print(" es ");
- client.print(SWIT);
- client.println("<br />");
- client.println("</html>");
- break;
- }
- if (c == '\n') {
- / / Que está empezando una nueva línea
- currentLineIsBlank = true;
- }
- else if (c != '\r') {
- / / Que ha llegado un personaje en la línea actual
- currentLineIsBlank = false;
- }
- }
- }
- / / Darle al navegador web el tiempo para recibir los datos
- delay(1);
- / / Cerrar la conexión :
- client.stop();
- Serial.println("client disonnected");
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement