Stap 2: De Code
Dus de code:geschreven door Dylon Jamna (ME!)
de code van de bibliotheek
#include < EEPROM.h >
#include < LiquidCrystal.h > / / bevatten de code bibliotheek
int tempPin = A0; variabelen maken / / thermistor is op A0
int geleid = 13; geleid is op pin
float temp; Maak een variabele met de naam temp
float settemp; Maak een variabele met de naam temp
int swtu = 7; switch omhoog is op pin 7
int swtd = 6; Switch naar beneden is op pin 6
LiquidCrystal lcd (12, 11, 5, 4, 3, 2); LCD is op 12,11,5,4,3,2
VOID Setup {}
pinMode (led, 1); led maken of pin13 een uitgang
Serial.begin (9600); Stel de seriële monitor tx en rx snelheid
LCD.begin (16, 2); alle "blokken" op het display instellen
lcd.setCursor(0,0); de cursor instellen naar colum 0 rij 0
LCD.Print ("hello, world!"); Hallo wereld gedurende 1 seconde weergeven
LCD.Clear(); schakelt het LCD-scherm
EEPROM.read (1); het geheugenadres eeprom of atmega328 1 maken
}
void loop {}
int tvalue = analogRead(tempPin); tvalue maken wat we lezen op de tempPin
float temp = (tvalue / 6.388888888889); de wiskunde / conversie naar temp
lcd.setCursor (0,0); Stel de cursor op 0,0
LCD.Print (temp); Afdrukken van de huidige temperaturen in f
LCD.Print ('F');
Serial.println (temp); afdrukken van de temp het het serienummer controleren
settemp = EEPROM.read(1); Lees de settemp op de eeprom
vertraging (250); wachten op het LCD-scherm te vernieuwen elke 250 milliseconden
Als / / als we se de switch van pin lezing op 1 of 5 volt
(digitalRead(swtu) == 1)
{
settemp ++ / / toevoegen aan de settemp, de settemp is de ideale temperatuur voor u
;
}
else {/ / andere wijze niets doen
}
Als
(digitalRead (swtd) == 1) / / als we een 1 op de andere schakelaar-pin detecteren
{
(settemp--) ;// aftrekken één fromm de settemp
}
else {}
anders, niets doen
}
Als (temp > settemp) / / als de temperatuur hoger is dan uw gekozen settemp
{
digitalWrite (led, 1); inschakelen van de led
}
anders / / als dat niet gebeurt, dan moet u de led uitschakelen
{
digitalWrite (led, 0);
}
lcd.setCursor (0,1); de cursor ingesteld op 0,1
LCD.Print ('ingesteld op'); Afdrukken instellen en uw ideale temperatuur in f
LCD.Print (settemp);
LCD.Print ('F');
Serial.println(settemp); De settemp in de seriële naast afdrukken
EEPROM.write (1, settemp); / * de meest recente settemp schrijven in eeprom gegevens stoage
dus dat als de stroom wordt verbroken, u settemp opgeslagen! * /
vertraging (250); 250 milliseconden wacht
} / / we klaar