Autor Tema: como aumentar y disminuir la Temperatura lm35 pushbutton LDC  (Leído 2808 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado coronado88

  • PIC10
  • *
  • Mensajes: 12
como aumentar y disminuir la Temperatura lm35 pushbutton LDC
« en: 10 de Septiembre de 2016, 00:57:39 »
buenas estoy haciendo un termómetro y solo logre que aumentara la temperatura pero no logro disminuir la temperatura espero una orientancion y que me ayuden con esa parte ya que tengo dias luchando para disminuirl. y tambien colocar un tope minimo y un Maximo
Código: [Seleccionar]
#include <LiquidCrystal.h>
float tempC=0;
int tempPin=0;//el pin de arduino que obtiene voltajes

// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

const int  SetTempUp = 6;    // pin 6 de Arduino con boton de incremento de temperatura
const int  SetTempDown = 7;  // pin 7 de Arduino con boton de decremento de temperatura

int TemButtonCounter = 32;   // contador de veces que se incrementa
                             // o decrementa el ajuste de temperatura
                             // valor inicial es de 32 grados
int TempButtonUpState = 0;   // estado actual del boton de incremento de temperatura
int TempButtonDownState = 0; // estado actual del boton de decremento de temperatura
int lastTempButtonState = 0; // ultimo estado (si se incremento o decremento la temperatura)



void setup()
{
  Serial.begin(9600);
  pinMode(13,OUTPUT);
  pinMode(SetTempUp, INPUT);
  pinMode(SetTempDown, INPUT);

 
  // set up the LCD's number of columns and rows:
  lcd.begin(16, 2);
  lcd.setCursor(0, 0);
  lcd.print("      UNEXPO"); // imprime texto  LCD
  lcd.setCursor(0, 1);
  lcd.print("Temperatura LM35"); // imprime texto LCD
  delay(1000); // aguarda 5ms
  lcd.clear(); // limpa LCD
}

void loop()
{
  TempButtonUpState = digitalRead(SetTempUp);   // lectura del boton de incremento de temperatura
  if (TempButtonUpState != lastTempButtonState) // comparar TempButtonState con su estado previo
  {
    if (TempButtonUpState == 1)              // si el ultimo estado cambio, incrementar el contador
     {
      TemButtonCounter++;
      delay(50);
     }
  }
   // guardar el estado actual como ultimo estado,
   // para la proxima vez que se ejecute el lazo
   lastTempButtonState = TempButtonUpState;
   
// lectura del boton de decremento de temperatura
   
   TempButtonDownState = digitalRead(SetTempDown);
   if (SetTempDown != lastTempButtonState)     // compara el estado del boton (incremento o decremento) con el ultimo estado
   {
   if (SetTempDown == 1)  // si el ultimo estado cambio, decrementar el contador
     {
      TemButtonCounter--;
     }
   }
   // guardar el estado actual como ultimo estado,
   // para la proxima vez que se ejecute el lazo
   lastTempButtonState = SetTempDown;
   
 
  tempC=(5*analogRead(tempPin)*100.0)/1024.0;
  {
  lcd.setCursor(0,0);
  lcd.print(TemButtonCounter);
  lcd.print("\337C ");
  lcd.setCursor(0,2);
  lcd.print("Temp: ");
  lcd.setCursor(5,2);
  lcd.print(tempC);
  lcd.print("\337C ");
  lcd.setCursor(7,2);
  delay(400);
  }
 
  {
    Serial.print("Temperatura: ");
    Serial.print(TemButtonCounter);
    Serial.println("\337C");
  }
 
  if(tempC < TemButtonCounter)
  {
   digitalWrite(13, HIGH);
   }
  else
  {
  digitalWrite(13, LOW);
   }
}

 


 

anything