
Arduino tapo viename iš The elektronikos projektai sėkmingiausias pasaulyjeJis buvo sukurtas pirmiausia studentams, 2005 metais Italijoje, Visa tai buvo skirta palengvinti elektronikos darbą, leidžiant visiems, besidomintiems šia sritimi, patirti, ką tai reiškia. elektroninių projektų kūrimas naudojimui realiame pasaulyje.
Todėl norint naudotis šia platforma nebūtina turėti neturi nei pažangių elektronikos žinių, nei sėkmingo programuotojo, nuo pat idėjos Arduino pagrindinis Tai skirta tam, kad visa tai būtų kuo labiau prieinama, taip suteikiant galimybę tūkstančiams žmonių kurkite savo projektus namuose.
Vienas iš sėkmės raktų čia yra žinojimas parašykite instrukcijas už mikrovaldiklis programavimo kalbakas daugeliui gali būti ne taip paprasta. Štai kodėl mes jus šiek tiek daugiau apie tai papasakosime. „Arduino“ programavimo kalba ir jos pagrindaiNorėdami tai padaryti, atidžiai atlikite kiekvieną veiksmą, kurį parodysime toliau pateiktame įraše.
Kas yra „Arduino“ programavimo kalba ir kam ji naudojama elektronikoje?
Šiuo atveju reikėtų paminėti, kad „Arduino“ programavimo kalba yra pagrįsta C + + nors šios programavimo kalbos nuoroda yra Arduino yra „Arduino“, šiais laikais taip pat galite Naudokite standartines C++ komandas programuodami plokštę.
Štai kaip parodysime jums išskirtiniausias C kalbos savybes:
- Ji laikoma programavimo kalba bendras tikslas, susijęs į UNIX operacinę sistemą.
- Tai vidutinio lygio kalbaJis turi pagrindinius tikslus, tokius kaip skaičiai, simboliai, bitai, atminties adresai ir kita.
- Sąskaita su puikiu perkeliamumas.
- Jis naudojamas sistemų programavimui taip kaip yra teksto redaktoriai, interpretatorių kūrimo priemonės, kompiliatoriai, among others.
C + + jis laikomas panašiu un programavimo kalba kurį devintojo dešimtmečio viduryje sukūrė Bjarne Stroustrup, Jis buvo sukurtas siekiant išplėsti šį C kalba su mechanizmais, kurie leidžia manipuliuoti objektais. Atitinkamai, ir objektinio programavimo kalbų požiūriu, C++ Ji laikoma hibridine kalba.
Laikui bėgant buvo pridėtos bendrinės programavimo funkcijos, kurios papildė kitas dvi jau palaikomas paradigmas. (Objektinis programavimas ir struktūrinis programavimas). Todėl ir suprantama, kad C++ yra programavimo kalba daugiaparadigminis programavimas ir šiuo metu yra standartas, žinomas kaip ISO C++.
C# yra „Microsoft“ patentuota kalba kuris yra atsakingas už maišymą pagrindinės C++ savybės juos supaprastinant Java stiliaus ir tuo pačiu metu siūlant sistema. Galiausiai reikia paminėti, kad C# yra dalis .NET platforma
Kokias kitas programavimo kalbas naudoja Arduino plokštės programavimas?
Už tai atsakinga komanda Arduino sukūrė kalbą tinkama šiai kortelei programuoti, minėta kalba randama remiantis laidųVisa tai susiję su sistema, Tai savotiškas šablonas, struktūra ar konceptuali schema, pagrįsta technologijomis, leidžianti dirbti daug paprasčiau, be to, ji yra... atvirojo kodo mikrokontrolerių programavimui.
Pažvelkime į tai išsamiau:
Instaliacija
Tai parašyta C ir C++ programavimo kalbos, Štai čia abiejų sintaksė tampa gana panaši. Pagrindinis šio naudojimo privalumas struktūra yra didžiulė įvairovė mikrovaldikliai, kuriuos jis palaiko, kadangi jis yra pajėgus palaikyti mikrovaldiklius kuriuos naudoja Arduino plokščių šeimos.
Galiausiai, lygiai taip pat, kaip ir arduino lentaLaidų instaliacija turi a IDE kuri remiasi Apdorojimas kuri leidžia programuoti mikrovaldiklius. Todėl jums tereikia apsilankyti oficialioje svetainėje Instaliacija ir atsisiųskite šią kūrimo aplinką, kuri yra prieinama „Linux“, „Windows“ ir „Mac“ operacinės sistemos.
Apdorojimas
Kad jam tai duočiau instrukcijas ir parašykite kodą mikrovaldiklyje arba kūrimo plokštėje Būtina aplinka. Šios aplinkos vadinamos „Integruota vystymosi aplinka“ arba kaip jis taip pat žinomas pagal savo santrumpą IDE ir kuri apibrėžiama kaip integruota kūrimo aplinka.
Tuo atveju, kai Arduino IDEPrograma, kurioje rašomas kodas, kuriama naudojant programavimo kalbą, vadinamą Apdorojimas. Todėl Apdorojimas yra Java pagrindu sukurta programavimo kalba ir kūrimo aplinka, Jis dažniausiai naudojamas skaitmeninio dizaino multimedijos projektams kurti.
C/C++ kalba
Kaip minėta anksčiau, kalba Arduino remiantis Instaliacija ir kuris taip pat pagrįstas C/C++. Tai leidžia dirbti su „Arduino“ projektais, tačiau tam reikia tam tikrų žinių apie juos. C kalba. Reikėtų atkreipti dėmesį, kad ne visos šios funkcijos kalba Jie naudojami, bet tik tuo atveju, jei naudojami struktūros ir kintamųjų tipai.
Tačiau pranašumas, kurį suteikia C Tai vidutinio lygio kalba, leidžianti efektyviai valdyti visus išteklius. mikrovaldiklis ir tai taip pat yra kompiliuojama kalba, leidžianti sukurti failą, kad vėliau jį būtų galima naudoti įkeltas į mikrovaldiklį.
Arduino IDE: atraskite atvirojo kodo aparatinės įrangos kūrimo aplinką!
El Arduino IDE arba kaip jis taip pat žinomas „Integruota kūrimo aplinka“ Tai kompiuterinė programa, sudaryta iš rinkinio programavimo įrankiaiTai gali būti skirta išskirtinai vienam asmeniui programavimo kalba arba jį gali naudoti įvairios kalbos.
Taigi, IDE Tai tapo programavimo aplinka, supakuota kaip taikomoji programa, o tai reiškia, kad ji yra kodo redaktorius, kompiliatorius, derinimo programa ir konstruktorius grafinė vartotojo sąsaja (GUI). Plokštės atveju Arduino Įdiegtos priemonės, skirtos kompiliuotai programai įkelti į aparatinės įrangos „flash“ atmintį.
Taigi, galima teigti, kad Arduino IDE Tai įrankis, naudojamas darbui su „Arduino“, todėl būtina suprasti, kaip jis veikia. Arduino programos Jie sudaryti iš vieno failo su plėtiniu „Informacija“, Nors juos taip pat galima suskirstyti į skirtingus failus, pagrindinio failo atveju jis visada turi būti aplanke, kurio pavadinimas sutampa su failo pavadinimu.
Galiausiai reikėtų paminėti, kad prieš 1.x versija Pratęsimas buvo naudojamas „pde“, Tačiau atnaujinus šią versiją, įvyko reikšmingų pakeitimų, todėl į tai reikėtų atsižvelgti, jei ji naudojama. senasis kodas. Taip pat reikėtų paminėti tai IDE yra visiškai nemokama ir tai įmanoma Atsisiųskite iš oficialios „Arduino“ svetainės o kaip tavo diegimo procesas Tai gana paprasta, todėl neturėsite jokių problemų.
Arduino programavimo pagrindai: ką svarbiausia žinoti?
Arduino programavimas Jame yra keletas pagrindinių principų, kuriuos svarbu žinoti ir taikyti, nes jie padės pasiekti geresnių rezultatų dirbant šioje platformoje. Štai kodėl mes jus apie tai apmokysime toliau. Kokie yra svarbiausi pagrindai, kuriuos turėtumėte žinoti apie Arduino programavimą?
Norėdami tai padaryti, atidžiai laikykitės kiekvieno iš šių aspektų:
Sintaksė
Tuo atveju, kai programavimo kalbos Privaloma turėti sintaksė, tai tas pats, kuris leis bendravimas su kompiliatoriumiKompiliatoriaus misija yra Jis nuskaitys kodą ir išvers jį į mašininį kodą. kad jis suprastų mikrovaldiklis. Todėl galima teigti, kad kompiliatoriui reikia, jog visa gaunama informacija būtų tobula, nes tik taip jis gali... mokėti skaityti ir versti kodą.
Komentarai
Komentarai yra tiesiog pažymi, kad programuotojas palieka pėdsakus kode, Tai padeda suprasti didelę dalį to. kodas. Svarbu tai, kad šiuo atveju tikslas nėra sukurti išsamią ataskaitą apie patį kodą, o aprašomąją apžvalgą, kuri padėtų suprasti, kaip jis veikia. Verta paminėti, kad tai yra esminė dalis, kai... Rašoma programa, skirta „Arduino“.
Tačiau svarbu nepamiršti, kad Komentarai nėra surinkti, tai neverčiama į mašinos kodasTodėl kiekvieną kartą, kai kompiliatorius aptinka komentarą, jis praleidžia tą eilutę.
Šiuo metu yra du būdai parašyti komentarą, kurie yra tokie:
// Tai komentaras. Int myvariable = 0;
Viskas, kas yra dešinėje nuo dvigubos juostos (//) yra laikomas a komentaras ir jis tampa pilkas.
Šiuo atveju „Arduino IDE“ pakeis spalvą, nurodydama, kad tai yra komentaras:
/* Tai komentaras */ Int my variable = 0;
Yra ir kitas būdas įdėti komentarą ir įterpiant /*, kad atidarytumėte, ir */, kad uždarytumėte. Todėl viskas tarp šių dviejų pradžios ir pabaigos ženklų laikoma komentaru. Kadangi tai yra Komentaras bus pakeistas į pilką spalvą.
Kabliataškis
En C++ programavimo kalboje kabliataškis (;) yra tarsi pastraipos lūžis.Tai reiškia, kad šis simbolis rodo, jog sakoma, jog seka baigėsi ir nuo to momento pasakyta kažkas naujo, sintaksės lygmeniu nesusijusio su ankstesne.
Pažiūrėkime:
// Tai komentaras. Vidinis kintamasis = 0:
Nuo kabliataškis pateiktas ankstesnėje eilutėje, kompiliatorius Jis viską, kas parašyta, interpretuoja kaip naują sakinįkuris neturės nieko bendra su ankstesniu. Todėl šiame etape jau galima atlikti testą, kad pamatytumėte, kaip veikia kompiliatorius.
Norėdami tai padaryti, turite pasiekti naują programą „Arduino IDE“ ir nukopijuoti šį kodą; jums nereikia prijungti plokštės prie kompiuterio:
//Nėra kabliataškio int variable1 = 0 void setup() { // Įrašykite savo kodą čia; } void loop() { // Įrašykite savo pagrindinį kodą čia, kad jis būtų vykdomas pakartotinai; }
Toliau turite spustelėti mygtuką „Patvirtinti“; tai yra pirmasis redaktoriaus spartusis klavišas:
Sketch_may29a:4: klaida: prieš „void“ tikėtasi „,“ arba „;“ Void setup() { Išeities būsena 1 Tikėtasi „,“ arba „;“ prieš „void“
Kaip matote, čia atrodo pirmoji klaida. Norint tai išspręsti, svarbu ją išanalizuoti. Pažvelgę į pranešimų sritį, matysite, kad klaida rodoma anglų kalba, bet labai aiški. „Tikimasi“ „,“ „Arba“ „, „prieš negaliojantį“ Tai reiškia, kad a kablelis arba taškas ir kaip prieš žodį „void“.
Pažiūrėkime:
Sketch_may29a:4: klaida: prieš „void“ tikėtasi „,“ arba „;“ Void setup() { Išeities būsena 1 Tikėtasi „,“ arba „;“ prieš „void“
Pagaliau redaktorius pamatys raudoną juostelę kuris nurodytų eilutę, kurioje yra klaida, ir kur į ją nurodoma konsolėje. Kitas žingsnis bus Pakeiskite kodą ir 2 eilutės pabaigoje įterpkite kabliataškį, kad jis kompiliuotųsi. Kaip matote, kompiliatorius yra ne tik reiklus, bet ir padeda ištaisyti klaidas.
Kintamieji
Kintamieji Jie yra viena iš svarbiausių sąvokų to, kas yra Arduino kalbos programavimas. Juos sudaro programavimo įrankis, kuris Tai leidžia saugoti ir atkurti informaciją. iš programų.
Duomenų tipai
Tai ne tik apie tai, kad turėtumėte pavadinkite kintamąjįbet kad būtų galima nurodyti tipą saugomi duomenysTodėl duomenų tipai yra atsakingi už saugomos informacijos nurodymą, nurodant kiekvieną iš jų. duomenų tipai.
Tai labai supaprastins duomenų paieškos ir gavimo procesą; ieškoti kažko nežinomo nėra tas pats, kas iš anksto žinoti, ko ieškote. Taip pat reikėtų paminėti, kad kiekvienas kintamasis galės tik saugoti nurodytą duomenų tipą kai tas kintamasis deklaruojamas.
Funciones
Funkcijų atveju kai kurioms iš jų reikalingi parametrai, tokie kaip skaitmeninio rašymo funkcijakur svarbu žinoti du dalykus, pvz. el būsena (AUKŠTA arba ŽEMA) ir PIN kodą.
Jūs tikrai stebitės Kaip sužinoti, kokius parametrus funkcija priima? Šiuo atveju geriausia būtų pasikonsultuoti su kalbos nuoroda; tai yra tarsi vadovas arba naudotojo vadovas. Beveik visos kalbos turi savo nuorodą. Pasiekus „Skaitmeninis rašymas“ Pastebėsite, kad svetainė yra anglų kalba.
Tai yra didžiausias trūkumas, tačiau galite pastebėti šiuos dalykus:
Nuorodų skyriuje rasite viską, ką reikia žinoti apie funkcijos naudojimą:
- Sintaksė: Nurodykite, kaip funkcija parašyta ir kiek parametrų ji priima.
- Parametrai: Čia paaiškinamas kiekvienas parametras ir jo reikšmė.
- Grąžinimai: Jei grąžinama reikšmė, funkcija nurodys duomenų tipą. „DigitalWrite“ funkcija Jis negrąžina jokios vertės, todėl niekas nededama.
Arduino setup() ir loop() funkcijos
Galiausiai randame tai, kas Arduino sąrankos ir ciklo funkcijosAbi laikomos svarbiausiomis programos funkcijomis ir būtinomis, kai... Išmokite Arduino.
sąrankos() funkcija
Tai „Arduino“ programa, kurioje yra dalykų, kuriuos reikia atlikti tik vieną kartą, pavyzdžiui:
- Pradėti la nuoseklusis ryšys su kompiuterį per USB prievadą.
- šou un Sveikinimo pranešimas LCD ekrane.
- Konfigūruokite pasveikinimo kaiščius LCD ekrane.
- Pradėti un skaitiklis iki nulio.
- Pasukite servovariklį į tiesinę padėtį pagal nutylėjimą
Turėtumėte nepamiršti, kad tai yra užduočių tipai, kurie atliekami tik vieną kartą. Todėl jas galima apibūdinti kaip... pradinės programos sąlygos, Šio tipo užduotys yra tos, kurios patenka į setup() funkcija. Norėdami geriau suprasti visa tai, čia išsamiau panagrinėsime šią funkciją.
Šiuo atveju setup() funkcija Jis turi ypatingą spalvą Arduino IDElygiai taip pat, kaip ir kitiems nutinka kalbos pagrindai. Ši spalva rodo, kad Arduino IDE gali identifikuoti funkciją kaip specialų tipą, naudojamą kodo struktūros valdymas. Kaip ir bet kuri funkcija, ji turi atidaromąjį ir uždaromąjį skliaustus.
Tačiau skirtingai nei dauguma funkcijų, šiuo atveju „setup()“ nereikia jokių argumentų, kad veiktų:
Void setup() { }
Kaip matote kairėje pusėje žodis „sąranka“ rasta žodis tuštuma, o tai rodo, kad šis Funkcija negrąžins jokios reikšmės ar duomenų. Todėl, sakė Šiai funkcijai nereikia argumentų ir ji negrąžina jokios reikšmės. Bet tai kažką daro.
Šiuo atveju jo užduotis yra vykdyti visą jame esantį kodą; tai atskiriama riestiniais skliaustais taip:
void setup() { //5 ir 8 kontaktų režimai pinMode(5, INPUT); pinMode(8, INPUT); //Sveikinimo pranešimas LCD ekrane LCD.write("Sveiki atvykę į Arduino piceriją"); //Numatytoji servo variklio padėtis Servo.move(90) ; }
Taigi, sąrankos funkcija Tai pirmas dalykas, kuris pabėga, kai Arduino programaKai tik jis bus įvykdytas sąrankos funkcijaPrograma vykdys kiekvieną eilutę po vieną. Svarbiausia, kad sąranka paleidžiama tik vieną kartą, tiksliai taip, kaip aprašyta aukščiau. Todėl tai labai svarbu. Kodas tarp šių dviejų riestinių skliaustų bus vykdomas tik vieną kartą..
ciklo() funkcija
Patinka nustatymas yra Arduino programabet šį kartą bėga paskui sąrankos funkcija.
Ciklo reikšmė yra kartojimas ir yra panaši į „setup“ reikšmę:
Tuščia kilpa () } {
Tam nereikia jokių argumentų, net jei ir yra atidaromieji ir uždaromieji skliaustai. Šiuo atveju jis negrąžina jokios vertės, todėl turi žodis „tuščia“ kairėje pusėjeŠtai kaip dabar parodysime, kaip veikia rakto atidarymas ir uždarymas. ({}).
Čia vyksta tas pats, kas ir „setup“ funkcijoje; kai vykdoma ciklo funkcija, ji veikia eilutė po eilutės, kaip matyti šiame kode:
void loop() { Nuskaitykite 5 kontaktą Int pinCinco = digitalRead(5); //8 kontaktas aukštoje būsenoje Digitalwrite(8, HIGT); //Servovariklis 180° padėtyje Servo.mode(180); }
Galima sakyti, kad didelis skirtumas yra tarp sąrankos ir ciklo funkcija Tai yra, kai tu esi ciklo funkcijos kodo vykdymasPrograma grįžta į pradžią ir viską kartoja. Ji patenka į begalinį ciklą, kartodama visą procesą. Dabar svarbu atsižvelgti į funkcijos vykdymo greitį, nes jį pirmiausia lemia kiekvienas... mikrovaldiklis.
Tuo atveju, kai la Arduino UNO plokštėmikrovaldiklis naudojamas yra ATmega328P ir jo greitis yra 20 MHz (megahercų). Visa tai atitinka iš viso 20 000 000 instrukcijų per sekundę, Bet tai nereiškia, kad taip yra 20 mln. Kodo eilučiųSvarbu atsiminti, kad jūsų parašytas kodas yra verčiamas į mašininį kodą.
Kiekvienas kodo eilutė kad tu gali parašyti išversti į kelis vertimusBet net ir tokiu atveju, jei turite bent 1.000 instrukcijų užtruktų 0,00005 sekundės. Todėl greitis yra neįtikėtinas. „Arduino“ programos atveju, kiekvieną kartą pasiekus paskutinę kodo eilutę... ciklo funkcijaTai grįš į pradžią, kad viskas būtų paleista iš naujo, todėl nereikės laukti jokio išorinio signalo.















