#include <Wire.h> 
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);  //ใส่address ให้ถูก0x27,0x3f

int analogPinR2 = A0;              //วัดตัวบน
int analogPinR3 = A1;              //วัดตัวล่าง
int analogPinR4 = A2;
int analogPinR5 = A3;

int raw = 0;
int Vin = 5;
float Vout = 0;
float R0 = 950; // value of 1k resistor
float R1 = 950;
float R2 = 0;
float R3 = 0;
float buffer = 0;

const int ledPin =  2;
int ledState = LOW;            
unsigned long previousMillis = 0;
const long interval = 1000;           // ช่วงเวลากระพริบ

void setup(){
    lcd.begin(16,4);      
    lcd.setCursor(2, 0);
    lcd.print("Resistance Meter");
    lcd.setCursor(1, 3);
    lcd.print("NXP semiconductors");

  pinMode(ledPin, OUTPUT);

}

void loop(){

    unsigned long currentMillis = millis();

  if (currentMillis - previousMillis >= interval) {
    
    previousMillis = currentMillis;

          /////////

    if (ledState == LOW) {
      ledState = HIGH;

    } else {
      ledState = LOW;
    }

    digitalWrite(ledPin, ledState);

  }

    if (ledState == LOW){
    lcd.setCursor(0,1);
    lcd.print("K1");}
    else { lcd.setCursor(0,1);
    lcd.print("K2");}

  raw = analogRead(analogPinR2);
   if(raw==0){lcd.setCursor(2,1 );   ///LCD แถวที่1
   
    lcd.print("      ----      ");}
  if(raw){
    buffer = raw * Vin;
    Vout = (buffer)/1023.0;
    buffer = (Vin/Vout) - 1;
    R2 = R0 * buffer;
  
    lcd.setCursor(5, 1);
    if(R2>999.99){
    lcd.print(R2/950);
    lcd.print("  K Ohm  ");
    }else{
    lcd.setCursor(5, 1);
    lcd.print(R2);
    lcd.print("  Ohm   ");
      }
    }

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


  raw = analogRead(analogPinR3);
   if(raw==0){lcd.setCursor(0,2 );   ///LCD แถวที่2
   
    lcd.print("        ----      ");}
  if(raw){
    buffer = raw * Vin;
    Vout = (buffer)/1023.0;
    buffer = (Vin/Vout) - 1;
    R3 = R1 * buffer;

    lcd.setCursor(5, 2);
    if(R3>999.99){
    lcd.print(R3/950);
    lcd.print("  K Ohm  ");
    }else{
    lcd.setCursor(5, 2);
    lcd.print(R3);
    lcd.print("  Ohm   "); /////////สิ้นสุด 1,2
      }
  }


    delay(10);
  

}
uno:A5.2
uno:A4.2
uno:AREF
uno:GND.1
uno:13
uno:12
uno:11
uno:10
uno:9
uno:8
uno:7
uno:6
uno:5
uno:4
uno:3
uno:2
uno:1
uno:0
uno:IOREF
uno:RESET
uno:3.3V
uno:5V
uno:GND.2
uno:GND.3
uno:VIN
uno:A0
uno:A1
uno:A2
uno:A3
uno:A4
uno:A5
r1:1
r1:2
r2:1
r2:2
relay1:NO2
relay1:NC2
relay1:P2
relay1:COIL2
relay1:NO1
relay1:NC1
relay1:P1
relay1:COIL1
lcd1:GND
lcd1:VCC
lcd1:SDA
lcd1:SCL
led1:A
led1:C