Utomhus LED termometer (11 / 11 steg)

Steg 11: Koden

#include < OneWire.h >

Data kabeln är ansluten till stift 3 på Arduino
int DS18S20_Pin = 3; DS18S20 Signal stift på digital 2

Setup en oneWire instans att kommunicera med någon OneWire enheter
OneWire ds(DS18S20_Pin);

int digit1;
int digit2;
int digit3;
int x;
int num;
int start;
int kostnadstäckninggrad = 0; ARDUINO stift inte Atmega
int oneB = 1;
int oneC = 2;
int oneD = 4;
int oneE = 5;
int oneF = 6;
int oneG = 7.
int twoA = 8;
int twoB = 9;
int twoC = 10;
int twoD = 11;
int twoE = 12;
int twoF = 13.
int twoG = A0;
int threeA = A1;
int threeB = A2;

void setup(void)
{

pinMode (kostnadstäckninggrad, produktionen); //digit1
pinMode(oneB,OUTPUT);
pinMode(oneC,OUTPUT);
pinMode(oneD,OUTPUT);
pinMode(oneE,OUTPUT);
pinMode(oneF,OUTPUT);
pinMode(oneG,OUTPUT);

pinMode (twoA, produktionen); //digit2
pinMode(twoB,OUTPUT);
pinMode(twoC,OUTPUT);
pinMode(twoD,OUTPUT);
pinMode(twoE,OUTPUT);
pinMode(twoF,OUTPUT);
pinMode(twoG,OUTPUT);

pinMode (threeA, produktionen); //digit3
pinMode(threeB,OUTPUT);

}

void loop(void)
{

flyta temperatur = getTemp();
flyta tempf = (((temperature*(9))/5)+32);
NUM = (int) tempf;

om (x > = 0)

{

NUM = (int) tempf;
x = 0;
NUM = tempf;
digit1 = num % 10.
NUM = num/10;
digit2 = num % 10.
NUM = num/10;
digit3 = num % 10.
NUM = num/10;
}

Switch(digit1) {
fall 0:
digitalWrite(oneA,HIGH);
digitalWrite(oneB,HIGH);
digitalWrite(oneC,HIGH);
digitalWrite(oneD,HIGH);
digitalWrite(oneE,HIGH);
digitalWrite(oneF,HIGH);
digitalWrite(oneG,LOW);
bryta;

fall 1:

digitalWrite(oneA,LOW);
digitalWrite(oneB,HIGH);
digitalWrite(oneC,HIGH);
digitalWrite(oneD,LOW);
digitalWrite(oneE,LOW);
digitalWrite(oneF,LOW);
digitalWrite(oneG,LOW);
bryta;

fall 2:

digitalWrite(oneA,HIGH);
digitalWrite(oneB,HIGH);
digitalWrite(oneC,LOW);
digitalWrite(oneD,HIGH);
digitalWrite(oneE,HIGH);
digitalWrite(oneF,LOW);
digitalWrite(oneG,HIGH);
bryta;

fall 3:

digitalWrite(oneA,HIGH);
digitalWrite(oneB,HIGH);
digitalWrite(oneC,HIGH);
digitalWrite(oneD,HIGH);
digitalWrite(oneE,LOW);
digitalWrite(oneF,LOW);
digitalWrite(oneG,HIGH);
bryta;

fall 4:

digitalWrite(oneA,LOW);
digitalWrite(oneB,HIGH);
digitalWrite(oneC,HIGH);
digitalWrite(oneD,LOW);
digitalWrite(oneE,LOW);
digitalWrite(oneF,HIGH);
digitalWrite(oneG,HIGH);
bryta;

fall 5:

digitalWrite(oneA,HIGH);
digitalWrite(oneB,LOW);
digitalWrite(oneC,HIGH);
digitalWrite(oneD,HIGH);
digitalWrite(oneE,LOW);
digitalWrite(oneF,HIGH);
digitalWrite(oneG,HIGH);
bryta;

fall 6:

digitalWrite(oneA,HIGH);
digitalWrite(oneB,LOW);
digitalWrite(oneC,HIGH);
digitalWrite(oneD,HIGH);
digitalWrite(oneE,HIGH);
digitalWrite(oneF,HIGH);
digitalWrite(oneG,HIGH);
bryta;

fall 7:

digitalWrite(oneA,HIGH);
digitalWrite(oneB,HIGH);
digitalWrite(oneC,HIGH);
digitalWrite(oneD,LOW);
digitalWrite(oneE,LOW);
digitalWrite(oneF,LOW);
digitalWrite(oneG,LOW);
bryta;

mål 8:

digitalWrite(oneA,HIGH);
digitalWrite(oneB,HIGH);
digitalWrite(oneC,HIGH);
digitalWrite(oneD,HIGH);
digitalWrite(oneE,HIGH);
digitalWrite(oneF,HIGH);
digitalWrite(oneG,HIGH);
bryta;

mål 9:

digitalWrite(oneA,HIGH);
digitalWrite(oneB,HIGH);
digitalWrite(oneC,HIGH);
digitalWrite(oneD,LOW);
digitalWrite(oneE,LOW);
digitalWrite(oneF,HIGH);
digitalWrite(oneG,HIGH);
bryta;

}

Switch(digit2) {
fall 0:
digitalWrite(twoA,HIGH);
digitalWrite(twoB,HIGH);
digitalWrite(twoC,HIGH);
digitalWrite(twoD,HIGH);
digitalWrite(twoE,HIGH);
digitalWrite(twoF,HIGH);
digitalWrite(twoG,LOW);
bryta;

fall 1:

digitalWrite(twoA,LOW);
digitalWrite(twoB,HIGH);
digitalWrite(twoC,HIGH);
digitalWrite(twoD,LOW);
digitalWrite(twoE,LOW);
digitalWrite(twoF,LOW);
digitalWrite(twoG,LOW);
bryta;

fall 2:

digitalWrite(twoA,HIGH);
digitalWrite(twoB,HIGH);
digitalWrite(twoC,LOW);
digitalWrite(twoD,HIGH);
digitalWrite(twoE,HIGH);
digitalWrite(twoF,LOW);
digitalWrite(twoG,HIGH);
bryta;

fall 3:

digitalWrite(twoA,HIGH);
digitalWrite(twoB,HIGH);
digitalWrite(twoC,HIGH);
digitalWrite(twoD,HIGH);
digitalWrite(twoE,LOW);
digitalWrite(twoF,LOW);
digitalWrite(twoG,HIGH);
bryta;

fall 4:

digitalWrite(twoA,LOW);
digitalWrite(twoB,HIGH);
digitalWrite(twoC,HIGH);
digitalWrite(twoD,LOW);
digitalWrite(twoE,LOW);
digitalWrite(twoF,HIGH);
digitalWrite(twoG,HIGH);
bryta;

fall 5:

digitalWrite(twoA,HIGH);
digitalWrite(twoB,LOW);
digitalWrite(twoC,HIGH);
digitalWrite(twoD,HIGH);
digitalWrite(twoE,LOW);
digitalWrite(twoF,HIGH);
digitalWrite(twoG,HIGH);
bryta;

fall 6:

digitalWrite(twoA,HIGH);
digitalWrite(twoB,LOW);
digitalWrite(twoC,HIGH);
digitalWrite(twoD,HIGH);
digitalWrite(twoE,HIGH);
digitalWrite(twoF,HIGH);
digitalWrite(twoG,HIGH);
bryta;

fall 7:

digitalWrite(twoA,HIGH);
digitalWrite(twoB,HIGH);
digitalWrite(twoC,HIGH);
digitalWrite(twoD,LOW);
digitalWrite(twoE,LOW);
digitalWrite(twoF,LOW);
digitalWrite(twoG,LOW);
bryta;

mål 8:

digitalWrite(twoA,HIGH);
digitalWrite(twoB,HIGH);
digitalWrite(twoC,HIGH);
digitalWrite(twoD,HIGH);
digitalWrite(twoE,HIGH);
digitalWrite(twoF,HIGH);
digitalWrite(twoG,HIGH);
bryta;

mål 9:

digitalWrite(twoA,HIGH);
digitalWrite(twoB,HIGH);
digitalWrite(twoC,HIGH);
digitalWrite(twoD,LOW);
digitalWrite(twoE,LOW);
digitalWrite(twoF,HIGH);
digitalWrite(twoG,HIGH);
bryta;

}

IF(digit3 == 1) {
digitalWrite(threeA,HIGH);
digitalWrite(threeB,HIGH);
}
annat {
digitalWrite(threeA,LOW);
digitalWrite(threeB,LOW);
}

}

flyta getTemp() {//Code och framåt är från Bildr.org
Returnerar temperaturen från en DS18S20 i grader Celsius

byte data [12].
byte addr [8].

om (! ds.search(addr)) {
Inga fler sensorer på kedja, Återställ sökning
DS.reset_search();
återvända-1000;
}

om (OneWire::crc8 (addr, 7)! = addr[7]) {
Serial.Print ("CRC är inte giltig! \n");
återvända-1000;
}

om (addr [0]! = 0x10 & & addr [0]! = 0x28) {
Serial.Print ("enhet identifieras inte");
återvända-1000;
}

DS.Reset();
DS.Select(addr);
DS.write(0x44,1); Starta konvertering, med parasit driver på i slutet

byte närvarande = ds.reset();
DS.Select(addr);
DS.write(0xBE); Läs Scratchpad

för (int jag = 0; jag < 9; i ++) {/ / vi behöver 9 byte
data [i] = ds.read();
}

DS.reset_search();

byte MSB = data [1].
byte LSB = data [0];

flyta tempRead = ((MSB << 8) | LSB); med hjälp av två komplimang
flyta TemperatureSum = tempRead / 16;

återvända TemperatureSum;

}

Se Steg
Relaterade Ämnen

Kina berömda brand utomhus LED-skärm

Utomhus LED-DisplayPASSION LED är en utomhus LED-skärm professionell tillverkare, våra nuvarande utomhus LED-displayen inkluderar: super tunna utomhus LED-display, curvedLED display, mjuk LED-display, framsidan underhåll LED display, stadium perimete...

Utomhus LED-skärm - P16

PASSION utomhus fyrfärg LED-skärm P16 är mycket populär för utomhusreklam display. Vi antar den avancerade tekniken och tillförlitliga material, utomhus displayen är mot erosion, vattentät, mot strålning, kan användas under direkt solsken. Video disp...

8 saker du kan göra för att bättre skydda din utomhus LED-lampor

Utomhus LED-lampor är mycket användbart tillägg till din gräsmatta ellerträdgård, men de behöver lite hjälp om du vill göra dem mer än några månader. Här är några fiffiga tips som hjälper dig att göra just det:Steg 1: 1. Välj utomhus-fått lampor, arm...

LDR utomhus LED Light controller under 450INR

Dess ljus beroende utomhus ljus aktiveringen med integrerad OFF timer körs på 8-pin AVR tiny13.Det billiga interna oreglerad SMPS DC kraftkälla används. i mitt fall med ingen belastning DC källa kommer högt upp till 44V ~ 50V och med LED på dess runt...

Väder resistenta utomhus LED-lampor

Dessa utomhus ljus har ett rostfritt stål, aluminium cap, polykarbonatlins och o-ring packningar för väder och korrosionsskydd. Jag använde högeffekts lysdioder, som kan vara lite dyrt, men de är energieffektiva, senast för evigt, och enkelt dim-kan....

Ta bort solcell från utomhus LED lampa

jag ville ta reda på hur du tar bort och solcell från en av de $4 utomhus sollampor som du bara hålla sig i marken. Jag kunde inte hitta något på nätet så jag tog den påmig att lista ut. Det var ganska rakt framåt men tänkte jag skulle lägga mina slu...

Arduino - Analog LED termometer

jag trodde först detta projekt kan vara alltför grundläggande att dela på Instructables, men jag har sedan dess insett det finns utrymme för lärande på alla utbildningsnivåer. Jag hoppas du njuta av den.Efter att läsa många böcker och experimenterar...

Eftermontering en utomhus LED night light till en fågelbordet

genom att ta isär alla solar LED kan du montera hela kit inuti någon utomhus fågelfeeder, hus, etc.?Detta exempel var min riktiga första försök. Jag kunde få allt monterat perfekt medanockså hålla det allt torrt och dolda. Jag använde även den bästa...

Enkel Led termometer

Detta är en mycket snabb och lätt Arduino projekt, bra för nybörjare! Detta instructable visar dig hur man gör en enkel visuell termometer med hjälp av flera lysdioder och en temperaturgivare, ansluten till en Arduino. Du behöverskärbräda X1Arduino U...

Utomhus LED-lampor

Många år sedan, installerade jag en sträng av åtta färgade lampor utanför mitt hus. Detta var innan CFL och LED lampor fanns tillgängliga. Även om dessa lampor fungerade perfekt, var det en nackdel. Eftersom dessa lampor var utsatta för väder och vin...

Arduino LED termometer

Detta är mitt första projekt med en Arduino Uno samt lägga ut den på Instructables. Jag kommer att göra mitt bästa för att göra detta instructable som tydlig och och till punkten som möjligt.Jag ville ta ett hushåll objekt och lägga till en temperatu...

Med en enda RGB LED (eller en LED strip) för att visa information: klocka, termometer och en konstig kommunikatör

En av de första projekten som jag gjorde med en Arduino var en jul ljus krans. I själva verket var det tillverkade av en enkel RGB LED strip skär i två, som Arduino har endast 6 hårdvara PWM utgångar. Jag ville inte det att Visa trivial regnbågar och...

LED utomhus paraply belysning

Intro:Mitt mål var att ha utomhusbelysning och också skydd från sommarsolen.Där kunde vi njuta av semester, parterna och grillar.Jag har ett konkret område som är 6 meter lång vid 4 meter bred.Just nu råd jag inte att bygga en uteplats under en beton...

BloodBowl vända Counter använder 7-segment LED

detta projekt var för en BloodBowl spelet slå disken med sex Charlieplexed 7-segment led.Steg 1: koncept En vän till mig bad mig om idéer för att bygga Bloodbowl tur counter för hans brädspel. Visste inte vad det var och vad han ville ha, det tog en...

RGB termometer

Hej stötarna,Detta är min första instructable så vänligen inte vara för hård.Jag skapade denna termometer som ska användas i mitt college studentrum. Jag hade en luftkonditioneringen/värmare som litade helt enkelt på en ratt som liknar den i bilar (e...

Hyra LED-skärm-P10

orienterade befruktningen av lätta, mindre-ockupationen, clear-visning, tjockleken på varje skåp är anpassad till 6,5 cm, FLAKE™ serien är super tunna och lätta LED bildskärm speciellt utformad för uthyrning eller mobilt bruk, som både bakgrund progr...

Super tunn LED-skärm

orienterade befruktningen av lätta, mindre-ockupationen, clear-visning, tjockleken på varje skåp är anpassad till 6,5 cm, FLAKE™ serien är super tunna och lätta LED bildskärm speciellt utformad för uthyrning eller mobilt bruk, som både bakgrund progr...

Flexibel LED-skärm, flexibel LED gardin skärmen med smal kropp, låg vikt för rörlig scen, vision utställning och DJ belysning (www.ledaliveshow.com

P6 vikbar LED-skärm med mobile design är en ny uppfinning som bryter igenom olika flaskhalsen jämfört med traditionella LED display, det förtjänar det uppfinning patent och Utility modell patent internationellt.P6 vikbar LED skärmar är sammansatt av...

LEDaliveshow.com ger flexibel led skärm med mobila och portabla display design

P6 flexibla LED-skärm med mobile design är en ny uppfinning som bryter igenom olika flaskhalsen jämfört med traditionella LED display, det förtjänar det uppfinning patent och Utility modell patent internationellt.6mm pitch LED flex skärmar är sammans...