1.   
CODIFICACION ARDUINO
#include<LiquidCrystal.h>
#include<DHT11.h>//LIBRERIA PARA EL CENSOR DHT11
DHT11 dht11(10);//ESTO
ES PARA CENSOR DHT11
int Vin =
5; //ESTO ES PARA
OHM
float Vout =
0; //ESTO ES PARA
OHM
float R1 =
1000; //ESTO ES
PARA OHM
float R2 =
0; //ESTO ES PARA
OHM
float buffer =
0; //ESTO ES PARA
OHM
char directo[8] =
{32, 34, 36, 38, 40, 42, 44, 46};//PARA LAN TESTER
char cruzado[8] =
{36, 42, 32, 38, 40, 34, 44, 46};//PARA LAN TESTER
LiquidCrystal  lcd(2,
3, 4, 5, 6, 7);
void setup() {
  lcd.begin(16, 2);
  lcd.setCursor(0, 0);
  lcd.print("MILTON  -
BRANCO");
  lcd.setCursor(0, 1);
  lcd.print("------CESAR-----");
  delay(3000);
  lcd.begin(16, 2);
  lcd.setCursor(0, 0);
  lcd.print("MILTON  -
BRANCO");
  lcd.setCursor(0, 1);
  lcd.print("------CESAR-----");
  delay(100);
  lcd.setCursor(0, 0);
  lcd.print(">MILTON
 - BRANC");
  lcd.setCursor(0, 1);
  lcd.print("-----CESAR-----<");
  delay(100);
  lcd.setCursor(0, 0);
  lcd.print(">>MILTON
 - BRAN");
  lcd.setCursor(0, 1);
  lcd.print("----CESAR-----<<");
  delay(100);
  lcd.setCursor(0, 0);
  lcd.print(">>>MILTON
 - BRA");
  lcd.setCursor(0, 1);
  lcd.print("---CESAR-----<<<");
  delay(100);
  lcd.setCursor(0, 0);
  lcd.print(">>>>MILTON
 - BR");
  lcd.setCursor(0, 1);
  lcd.print("--CESAR-----<<<<");
  delay(100);
  lcd.setCursor(0, 0);
  lcd.print(">>>>>MILTON
 - B");
  lcd.setCursor(0, 1);
  lcd.print("-CESAR-----<<<<<");
  delay(100);
  lcd.setCursor(0, 0);
  lcd.print(">>>>>>MILTON
 - ");
  lcd.setCursor(0, 1);
  lcd.print("CESAR-----<<<<<<");
  delay(100);
  lcd.setCursor(0, 0);
  lcd.print(">>>>>>>MILTON
 -");
  lcd.setCursor(0, 1);
  lcd.print("ESAR-----<<<<<<<");
  delay(100);
  lcd.setCursor(0, 0);
  lcd.print(">>>>>>>>MILTON  ");
  lcd.setCursor(0, 1);
  lcd.print("SAR-----<<<<<<<<");
  delay(100);
  lcd.setCursor(0, 0);
  lcd.print(">>>>>>>>>MILTON
");
  lcd.setCursor(0, 1);
  lcd.print("AR-----<<<<<<<<<");
  delay(100);
  lcd.setCursor(0, 0);
  lcd.print(">>>>>>>>>>MILTON");
  lcd.setCursor(0, 1);
  lcd.print("R-----<<<<<<<<<<");
  delay(100);
  lcd.setCursor(0, 0);
  lcd.print(">>>>>>>>>>>MILTO");
  lcd.setCursor(0, 1);
  lcd.print("-----<<<<<<<<<<<");
  delay(100);
  lcd.setCursor(0, 0);
  lcd.print(">>>>>>>>>>>>MILT");
  lcd.setCursor(0, 1);
  lcd.print("----<<<<<<<<<<<<");
  delay(100);
  lcd.setCursor(0, 0);
  lcd.print(">>>>>>>>>>>>>MIL");
  lcd.setCursor(0, 1);
  lcd.print("---<<<<<<<<<<<<<");
  delay(100);
  lcd.setCursor(0, 0);
  lcd.print(">>>>>>>>>>>>>>MI");
  lcd.setCursor(0, 1);
  lcd.print("--<<<<<<<<<<<<<<");
  delay(100);
  lcd.setCursor(0, 0);
  lcd.print(">>>>>>>>>>>>>>>M");
  lcd.setCursor(0, 1);
  lcd.print("-<<<<<<<<<<<<<<<");
  delay(100);
  lcd.setCursor(0, 0);
  lcd.print(">>>>>>>>>>>>>>>>");
  lcd.setCursor(0, 1);
  lcd.print("<<<<<<<<<<<<<<<<");
  delay(100);
  lcd.setCursor(0, 0);
  lcd.print(">>>>>>>>>>>>>>>M");
  lcd.setCursor(0, 1);
  lcd.print("L<<<<<<<<<<<<<<<");
  delay(100);
  lcd.setCursor(0, 0);
  lcd.print(">>>>>>>>>>>>>>MU");
  lcd.setCursor(0, 1);
  lcd.print("AL<<<<<<<<<<<<<<");
  delay(100);
  lcd.setCursor(0, 0);
  lcd.print(">>>>>>>>>>>>>MUL");
  lcd.setCursor(0, 1);
  lcd.print("TAL<<<<<<<<<<<<<");
  delay(100);
  lcd.setCursor(0, 0);
  lcd.print(">>>>>>>>>>>>>MULT");
  lcd.setCursor(0, 1);
  lcd.print("ITAL<<<<<<<<<<<<<");
  delay(100);
  lcd.setCursor(0, 0);
  lcd.print(">>>>>>>>>>>>MULTI");
  lcd.setCursor(0, 1);
  lcd.print("GITAL<<<<<<<<<<<<");
  delay(100);
  lcd.setCursor(0, 0);
  lcd.print(">>>>>>>>>>MULTIM");
  lcd.setCursor(0, 1);
  lcd.print("IGITAL<<<<<<<<<<");
  delay(100);
  lcd.setCursor(0, 0);
  lcd.print(">>>>>>>>>MULTIME");
  lcd.setCursor(0, 1);
  lcd.print("DIGITAL<<<<<<<<<");
  delay(100);
  lcd.setCursor(0, 0);
  lcd.print(">>>>>>>>MULTIMET");
  lcd.setCursor(0, 1);
  lcd.print("DIGITAL<<<<<<<<<");
  delay(100);
  lcd.setCursor(0, 0);
  lcd.print(">>>>>>>MULTIMETR");
  lcd.setCursor(0, 1);
  lcd.print(">DIGITAL<<<<<<<<");
  delay(100);
  lcd.setCursor(0, 0);
  lcd.print(">>>>>>MULTIMETRO");
  lcd.setCursor(0, 1);
  lcd.print(">>DIGITAL<<<<<<<");
  delay(100);
  lcd.setCursor(0, 0);
  lcd.print(">>>>MULTIMETRO<<");
  lcd.setCursor(0, 1);
  lcd.print(">>>DIGITAL<<<<<<");
  delay(100);
  lcd.setCursor(0, 0);
  lcd.print(">>>MULTIMETRO<<<");
  lcd.setCursor(0, 1);
  lcd.print(">>>>DIGITAL<<<<<");
  delay(2000);
  lcd.clear();
  //AQUI VA LA
ASIGNACION DE PINES DEL LANTESTER
  pinMode(32, OUTPUT);
  pinMode(34, OUTPUT);
  pinMode(36, OUTPUT);
  pinMode(38, OUTPUT);
  pinMode(40, OUTPUT);
  pinMode(42, OUTPUT);
  pinMode(44, OUTPUT);
  pinMode(46, OUTPUT);
  pinMode(48, INPUT); // SELECCIONA SI ES UN CABLE NORMAL(T268B)O UN CABLE DE
CONEXION CRUZADA (T268A)
  pinMode(50, OUTPUT); // EN ESTE PIN VA UN LED QUE INDICA SI EL PIN ESTA SIENDO
LEÍDO
}
void loop() {
  digitalWrite(22, HIGH);
  digitalWrite(24, HIGH);
  digitalWrite(26, HIGH);
  digitalWrite(28, HIGH);
  digitalWrite(30, HIGH);
  int estado =
0;
  int conexionA = 0;
  int conexionB = 0;
  int conexionC = 0;
  int
conexionD =
0;
  int
conexionE =
0;
  if (digitalRead(22) == LOW) {
    estado
= 1;
    conexionA
= 1;
  }
  if (digitalRead(24) == LOW) {
    estado
= 2;
    conexionB
= 1;
  }
  if (digitalRead(26) == LOW) {
    estado
= 3;
    conexionC
= 1;
  }
  if (digitalRead(28) == LOW) {
    estado
= 4;
    conexionD
= 1;
  }
  if (digitalRead(30) == LOW) {
    estado
= 5;
    conexionE
= 1;
  }
  int conexiontotal = conexionA + conexionB + conexionC + conexionD + conexionE;
  if (conexiontotal >
1)
  {
    estado
= 6;
  }
  if (conexiontotal ==
0)
  {
    estado
= 7;
  }
  switch
(estado) {
    case
(1): {
        lcd.setCursor(0, 0);
        lcd.print("<->VOLTIMETRO<->");
        double  sensorValue
= analogRead(A0);
        double  voltaje
= sensorValue
/ 29.86807388;
        lcd.setCursor(2, 1);
        if (voltaje >= 1000)
        {
          lcd.print(voltaje / 1000, 2);
          lcd.setCursor(10, 1);
          lcd.print("[KVol]");
        }
        else {
          if (voltaje >= 1) {
            lcd.print(voltaje, 2);
            lcd.setCursor(10, 1);
            lcd.print("[Vol]");
          }
          else {
            if (voltaje <= 1) {
              lcd.print(voltaje * 1000, 2);
              lcd.setCursor(10, 1);
              lcd.print("[mVol]");
            }
          }
        }
        delay(500);
        lcd.clear();
        break;
      }
    case (2): {
        double corriente = (analogRead(0) * (0.00490f)) / (0.00001f); ///(0.01f)
        lcd.setCursor(0, 0);
        lcd.print("<> AMPERIMETRO<>");
        lcd.setCursor(2, 1);
        if (corriente < 1000)
        {
          lcd.print(corriente, 2);
          lcd.setCursor(10, 1);
          lcd.print("[mAmp]");
        }
        else {
          if (corriente < 1000000) {
            lcd.print(corriente / 1000, 2);
            lcd.setCursor(10, 1);
            lcd.print("[Amp]");
          }
          else {
            if (corriente < 1000000000) {
              lcd.print(corriente / 1000000, 2);
              lcd.setCursor(10, 1);
              lcd.print("[kAmp]");
            }
          }
        }
        delay(300);
        lcd.clear();
        break;
      }
    case (3): {
        double raw = analogRead(A1);
        buffer = raw * Vin;
        Vout = (buffer) / 1024.0;
        buffer = (Vin / Vout) - 1;
        R2 = ((R1 * buffer) / 1.02520602) * 10;
        lcd.setCursor(0, 0);
        lcd.print("<-> OHMETRO <->");
        if (R2 < 1000) {
          lcd.setCursor(2, 1);
          lcd.print(R2, 2);
          lcd.setCursor(10, 1);
          lcd.print("ohm");
        }
        if (R2 < 1000000 && R2 > 999) {
          lcd.setCursor(2, 1);
          lcd.print(R2 / 1000, 2);
          lcd.setCursor(10, 1);
          lcd.print("k ohm");
        }
        if (R2 < 1000000000 && R2 > 999999) {
          lcd.setCursor(2, 1);
          lcd.print(R2 / 1000000, 2);
          lcd.setCursor(10, 1);
          lcd.print("M ohm");
        }
        delay(1000);
        lcd.clear();
        break;
      }
    case (4): {
        int err;
        float temp, hum;
        if ((err = dht11.read(hum, temp)) == 0)
        {
          lcd.setCursor(0, 0);
          lcd.print("temp:");
          lcd.setCursor(9, 0);
          lcd.print(temp / 3);
          lcd.setCursor(14, 0);
          lcd.print("oC");
          lcd.setCursor(0, 1);
          lcd.print("humedad: ");
          lcd.setCursor(9, 1);
          lcd.print(hum / 3);
          lcd.setCursor(14, 1);
          lcd.print(" %");
        }
        else {
          lcd.setCursor(5, 0);
          lcd.print(err);
        }
        delay(1000);
        lcd.clear();
        break;
      }
    case (5):
{
        if (digitalRead(48) == LOW) { // norma t 568A o ceuzado
          lcd.setCursor(0, 0);
          lcd.print(">UTP:T568A cross");
          delay(500);
          for (int n = 0; n < 8; n++) {
            lcd.setCursor(0, 1);
            lcd.print(n + 1);
            lcd.setCursor(2, 1);
            lcd.print(":a:");
            lcd.setCursor(5, 1);
            lcd.print(((int)cruzado[n] / 2) - 15);
            lcd.setCursor(7, 1);
            lcd.print(",(pin)");
            lcd.setCursor(13, 1);
            lcd.print((int)cruzado[n]);
            delay(1000);
            parpadeo(cruzado[n],
1000);
            parpadeo(50, 50);
          }
        } else { //Norma T 568 B o
comun, paralelo
          lcd.setCursor(0, 0);
          lcd.print("UTP:T568B normal");
          delay(500);
          for (int n = 0; n < 8; n++) {
            lcd.setCursor(0, 1);
            lcd.print(n + 1);
            lcd.setCursor(2, 1);
            lcd.print(":a:");
            lcd.setCursor(5, 1);
            lcd.print(((int)directo[n] / 2) - 15);
            lcd.setCursor(7, 1);
            lcd.print(",(pin)");
            lcd.setCursor(13, 1);
            lcd.print((int)directo[n]);
            delay(1000);
            parpadeo(directo[n],
1000);
            parpadeo(50, 50);
          }
          delay(500);
          lcd.clear();
          break;
        }
      }
    case (6):
{
        lcd.setCursor(0, 0);
        lcd.print("DOS O MAS SWITCH");
        lcd.setCursor(0, 1);
        lcd.print("HABILITADOS....!");
        delay(500);
        lcd.clear();
        break;
      }
    default : {
        lcd.setCursor(0, 0);
        lcd.print("no hay conexion!");
        char mensaje[26] = "
  HABILITA UN SWITCH..!!";
        for (int i = 0; i < 25; i++) {
          lcd.setCursor(0, 1);
          for (int x = i; x < i + 16; x++) {
            if ((int)x >= 25)
            {
              lcd.print(mensaje[x - 25]);
            }
            else {
              lcd.print(mensaje[x]);
            }
          }
          delay(300);
        }
        lcd.clear();
        break;
      }
  }
}
void parpadeo(int pin, int ms)
{
  digitalWrite(pin, HIGH);
  lcd.setCursor(0, 1);
  delay(ms);
  digitalWrite(pin, LOW);
}
 
 
 
No hay comentarios.:
Publicar un comentario