Arduinoga LED-i vilkumine - täielik õpetus

Proovige Meie Instrumenti Probleemide Kõrvaldamiseks





Postitus käsitleb põhjalikult Arduino koodi juurutamise põhijuhendit selle pardal oleva LED-i vilkumiseks. Andmed ehitas, testis ja kirjutas Jack Franko.



KOOD: lihtsalt sisseehitatud LED-i jaoks ARDUINO BOARDi tihvtil 13 on see vaikimisi programmeeritud vilkuma sagedusega 50 mi sekundit, kuna kirjelduses märgitakse see asmides (millisekundites).

/ * esimene Lihtne
Saade Arudinos JACKFRANKO * /



int l = 13
//where l is pin 13void setup(){ pinMode
(l,OUTPUT) }void loop() { digitalWrite
(l,HIGH) delay(50) digitalWrite
(l,LOW) delay(50)}

Märkus. Kuna uurime Arduino UNO R3 Board Programingut, kui te pole programmeerija, disainer või huvijuht, peate õpilasena alustama põhitõdedest.

Esimene asi on Arduino Uno R3 mõistmine, hankides komplekti, mis on saadaval veebipoodides.

Kirjeldus:

kuna traditsiooniliselt on meie nime saamine enne programmi algust hea IDEA, siis siin on minu esimene ülalnimetatud põhiprogramm selle tähisega / * ning nime tekst ja kõik asjad, mille vahele soovite kirjutada * / on see, mis programmi ei mõjuta ja see ei kuulu programmi, sest Arduino programmikompilaator teab, et märkide '/ *, * /' vahele jäävad asjad peavad vahele jääma, see on lihtsalt programmi pealkiri.

/ * esimene Lihtne

Programm Arudinos JACKFRANKO * / Järgmine rida int l = 13

// kus l on tihvt 13

See on programmi osa Deklaratsioon, kus me deklareerime täisarvu käsuga „int“, millele järgneb väike tähestik L, mis on võrdne 13 ja lõppeb semikooloniga, seejärel pärast topeltkriipsu „//“ ja mõningast teksti.

Siin olime andnud käsu “int”, mida tavaliselt ütleme täisarv ja väike L, mis on võrdne 13-ga, ja lõpetasime semikooloniga, ütlesime kompilaatorile, et väärtus “l” on võrdne 13-ga, mis asub tihvtis nr. kolmteist arduino pardal, siin on 'l' lihtsalt väärtus, mis on tähistatud tihvtiga nr 13, et 'l' ei ole kompilaatori funktsioon ega skript, vaid meie jaoks on muuta kood natuke sõbralikuks, et 'l' see projekt on LED-i lühend.

Ma tahan koodi veidi väiksemaks muuta ja ruumi kokku hoida. Siinkohal, kui te ei soovi seda hoida kui 'l', siis öelge, et soovite seda säilitada näiteks 'minu' jaoks, siis kogu koodis, kus kunagi on 'l', peate selle muutma 'mina' kompilaator ei tööta ja see annab teile vea.

See lause koosneb teisest osast, millele järgneb “//”, ja mõnest tekstist peame aru saama, et ükskõik millistele lausetele järgneb avamisel “//” ja neil ei olnud sulgemist, kompilaator seda lauset ei loe. See võib olla mitmes reas ilma sulgemata. Selle eesmärk on anda mõistmiseks koodis mõned viited ja märkused.

Enne koodi ülejäänud osa mõistmist peame mõistma koodi põhifunktsioone ja siin on 'tühine seadistus' ja 'tühine silmus' need kaks funktsiooni väga olulised, sest me kuulutame oma sisendit, väljundit ja mis tüüpi tööd tehtud selles. Nii et alustame tühisest seadistamisest, see on osa koodist, kus me ütleme oma sisendid ja väljundid, mis peavad meie projekti jaoks üks kord käima. Siin räägime ainult ühest väljundist vastavalt meie koodile.

Funktsioon Muu void loop on koodi teine ​​osa, mis töötab tsükli kujul. siin koosnevad mõlemad funktsioonid kõverklambrist avatud ja suletud ning siis pärast lokkisulguri avamist, hoides mõnda koodi ja lokkisulgurit. Nende sulgude kohta annan teavet järgmises programmis. siin peame keskenduma lokkisulgudele, kus nende sulgude vahel on mõni kood.

void setup(){ pinMode
(l,OUTPUT) }

Siin oleme väljundina märkinud funktsiooni, mis peab meie projekti jaoks üks kord käima. kui olete märganud, et oleme kirjutanud oma koodi lokkis sulgudesse, kus oleme deklareerinud, et pinMode l väljastatakse kõvera sulgudes ja lõpeb semikooloniga,

siin pinMode on funktsioon, mis on määratud täisarvuks l väljundina.

Seega on l määratud arduino nööpnõelale nr 13 aru saama, et nööpnõela nr 13 nimetatakse l-ks ja l on tihvt nr 13, kui paneme 13 pärast funktsiooni PinMode funktsiooni 13
väljundina arvestab see nii 13 kui ka l.

kui kustutame int l = 13, ei arvesta see tähestikku l ja see annab teile vea. Siin olime sättinud pin
nr 13, mis väljundina on tähestik l, kirjutatakse see alati suure tähega kui VÄLJUND ja funktsiooni pinmode kirjutatakse pinMode'is, alustades tühikuteta väiketähega, muu sõna Mode algab suurtähega, millest saab aru kompilaator, mis on tõstutundlik.

Järgmisena jõuame oma programmi tsüklirežiimile ja siin kirjeldame kogu funktsiooni, mis peab töötama tsüklis
piiramatult pikka aega.

void loop() { digitalWrite
(l,HIGH) delay(50) digitalWrite
(l,LOW) delay(50)}

Siin olime funktsiooniga digitalWrite arvutanud täisarvu L väärtuseks HIGH. See lause digitalWrite muudab täisarvuks l HIGH tähendab, millal PEAL see pöördub PEAL tihvt nr13 Arduino tahvlil, nagu me olime öelnud, et tihvt nr 13 on l, mis on kõvera sulgudes komaga eraldatud.
Siin, kui me ütlesime selle viivituse (50), loeb see lause aega millisekundites, kus 1000 ms on võrdne 1 sekundiga. Selles programmis tahan, et minu juhataks ühe sekundilise matemaatilise arvutuse abil 20 korda välku
andis mulle väärtuse 50, mis on sulgudes.

See tähendab, et silmuseosa all lülitab esimene rida minu LED-i, mis asub tihvtis nr 13, ja ootab 5 ms. Kui me ei andnud LED-i väljalülitamiseks täiendavat funktsiooni loopimiseks, jääb see põlema.

Kuigi me olime seda viivitust öelnud 50 ms. Nii et oleme andnud käsu LED välja lülitada
aastal digitalWrite (l, LOW) , pärast selle avalduse märkimist ei lülitu LED välja, kuna silmus on ilma see puudulik viivitus (50) kõigepealt lülitame LED-i sisse, siis ootame 50 ms, siis lülitame led välja ja siis ootame 50 ms, et täita üks silmus, mis hakkab mängima lõpmatuseni, kuni Arduino on sisse lülitatud. See lülitab teie ledi sisse ja välja nupul nr
13 20 korda sekundis.




Eelmine: SPDT tahkis-alalisvoolu relee ahel, kasutades MOSFET-i Järgmine: Inkubaatori tagasikäigu mootori kontrolleri vooluring