Pro(lesson3) — Arduino Uno simulation

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

Components

Sketch code

#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcdSpeed(0x27,16,4);

// Для настройки адреса 2-му дисплею, необходимо в файле diagram.json добавить атрибут
// Пример атрибута "attrs": { "pins": "i2c" ,"i2cAddress":"0x20"}
LiquidCrystal_I2C lcdInform(0x20,16,4);

void setup() {

  // Запуск 2-х дисплеев
  lcdSpeed.init();
  lcdSpeed.backlight();

  lcdInform.init();
  lcdInform.backlight();

  pinMode(2, INPUT_PULLUP);
  pinMode(3, INPUT_PULLUP);

}

void loop() {
 
  updateLcdSpeed();
  updateLcdInform();
  delay(100);
}

void updateLcdSpeed()
{
  int speed = analogRead(0) / 5.2; // делаем максимальную скорость 200 км/ч
  lcdSpeed.clear();
  lcdSpeed.setCursor(0,0);
  lcdSpeed.print("Speed: ");
  lcdSpeed.print(speed);
  lcdSpeed.print(" Km/H");

  speed = speed * 0.62;
  lcdSpeed.setCursor(0,1);
  lcdSpeed.print("Speed: ");
  lcdSpeed.print(speed);
  lcdSpeed.print(" Ml/H");
  
}

void updateLcdInform()
{
  lcdInform.clear();

  lcdInform.setCursor(0,0);
  lcdInform.print("Led: ");
  lcdInform.setCursor(0,2);
  lcdInform.print("Conditioner: ");


  if(digitalRead(2)==0){
    lcdInform.setCursor(14,2);
    lcdInform.print("OFF");
  }
    
  else if(digitalRead(2)==1){
    lcdInform.setCursor(14,2);
    lcdInform.print("ON");
  }

  if(digitalRead(3)==0){
    lcdInform.setCursor(6,0);
    lcdInform.print("OFF");
  }
    
  else if(digitalRead(3)==1){
    lcdInform.setCursor(6,0);
    lcdInform.print("ON");
  }

  
    
}

More projects by robomozyr