unidad2 — Arduino Uno simulation

An interactive Arduino Uno circuit simulation you can run free in your browser on Velxio, by crispollo8.

Components

Sketch code

#include <LiquidCrystal_I2C.h>
#include <Wire.h>

LiquidCrystal_I2C lcd(0x27, 16, 2);

#define PONT A0
#define PONT_2 A1

// Definimos los pines de los LEDs (DEBEN ser pines PWM con el símbolo ~)
#define LED_ROJO 3   
#define LED_AZUL 5   

int valor = 0;
int valor_1 = 0;
 
void setup() {
  lcd.init();          
  lcd.begin(16,2);
  lcd.clear();         
  lcd.backlight();     

  // Configurar los pines de los LEDs como salidas
  pinMode(LED_ROJO, OUTPUT);
  pinMode(LED_AZUL, OUTPUT);

  lcd.setCursor(0, 0); 
  lcd.print("unidad 2"); 
  delay(2000);         
  lcd.clear();
}   
     
void loop() {
  // 1. Leer potenciómetro 1 (Temperatura) y escalarlo de 0 a 100
  valor = analogRead(PONT); 
  valor = map(valor, 0, 1023, 0, 100);
  
  // 2. Leer potenciómetro 2 (Humedad) y escalarlo de 0 a 80
  valor_1 = analogRead(PONT_2); 
  valor_1 = map(valor_1, 0, 1023, 0, 80);

  // 3. Convertir esos valores a brillo PWM (0 a 255) para los LEDs
  int brilloRojo = map(valor, 0, 100, 0, 255);
  int brilloAzul = map(valor_1, 0, 80, 0, 255);

  // 4. Enviar la señal gradual a los LEDs
  analogWrite(LED_ROJO, brilloRojo);
  analogWrite(LED_AZUL, brilloAzul);
  
  // 5. Mostrar datos en la pantalla LCD de forma ordenada
  lcd.setCursor(0, 0);
  lcd.print("tempperatura: ");
  lcd.print(valor);
  lcd.print("   "); // Espacios para limpiar dígitos sobrantes
  
  lcd.setCursor(0, 1);
  lcd.print("humedad : ");
  lcd.print(valor_1);
  lcd.print("   ");
  
  delay(100);
}

More projects by crispollo8