Skelbimas

arduino plokštėPaskutinį kartą aš tave palikau įsirengęs Darbo su „Arduino“ pradiniu rinkiniu pradžia - tvarkyklių diegimas ir plokštės bei prievado nustatymasTaigi, jūs nusipirkote sau „Arduino“ pradinį rinkinį ir galbūt kai kuriuos kitus atsitiktinius įdomius komponentus - o kas dabar? Kaip iš tikrųjų pradedate programuoti šį „Arduino“ dalyką? Kaip jūs jį nustatote ... Skaityti daugiau savo „Arduino“, kad galėtumėte dirbti su „Mac“ ar „Windows“, ir įkėlę paprastą bandomąją programą, kuri mirksi įmontuotame šviesos diode. Šiandien paaiškinsiu jūsų įkeltą kodą, „Arduino“ programinės įrangos struktūrą ir šiek tiek daugiau apie elektroninius bitus pačioje plokštėje.

Šis straipsnis yra „Arduino“ serijos įvado dalis. Kiti kol kas šios serijos straipsniai yra:

  • Kas yra Arduino ir ką su juo galite padaryti? Kas yra Arduino ir ką su juo galite padaryti?„Arduino“ yra puikus mažas elektronikos prietaisas, tačiau jei niekada jo dar nenaudojote, tik kokie jie yra ir ką su vienu galite padaryti? Skaityti daugiau ?
  • instagram viewer
  • Kas yra „Arduino“ pradinis rinkinys ir ką jame yra? Kas yra „Arduino“ pradiniame rinkinyje? [„MakeUseOf“ paaiškina]Aš anksčiau pristačiau „Arduino“ atvirojo kodo aparatinę įrangą čia, „MakeUseOf“, bet norint sukurti ką nors iš jūsų ir pradėti, jums reikia ne tik tikrojo „Arduino“. Arduino „pradiniai rinkiniai“ yra ... Skaityti daugiau
  • Daugiau puikių komponentų, kuriuos galite įsigyti kartu su savo pradiniu rinkiniu Dar 8 puikūs komponentai jūsų „Arduino“ projektamsTaigi, jūs galvojate apie „Arduino“ starterio komplekto įsigijimą, tačiau įdomu, ar pakaks keleto pagrindinių šviesos diodų ir rezistorių, kad jus užimtumėte savaitgalį? Tikriausiai ne. Čia yra dar 8 ... Skaityti daugiau
  • Darbo su „Arduino“ pradiniu rinkiniu pradžia - tvarkyklių diegimas ir plokštės bei prievado nustatymas Darbo su „Arduino“ pradiniu rinkiniu pradžia - tvarkyklių diegimas ir plokštės bei prievado nustatymasTaigi, jūs nusipirkote sau „Arduino“ pradinį rinkinį ir galbūt kai kuriuos kitus atsitiktinius įdomius komponentus - o kas dabar? Kaip iš tikrųjų pradedate programuoti šį „Arduino“ dalyką? Kaip jūs jį nustatote ... Skaityti daugiau

Aparatūra

Pažvelkime atidžiau į tai, ką „Arduino Uno“ turi bitais ant plokštės.

Čia yra išskleista diagrama, kurioje nurodomi:

arduino plokštė
  • Viršuje yra 14 skaitmeninių įvesties / išvesties kaiščių (sunumeruoti 0–13). Tai yra patys universaliausi kaiščiai ant jūsų „Arduino“ ir gali veikti kaip įvestis ar išvestis ir sudarys jūsų projektų pagrindą. Skaitmeninis reiškia, kad signalas, kurį šie kaiščiai gali rašyti ar skaityti, bus įjungtas arba išjungtas.
  • 6 iš tų skaitmeninių kaiščių, kurie pažymėti tilde ženklu ~ geba daryti tai, kas vadinama Impulsų pločio moduliavimas. Aš nesu elektros inžinierius, todėl nesigėdysiu aiškindamas mokslą, tačiau tau ir man Tai reiškia, kad galime pateikti įvairius išvesties lygius, pavyzdžiui, pritemdyti šviesos diodą ar variklį varikliuoti greičiu.
  • 13 kaištis yra ypatingas tuo, kad jame yra įmontuotas šviesos diodas. Tai tikrai patogumo ir tikrinimo tikslais. Jūs galite naudoti tą borto šviesos diodą, kaip tai darėte „Blink“ pavyzdžio programoje, tiesiog išvesdami į 13 kaištį - arba jis gali būti naudojamas kaip standartinis įvesties / išvesties kaištis.
  • Dešinėje apačioje yra 6 analoginiai įvesties kaiščiai. Jie nuskaitys analoginių jutiklių, tokių kaip šviesos matuoklis ar kintamasis rezistorius, vertę.
  • Apatiniame kairiajame kampe šalia analoginių įvesties kaiščių yra maitinimo kaiščiai. Vieninteliai, dėl kurių tikrai reikia nerimauti, yra antžeminiai kaiščiai (GND), 3,3 V ir 5 V maitinimo linijos.
  • Galiausiai vienintelis „Arduino“ rastas jungiklis yra atstatymo jungiklis. Tai paleis bet kurią programą, kurią ji turi savo atmintyje.
  • „Arduino“ turi nustatytą atminties kiekį, o jei jūsų programa per didelė, kompiliatorius pateiks klaidą.

Arduino programos struktūra

Kiekvieną „Arduino“ programą sudaro bent dvi funkcijos (jei nežinote, kas yra funkcija, būtinai perskaitykite mano pagrindinis programavimo vadovėlis, 2 dalis - funkcijos ir valdymo teiginiai Absoliutūs programavimo pagrindai pradedantiesiems (2 dalis)Absoliučio pradedančiųjų programavimo vadovo 2 dalyje aprašysiu funkcijų pagrindus, grąžinimo reikšmes, kilpas ir sąlygas. Prieš pradėdami spręsti šią problemą, būtinai perskaitykite 1 dalį, kur paaiškinau ... Skaityti daugiau ir 1 dalis, kurioje aptarėme kintamuosius Kompiuterio programavimo pagrindai 101 - kintamieji ir duomenų tipaiPrieš tai supažindinome ir šiek tiek papasakojome apie objektų programavimą, kur ir koks jo vardas kilęs, maniau, kad laikas pereiti absoliučius programavimo pagrindus, nesusijusius su kalba būdas. Šiame ... Skaityti daugiau prieš tęsiant).

Pirmasis yra sąrankos funkcija. Tai paleidžiama iš pradžių - tik vieną kartą - ir naudojama pasakyti Arduino, kas yra prijungta ir kur, bei inicijuoti visus kintamuosius, kurių jums gali prireikti jūsų programoje.

Antra yra kilpa. Tai yra kiekvienos Arduino programos esmė. Kai „Arduino“ veikia, atlikus sąrankos funkciją, kilpa eis per visas kodą, tada atlikite visą veiksmą dar kartą - kol arba dingsta energija, arba nebus atkuriamas jungiklis prispaustas. Laikas, kurio reikia užpildyti vieną pilną kilpą, priklauso nuo pateikto kodo. Galite parašyti kodą, kuris sako „palaukite 6 valandas“. Tokiu atveju kilpa nebus kartojama labai dažnai.

Čia pateikiama greita būsenos schema, iliustruojanti:

arduino plokštė

„Blink“ programos tyrimas

Pažvelkite į programos „Blink“ kodą ir nustatykite sąrankos ir ciklo funkcijas.

Štai sąranka:

negaliojanti sąranka () { // Inicializuokite skaitmeninį kaištį kaip išėjimą. // 13 kaištyje yra šviesos diodas, prijungtas prie daugumos „Arduino“ plokščių: pinMode (13, OUTPUT); }

Eilutės, prasidedančios raide // tai tiesiog komentarai, paaiškinantys kodą žmogaus skaitytojui, ir jie neįkeliami į Arduino. Taigi iš tikrųjų šioje konkrečioje „Arduino“ programoje yra tik viena sąrankos kodo eilutė. Ta eilutė sako: „Nustatykite 13 kaištį į išvesties režimą“. 13, atsiminkite, yra įmontuotas šviesos diodas.

Tada yra kilpa:

tuščia kilpa () { „digitalWrite“ (13, AUKŠTAS); // įjunkite šviesos diodą. vėlavimas (1000); // palauk sekundę. „digitalWrite“ (13, LOW); // išjungti šviesos diodą. vėlavimas (1000); // palauk sekundę. }

Kiekvienos kodo eilutės pabaigoje esantys komentarai gana gerai paaiškina jų funkciją. „HIGH“ ir „LOW“ nurodo skaitmeninio išėjimo būseną ĮJUNGTA ir IŠJUNGTA - mūsų atveju LED. Taip pat kode galite įrašyti ĮJUNGTI arba IŠJUNGTI, abu yra sinonimai (kaip ir 0, ir 1). Uždelsimas liepia Arduino šiek tiek palaukti 1000 milisekundžių (arba 1 sekundę).

Galiausiai, pastaba apie čia naudojamą programavimo kalbą. Atkreipkite dėmesį, kad tiek sąrankos, tiek ciklo funkcijos turi žodį tuštuma prieš juos. Tai yra ypatingas žodis nieko, nes funkcija nieko negrąžina kai jis vadinamas - jis tiesiog paleidžia kodą, esantį jame. Kol kas palikime tai sakydami, kad funkcijos kodo blokas yra apgaubtas garbanomis {}, o kiekviena kodo eilutė turi baigtis a; pusiau dvitaškis.

Pabandykite kažkaip pakeisti pagrindinę programą, pakeisdami tikslias delsos reikšmes į didesnę ar mažesnę. Pažiūrėkite, kiek maža to galite sulaukti, kol mirksėjimas nebebus pastebimas. Sugalvokite, kurią vertę pakeisti, jei norite, kad ji išliktų ilgiau ar ilgiau. Pabandykite į ciklo funkciją įtraukti dar keletą „digitalWrite“ ir atidėjimo teiginių, kad sukurtumėte sudėtingesnį mirksinčią schemą, tokią kaip moros kodas SOS. Jei turite garsinį signalizatorių, pabandykite jį prijungti ir prie 13 kaiščių, ir prie GND (užuomina: raudona viela eina į 13, juoda - į žemę).

Tai viskas siandienai. Kitą kartą mes pridėsime dar keletą šviesos diodų ir patys parašysime savo programą. Kaip visada komentarai ir akcijos buvo labai vertinami. Neįsivaizduoju, kad turėtumėte kokių nors problemų, susijusių su šiandien nurodytu kodu, bet jei bandėte šiek tiek pakoreguoti kodą ir esate susidūrę su klaidomis ar netikėtu elgesiu, rašykite komentaruose ir pamatysime, ar galime tai padaryti kartu.

Jamesas yra dirbtinio intelekto bakalauras ir yra CompTIA A + bei Network + sertifikuotas. Jis yra pagrindinis „MakeUseOf“ kūrėjas ir laisvalaikį praleidžia žaisdamas VR dažasvydį ir stalo žaidimus. Nuo mažens jis statė kompiuterius.