DIY miniatyr termometer (10 / 11 steg)

Steg 10: Hur fungerar koden?

EXEMPEL TEMPERATUR ÄR 63

Det första som måste ske är att vi måste få temperatur in i två separata siffror. Detta är faktiskt enklare än du kanske tror.

digit10s = int(temp / 10);
digit1s = int (temp - (digit10s * 10));
Med detta kan vi separera de två siffrorna. Kan ta itu med först. digit10s är lika med temperaturen divideras med 10. Våra exempel temp är 63, så 63 / 10 = 6. Nu är digit10s lika med 6.

Nu för 1s siffra. digit1s är lika med temp - digit10s * 10. Så om våra temp var 63, vi subtrahera (digit10s * 10 = 60) från temp som ger oss 3.

digit10s var 6, då vi multiplicerat med det 10, vilket ger oss 60, då vi subtrahera 60 från temp (63). Det ger oss sedan 3. Vi satt sedan digit1s = 3.

Och det är hur siffrorna bryts ner!

Vår nästa bit kod är bara lite mer komplicerat.

Detta är vår huvudsakliga block av kod eftersom det är det som gör lysdioderna flash temperaturen.

medan (digit10s! = 0) //do ett tag loop medan digit10s inte är lika med 0
{
analogWrite (LED10, 75);
Delay(Time);
analogWrite (LED10, 0);
Delay(Time);
digit10s--; minska digit10s med 1
} / / end av while uttalande

Delay(1000);

Det första att lägga märke till är att vi har ett tag loop och vad detta innebär är att så länge villkoret är uppfyllt, koden kommer att köras om och om igen.

Nu vilket skick?

medan (digit10s! = 0) *** Detta säger köra blocket nedan så länge digit10s inte är lika med 0.

Låt oss titta in i digit10s. Digit10s är den 10-talet siffran från temperaturen. Vi dök temperatur av 10 att ge oss den 10-talet siffran. Så att säga är det 63 grader utanför. Den 10-talet siffran (digit10s) är lika med 6.

Hur detta blinkar lysdioderna rätt mängd gånger? Tja, det säger, "digit10s är inte lika 0, (kom ihåg, det är lika med 6 nu) så kör blocket nedan. Första är det vänder LED på under 1 sekund sedan stängs den av. Sedan kommer vi till detta

digit10s--; Här använder vi den "--" drift och vad som gör är det tar bort 1 från variabeln varje gång det skickas. Så det betyder att om digit10s var lika med 6, är det nu lika med 5. Nu är 5 fortfarande inte lika med 0, så vi kör blocket igen. Kör blocket igen tänds lysdioden och släcks en gång och sedan kommer vi också till digit10s--; igen. Att minska digit10s av en igen så nu digit10s är lika med 4. Detta block är köra 6 gånger (som blinkar LED 6 gånger). Varför 6? Eftersom digit10s var lika med 6, minns? Nu, om vi kör digit10s--; 6 gånger, subtraherar som 6 från digit10s. Som lämnar digit10s lika med 0.

Men vad stoppar blocket efter det har gått igenom 6 gånger? Bra om vi ser tillbaka kommer vi se operationen som testas.

medan (digit10s! = 0) / / digit10s är inte lika med 0, köra koden nedan om och om igen.

Det säger köra blocket om och om igen medan digit10s inte är lika med noll. Men nu digit10s är lika med 0! Så att blockera stoppas och Arduino flyttas till nästa block av kod.

Se Steg
Relaterade Ämnen

DIY miniatyr Dollhouse sovrum

https://www.youtube.com/watch?v=n2tlSFeXylgDIY miniatyr dollhouse sovrum kit...

DIY miniatyr Batsignal

Hej killar och Välkommen till min DIY miniatyr bat-signal instructable, för när man ska ringa batman när du behöver hjälp! Eller du kan bara använda det för dekoration: pOch ledsen för min engelska om du inte förstår vissa delar, engelska är inte mit...

DIY miniatyr trädgården

Jag älskar miniatyrer! Jag har alltid haft en plan för att göra en miniatyr trädgård och kunde inte vänta längre. I detta instructable jag kommer att visa dig hur man gör en söt mini trädgård i några enkla steg. Detta kan vara ett roligt projekt för...

DIY miniatyr Castle

Miniatyrer är söta och roliga att göra. Det finns många tutorials för miniatyr hus och castle byggnad, men jag trodde jag kunde göra det lite enklare, särskilt för barn. Jag har gjort detta miniatyr slott av brunt papper och jag har försökt att fören...

$2 DIY kompost termometer bygga

Här är några grundläggande instruktioner om hur man bygger en $2 kompost termometer med hjälp av lättillgängliga leveranser. Det ser skit (i en bra rustika slags sätt), men fungerar bra och använder några material.Du behöver verkligen inte läsa detta...

(Del 1) DIY miniatyr skolan levererar: Pennor, sammansättning bärbara datorer, läroböcker och mycket mer!

Hej! Jag vet att jag inte har gjort en instructable på ett tag, så jag tänkte jag skulle göra en på miniatyr skolmaterial! Jag kommer att visa dig hur man gör:-Pennor-Sammansättning bärbara datorer-Matematik läroböcker-Mjuka och hårda cover läsa böck...

DIY Arduino termometer med DS18B20

Hej, alla! Idag ska jag visa dig hur man gör LCD eller följetong * termometer med DS18B20 digitaltemperature sensor använder Arduino, skärbräda, byglar. Så kan du mäta temperaturen i luft, som vätskor vatten och temperaturen i marken.* skriver ut tem...

DIY miniatyr vatten Dispenser

DIY mini vatten kylare / vatten dispenserhttps://www.youtube.com/watch?v=OD72lw7CEMQ...

DIY Digital termometer

detta instructable visar dig hur man gör en termometer som visar temperaturen i luften.Det är inte den mest exakta termometern i världen, men för detta pris och det faktum att det var hemlagad...Steg 1: delarDu behöver:1 x ATMega82 x 7 segment displa...

DIY miniatyr Uhu lim

https://www.youtube.com/watch?v=ym5tCIWCgFk...

DIY miniatyr glass

https://www.youtube.com/watch?v=-duNkFlx33k...

DIY miniatyr båge och pilar

detta var ett kul litet projekt jag gjorde ett par månader sedan och det fungerar ganska bra så jag tänkte jag skulle dela det. Detta är en uppdaterad starkare version av min gamla nu men med samma skälva. Detta är min första instructable så snälla g...

DIY miniatyr Lollipops

https://www.youtube.com/watch?v=56t5YI-yQ8Q...

DIY miniatyr Bed

https://www.youtube.com/watch?v=BJ9ZyrTk4Q4...

DIY miniatyr Sushi

https://www.youtube.com/watch?v=cMiKDyFJj90...

DIY miniatyr dockhus i en plåtask

https://www.youtube.com/watch?v=RY7Z554IiqI...

DIY miniatyr Tv

https://www.youtube.com/watch?v=TGbKHtLu8qk...

DIY miniatyr skåp

https://www.youtube.com/watch?v=HhoAnnrj7Vg...

DIY miniatyr penna fall

https://www.youtube.com/watch?v=bgCa7sLTGDU...