LED-valon vilkkuminen Arduinolla - täydellinen opetusohjelma

Kokeile Instrumenttia Ongelmien Poistamiseksi





Viestissä käsitellään kattavasti Arduino-koodin perusopastusohjetta sisäisen LED-merkkivalon vilkkumiseksi. Tiedot rakensi, testasi ja kirjoitti Jack Franko.



KOODI: yksinkertaisesti sisäänrakennetulle LEDille ARDUINO BOARDin tapissa 13 oletuksena on ohjelmoitu vilkkumaan usein 50 millisekunnilla, koska kuvauksessa se ilmoitetaan asmsina (millisekunteina).

/ * ensimmäinen yksinkertainen
Ohjelma Arudinolla 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)}

Huomaa: Koska tutkimme Arduino UNO R3 Board Programing -ohjelmaa, jos et ole ohjelmoija, suunnittelija tai harrastaja, opiskelijana sinun on aloitettava perusasiat.

Ensimmäinen asia on ymmärtää Arduino Uno R3 hankkimalla sarja, joka on saatavana verkkokaupoista.

Kuvaus :

Perinteisesti nimemme saaminen ennen ohjelman alkamista on hyvä IDEA, tässä on ensimmäinen yllä mainittu perusohjelma, joka on alkanut tällä merkillä / * ja nimitekstillä ja kaikilla tavoilla, jotka haluat kirjoittaa sen väliin * / is, joka ei vaikuta ohjelmaan eikä se ole osa ohjelmaa, koska Arduino-ohjelmakääntäjä tietää, että ”/ *, * /“ -merkin välisen tavaran täytyy ohittaa, se on vain ohjelman otsikko.

/ * ensimmäinen yksinkertainen

Ohjelma Arudinolla JACKFRANKO * / Seuraava rivi int l = 13

// missä l on tappi 13

Se on julistuksen osa ohjelmaa, jossa aiotaan ilmoittaa kokonaisluku komennolla 'int', jota seuraa pieni aakkoset L, joka on yhtä suuri kuin 13 ja päättyy puolipisteeseen, sitten kaksoisviivan '//' ja jonkin verran tekstiä.

Täällä olimme antaneet komennon “int”, jonka sanomme yleensä kokonaisluvun ja pienen L: n olevan yhtä suuri kuin 13, ja päädyimme puolipisteeseen tässä sanoimme kääntäjälle, että arvo “l” on yhtä suuri kuin 13, joka sijaitsee tappiossa. kolmetoista arduino-levyllä, tässä 'l' on vain arvo, joka on merkitty nastalle nro 13, että 'l' ei ole kääntäjän funktio tai komentosarja, meidän on tehtävä koodi hieman ystävälliseksi, että 'l' tämä projekti on lyhenne sanoista LED.

Haluan tehdä koodista hieman pienemmän ja säästää tilaa. Tässä vaiheessa, jos et halua pitää sitä nimellä 'l', sano sitten, että haluat säilyttää sen 'minua' varten, sitten koko koodissa, jossa koskaan on 'l', sinun on muutettava se 'minä' muuten kääntäjä ei toimi ja se antaa sinulle virheen.

Tämä lause koostuu toisesta osasta, jota seuraa '//', ja joitain tässä olevia tekstejä. Meidän on ymmärrettävä, että mitä tahansa lauseita seuraa '//' avaamisen yhteydessä, eikä niitä ole suljettu, kääntäjä ei lue kyseistä lausetta. Se voi olla useita rivejä sulkematta. Tämän tarkoituksena on antaa meille viitteitä ja huomautuksia koodissa ymmärtämistä varten.

Ennen kuin ymmärrämme koodin loppuosan, meidän on ymmärrettävä koodin perustoiminnot, jotka ovat ”void setup” ja “void loop”, nämä kaksi toimintoa ovat erittäin tärkeitä, koska aiomme ilmoittaa INPUT, OUTPUT ja millainen työ tekemässä siinä. Joten aloitetaan tyhjällä asetuksella, tämä on osa koodia, jossa aiomme ilmoittaa INPUTS & LÄHTÖT, jotka on suoritettava kerran projektissamme. Tässä puhumme vain yhdestä lähdöstä koodin mukaan.

Other function void -silmukka on koodin toinen osa, joka aiotaan suorittaa silmukan muodossa. tässä nämä molemmat toiminnot koostuvat käyrän kannattimesta auki ja kiinni ja sitten kiharaisen kannattimen avautumisen jälkeen pitämällä koodia ja kiharaa sulkeessa. Annan tietoja näistä haarukoista seuraavassa ohjelmassa. tässä meidän on keskityttävä kiharisiin sulkeisiin, joissa näiden sulkujen välissä on jonkin verran koodia.

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

Tässä olemme ilmoittaneet toiminnon, joka on suoritettava projektissamme kerran ja joka on tuotoksemme. jos olet huomannut, että olemme kirjoittaneet koodimme kiharissa sulkeissa, joissa olemme ilmoittaneet, että pinMode l tuotetaan käyräsulkeissa ja päättyy puolipisteeseen,

tässä pinMode on funktio, joka on nimetty kokonaisluvuksi l OUTPUT.

Siksi l on nimetty nastaksi nro 13 arduino-kääntäjässä ymmärtämään, että nasta nro 13 kutsutaan l: ksi ja l on nasta nro 13, jos laitamme 13 l: n paikkaan PinMode-toiminnon jälkeen
tuotoksena se ottaa huomioon sekä 13 että l.

Jos poistamme int l = 13, se ei tarkoita aakkosia l ja antaa sinulle virheen. Täällä meillä oli asetettu tappi
ei 13, joka on aakkoset l tuotoksena, se kirjoitetaan aina isoilla kirjaimilla OUTPUT-funktioksi ja funktion pinmode kirjoitetaan pinMode-muodossa pienellä kirjaimella ilman välilyöntiä, muu sanatila alkaa isoilla kirjaimilla, jonka kääntäjä ymmärtää, mikä on kirjainkoon mukainen.

Seuraavaksi tulemme ohjelmamme silmukkatilaan, jossa ilmoitamme kaikki toiminnot, jotka on suoritettava silmukassa
rajoittamattomaksi ajaksi.

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

Täällä olimme ilmoittaneet kokonaisluvun l arvoksi HIGH funktiolla digitalWrite. Tämä lause digitalWrite tekee kokonaisluvusta l HIGH tarkoittaa milloin PÄÄLLÄ se kääntyy PÄÄLLÄ nasta no13 Arduino-levyllä, kuten olimme sanoneet, tappi nro 13 on l, joka on erotettu pilkulla käyrän suluissa.
Täällä sanottuamme viiveen (50) tämä lause laskee ajan ms (millisekunnissa), missä 1000 ms on yhtä suuri kuin 1 sekunti. Tässä ohjelmassa haluan johtamani vilkkumaan 20 kertaa yhdessä sekunnissa matemaattisessa laskelmassa
antoi minulle arvon 50, joka on sulkeissa.

Tämä tarkoittaa, että silmukan alla ensimmäinen rivi sytyttää LEDin, joka sijaitsee tapissa nro 13, ja odottaa 5 ms. Jos emme antaneet lisätoimintoa silmukalle LEDin sammuttamiseksi, se pysyy päällä.

Vaikka olimme sanoneet, että viive 50 ms. Joten olemme antaneet komennon sammuttaa LED
sisään digitalWrite (l, LOW) , tämän lausunnon ilmoittamisen jälkeen LED ei sammu, koska silmukka on epätäydellinen ilman viive (50) ensin kytketään LED päälle, sitten odotetaan 50 ms, sitten sammutetaan led ja sitten odotetaan 50 ms loppuun yksi silmukka, joka tulee toistamaan loputtomasti niin kauan kuin Arduino saa virtaa. Se kytkee ledin päälle ja pois päältä nastassa nro
13 20 kertaa sekunnissa.




Edellinen: SPDT Solid State DC Relay Circuit using MOSFET Seuraava: Inkubaattorin taaksepäin suuntautuvan moottorin ohjainpiiri