Hi, I'm trying to make a program that check's whether pin 2 is HIGH or LOW and displays a corresponding message on an LCD screen, the problem is that every time it returns the negative message. `#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
void setup() {
// put your setup code here, to run once:
pinMode(2, INPUT);
pinMode(3, OUTPUT);
lcd.init();
lcd.clear();
lcd.backlight();
lcd.setCursor(0,0);
lcd.print("Loading");
delay(600);
lcd.setCursor(7,0);
lcd.print(".");
delay(600);
lcd.setCursor(8,0);
lcd.print(".");
delay(600);
lcd.setCursor(9,0);
lcd.print(".");
delay(600);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Loading");
delay(600);
lcd.setCursor(7,0);
lcd.print(".");
delay(600);
lcd.setCursor(8,0);
lcd.print(".");
delay(600);
lcd.setCursor(9,0);
lcd.print(".");
delay(600);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Loading");
delay(600);
lcd.setCursor(7,0);
lcd.print(".");
delay(600);
lcd.setCursor(8,0);
lcd.print(".");
delay(600);
lcd.setCursor(9,0);
lcd.print(".");
delay(600);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Tank Status");
delay(600);
lcd.setCursor(11,0);
lcd.print(".");
delay(600);
lcd.setCursor(12,0);
lcd.print(".");
delay(600);
lcd.setCursor(13,0);
lcd.print(".");
delay(600);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Tank Status");
delay(600);
lcd.setCursor(11,0);
lcd.print(".");
delay(600);
lcd.setCursor(12,0);
lcd.print(".");
delay(600);
lcd.setCursor(13,0);
lcd.print(".");
delay(600);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Tank Status");
delay(600);
lcd.setCursor(11,0);
lcd.print(".");
delay(600);
lcd.setCursor(12,0);
lcd.print(".");
delay(600);
lcd.setCursor(13,0);
lcd.print(".");
delay(600);
lcd.clear();
if(2 == HIGH){ //checks tank seal
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Seal check pass");
delay(5000);
lcd.clear();
}
else{
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Seal check fail");
delay(800);
lcd.setCursor(0,1);
lcd.print("Re-insert tank");
delay(8000);
lcd.clear();
}
}
void loop() {
// put your main code here, to run repeatedly:
}`