Advertisement
Jorge_moises

Leitura sensor mais botão

Apr 9th, 2022
1,333
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.10 KB | None | 0 0
  1. #include <LiquidCrystal_I2C.h>     // Carrega biblioteca LCD
  2. #include <Wire.h>                  
  3.  
  4. byte B = 3, T2 = 4, T3 = 5;       // Variaveis para termostatos
  5. byte Led = 13;
  6. int EstadoB = 0;                  // Variavel para armazenar estado do T1
  7.  
  8. LiquidCrystal_I2C lcd(0x3F,2,1,0,4,5,6,7,3, POSITIVE);
  9.  
  10. unsigned long Tempo;               // Temperatura solar
  11. unsigned long Tempo2;              // Temperatura reservatorio
  12.  
  13. void setup(){
  14.   lcd.begin (16,2);                // Inicia LCD com moduo I2C    
  15.   lcd.setCursor (0,1);             // Posição do cursor
  16.   lcd.print ("   Carregando");     // Imprimi esse texto
  17.   delay (8000);                    // Aguarda 8"
  18.   lcd.clear();                     // Limpa a tela do LCD
  19.  
  20.   pinMode (B, INPUT_PULLUP);
  21.   pinMode (T2, INPUT_PULLUP);
  22.   pinMode (T3, INPUT_PULLUP);
  23.   pinMode (Led, OUTPUT);  
  24.  }
  25. void loop(){
  26.   Termostatos();
  27.  
  28.   if ((millis() - Tempo) > 8000){  // Comparação de tempo
  29.   Sensor1();                       // sensor do solar
  30.   Tempo = millis();
  31.   }
  32.   if ((millis() - Tempo2) > 8000){ // Comparação de tempo 2
  33.   Sensor2();                       // sendo do reservatorio
  34.   Tempo2 = millis();
  35.   }
  36. }
  37. void Sensor1(){
  38.   lcd.setBacklight (HIGH);         // Acende luz do lcd
  39.   lcd.setCursor (0,0);             // Posição do cursor
  40.   lcd.print ("DS18B20 2");           // Imprimir o texto no lcd
  41.   delay (5000);                    // Atraso de 5"
  42.   lcd.clear();                     // Limpa a tela do LCD
  43.  }
  44. void Sensor2(){                    // Sensor do reservatorio
  45.   lcd.setCursor (0,1);             // Pisoção do cursor
  46.   lcd.print ("DS18B20");           // Imprimi o texto no lcd
  47.   delay (5000);                    // Atraso de 5"
  48.   lcd.clear();                     // Limpa a tela do LCD
  49. }
  50. void Termostatos (){
  51.   EstadoB = digitalRead (B);       // Verifica o estado do botão
  52.    if (EstadoB == LOW){            // Se for apertado liga o led
  53.     digitalWrite (Led, HIGH);      // Liga o led
  54.    }
  55.   else {                          
  56.     digitalWrite (Led, LOW);       // Se o botao for solto apaga o led
  57.   }
  58. }
  59.  
  60.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement