martes, 6 de noviembre de 2018

Wemos D1 R1 - Programas




Primer Programa de prender un LED

int ledPin = D9;    

void setup() {
  pinMode(ledPin, OUTPUT);     
}
void loop() {
  digitalWrite(ledPin, HIGH);   
  delay(100);                      
  digitalWrite(ledPin, LOW);  
  delay(100);                      
}

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Programa de prender LED por red LAN
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

#include <ESP8266WiFi.h>

const char* ssid = "nombrewifi";
const char* password = "******";

WiFiServer server(80);

void setup(){
  Serial.begin(9600);
  delay(10);

  pinMode(D9,OUTPUT);
  digitalWrite(D9,LOW);

  Serial.println();
  Serial.println();
  Serial.print("conectandose a red:");
  Serial.println(ssid);

  WiFi.begin(ssid, password); // conexion a la red

  while (WiFi.status() !=WL_CONNECTED)
  {
    delay(500);
    Serial.print(".");
  }
  Serial.println();
  Serial.println("Wifi conectao");

  server.begin(); //iniciamos el servidor
  Serial.println("srvidor iniciado");

  Serial.println("ingrese desde un navegador web usando la sgte IP:");
  Serial.println(WiFi.localIP());//obtenemos ip
}

void loop(){
  WiFiClient client = server.available();
  if (client) // si hay un cliente presente

  {
    Serial.println("nuevo cliente");
    //esperamos hasta que hayan datos disponibles
    while(!client.available()&&client.connected())
    {
      delay(1);
    }
    // leemos la primera linea de la peticion del cliente
    String linea1 = client.readStringUntil ('r');
    Serial.println(linea1);

    if (linea1.indexOf("LED=ON")>0) // Buscamos un LED =ON en la 1 linea
    {
      digitalWrite(D9,HIGH);
    }
    if (linea1.indexOf("LED=OFF")>0) // Buscamos un LED =OFF en la 1 linea
    {
      digitalWrite(D9,LOW);
    }

    client.flush();

    Serial.println("Enviando respuesta..");
    //Encabezado http
    client.println("HTTP/1.1 200 OK");
    client.println("Content-Type: text/html");
    client.println("connection:close");//la conexion se cierra despues de finalizar
    client.println();
    //pagina html para el navegador
    client.println("<!DOCTYPE  HTML>");
    client.println("<html>");
    client.println("<head><title>Miguel Antonio</title></head>");
    client.println("<body>");
    client.println("<h1 align='center'>Test ESP8266</h1>");
    client.println("<h1 style='text-align:center;'>");
    client.println("<br />");
    client.println("<button onClick=location.href='./?LED=ON'>LED ON</button>");
    client.println("<button onClick=location.href='./?LED=OFF'>LED OFF</button>");
    client.println("<br />");
    client.println("</div>");
    client.println("</body>");
    client.println("</html>");

    delay(1);
    Serial.println("respuesta enviada");
    Serial.println();
  }
}


Luego de cargar el programa en el wemos, debemos presionar reset, revisar el monitor serial y cuando sepamos la ip.

Entrar a la pagina de internet escribir la ip, apareceran los botones que activan o desactivan el led.




//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

Programa Variar la Frecuencia  de Parpadero de un LED con potenciometro

int potPin = 0;   // Pin de entrada para el potenciómetro 
int ledPin = 13;   // Pin de salida para el LED
void setup() { 
   pinMode(ledPin, OUTPUT);  // Declara el pin del LED como de salida
} 
void loop() { 
   digitalWrite(ledPin, HIGH); // Enciende el LED 
   delay(analogRead(potPin));  // Lee el valor del potenciómetro 
   digitalWrite(ledPin, LOW);  // Apaga el LED 
   delay(analogRead(potPin));   
} 
 

Verificar

1 comentario:

  1. How do you win at gambling online in Canada?
    How 실시간배팅 to 오락실 슬롯 머신 게임 get started: 해외 배팅 사이트 Introduction. When you play online gambling online, 바카라시스템배팅법 you'll probably encounter a 토토 검증 먹튀 랭크 number of unique games to choose from. This includes

    ResponderEliminar