Kazalo:
- 1. korak: Kaj je knjižnica?
- 2. korak: Struktura knjižnice in datoteke
- 3. korak: Datoteka z glavo
- 4. korak: izvorna datoteka
- 5. korak: Zagotovite primerne skice
- 6. korak: objava v upravitelju knjižnice
- 7. korak: Naslednji koraki
Video: Ustvarjanje knjižnice Arduino za ogled YouTube: 7 korakov
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:04
Zdravo vsi, Pred kratkim sem razvil storitev, imenovano YouTube Sight, ki lahko izvleče podatke o naročnikih iz API -ja YouTube Analytics in vam da natančnejše število naročnikov, odkar je YouTube začel zbirati rezultate. Z njim sem zgradil primer skice, želel pa sem tudi narediti knjižnico Arduino, da jo bodo ljudje lažje uporabljali.
1. korak: Kaj je knjižnica?
Knjižnica je del kode, ki lahko upravlja določeno operacijo, obdeluje vrsto podatkov ali lahko ve, kako komunicirati z določenim elementom strojne opreme. Omogočajo nam preprosto razširitev okolja Arduino in veliko jih je vnaprej nameščenih z Arduino IDE.
V primerih, kot je moj, kjer želimo Arduinu dodati nove možnosti, lahko ustvarimo lastne knjižnice, ki jih bodo lahko uporabljali drugi ljudje. Vse nameščene knjižnice živijo v določeni mapi v našem računalniku. V mojem primeru za računalnik z operacijskim sistemom Windows so knjižnice pod mapo Dokumenti/Arduino. Celotna pot bo za vas specifična glede na vaše uporabniško ime.
2. korak: Struktura knjižnice in datoteke
Če želimo začeti graditi svojo knjižnico, moramo najprej ustvariti mapo z imenom, zato sem ustvaril mapo z imenom YouTube Sight. V najnižji različici knjižnice moramo imeti vsaj dve datoteki.
Prva je tako imenovana datoteka z glavo, ki vsebuje vse definicije metod in lastnosti, ki jih ponuja naša knjižnica, druga pa izvorna datoteka, ki bo vsebovala vso izvorno kodo.
Datoteke z glavo imajo razširitev ».h«, izvorna datoteka pa ».cpp« in običajno imajo ime knjižnice ime datoteke. V mojem primeru se obe datoteki imenujeta »YouTubeSight.h« in »YouTubeSight.cpp«.
Postopek pisanja knjižnične kode je lahko nekoliko dolgočasen in frustrirajoč, še posebej, če knjižnico pišete prvič, vendar z veliko poskusov in napak lahko dosežete želene rezultate. Zaradi tega vas bom vodil skozi dokončano kodo obeh datotek in jo razložil.
Celotna koda in knjižnica sta na voljo za prenos s spletnega mesta GitHub na naslednji povezavi:
3. korak: Datoteka z glavo
V datoteki z glavo je na začetku celotna datoteka zavita v stavek »ifndef«, ki preveri, ali je podana spremenljivka definirana ali ne. To bo preprečilo napake vsem, ki knjižnico uporabljajo, če jo pomotoma dvakrat vključijo v isto skico.
Nato moramo vključiti osnovno knjižnico Arduino in ker bomo sodelovali z nekakšnim odjemalcem HTTP za pošiljanje zahteve v YouTube Sight, bomo vključili tudi osnovno knjižnico odjemalcev.
Preden začnemo pisati vsebino našega glavnega razreda, moramo opredeliti vse statične spremenljivke in nastavitve, ki jih ne želimo spreminjati. V mojem primeru obstajata dve taki spremenljivki. Glavni URL storitve YouTube Sight in spremenljivka časovne omejitve, s katero bomo preverili, kako dolgo beremo vrednost.
Tudi v tem razdelku lahko določimo vse vrste po meri, ki jih želimo uporabiti, na primer to strukturo kanalaStatistics, v katero bomo shranili rezultate.
Opredelitev strukture razreda je razdeljena na dva dela. Prvi del je opredelitev vseh javnih funkcij in lastnosti, drugi pa opredelitev vseh zasebnih funkcij in lastnosti. Razlika med obema je v tem, da končni uporabniki naše knjižnice ne bodo mogli neposredno uporabljati ničesar iz zasebnega razdelka, medtem ko bodo lahko neposredno spreminjali in uporabljali katero koli lastnost in funkcijo iz javnega dela.
V javnem razdelku določimo konstruktor razreda, spremenljivko channelStats, kamor bomo shranili rezultate, funkcijo, ki bo pridobila podatke, in lastnost za odpravljanje napak, ki jo lahko kasneje uporabimo za preverjanje primerov, ko morda ne bomo dobili pričakovanih rezultatov.
Za zasebne lastnosti bomo določili enega za shranjevanje GUID kanala, kazalec na odjemalca HTTP, ki ga bomo uporabili, in funkcijo, ki bo ločila vrnjeni niz iz YouTubovega vida.
4. korak: izvorna datoteka
Zdaj pa poglejmo dejansko izvajanje vsega tega v izvorni datoteki.
Prvi korak za nas je vključitev lastne datoteke z glavo, ki smo jo pravkar ustvarili, nato pa moramo definirati konstruktor knjižnice. V njem podajamo dve spremenljivki. GUID je shranjen v zasebno spremenljivko, ki smo jo definirali prej, odjemalca pa posredujemo s sklicem, tako da lahko nato pokličemo isti primerek, ki smo ga dobili.
Glavna funkcija knjižnice getData je definirana tako, da najprej poda vrsto vračila, nato ime knjižnice in ime funkcije. Ne bom podrobno opisal, kaj vsaka vrstica počne v tej funkciji, na splošno pa funkcija odpre povezavo s strežnikom YouTube Sight, pošlje zahtevo po statističnih podatkih in nato razčleni vrnjene podatke s pomočjo zasebna funkcija getValue.
Pridobljeni rezultati so nato nastavljeni na spremenljivko channelStats in indikator se vrne, če nam je uspelo pridobiti rezultate ali ne in s tem je jedro naše knjižnice popolno.
5. korak: Zagotovite primerne skice
Običajno vsaka knjižnica vsebuje primere, ki jih lahko hitro naložite in uporabite, da prikažete, kaj lahko knjižnica naredi in kako to storiti. Za takšne primere moramo spremeniti strukturo knjižnice, kjer bosta zdaj glava in izvorna datoteka v mapi »src«, nova mapa pa bo dodana pod korenom knjižnice, imenovana »primeri«.
Vsaka skica Arduino, ki jo postavite v to mapo, bo iz Arduino IDE prikazana kot primer za vašo knjižnico, ljudje pa jo bodo lahko hitro raziskali in izvedeli, kako knjižnica deluje.
6. korak: objava v upravitelju knjižnice
Za uporabo knjižnice bodo morali ljudje preprosto vključiti datoteko glave vaše knjižnice v svojo skico in Arduino IDE jo bo skupaj z njo sestavil. Toda za to ga bodo morali najprej namestiti na svoje stroje.
Pogost način je, da knjižnico prenesete z GitHub -a in jo namestite prek namestitvenega programa ZIP v IDE ali pa jo preprosto postavite v mapo knjižnic, kot smo to storili pri ustvarjanju. Vendar Arduino IDE vključuje tudi orodje, imenovano Upravitelj knjižnic, ki vam omogoča iskanje knjižnice neposredno iz IDE.
Če želite vanjo vključiti svojo knjižnico, moramo najprej ustvariti dodatno datoteko v korenski mapi, imenovano “library.properties”, v njej pa moramo določiti ime knjižnice, trenutno različico in nekaj dodatnih informacij, ki bodo v pomoč upravitelju knjižnice za prikaz boljših informacij o tem.
Ko je datoteka na mestu, je treba na strani Arduino GitHub ustvariti težavo, ki preprosto zahteva, da se vaša knjižnica vključi v indeks s povezavo do nje, in ko jo odobri in doda osebje Arduina, bo upravitelj knjižnice v rezultatih začnite ponujati svojo knjižnico. Poleg tega bo upravitelj v prihodnosti iskal vse oznake različic v repoju GitHub in ljudem, ki ga uporabljajo, ponudil posodobitev, ko bodo spremembe.
7. korak: Naslednji koraki
Upam, da boste po tem navodilu bolje razumeli, kako delujejo knjižnice Arduino, kako lahko ustvarite eno in kar je najpomembneje, upam, da vas bo navdihnilo, da začnete delati na svoji naslednji veliki ideji.
Za vsa dodatna vprašanja ali predloge vas prosimo, da jih zapišete v komentarje, se naročite na moj YouTube kanal in me spremljate tukaj na Instructables.
Priporočena:
Programiranje Arduina z uporabo drugega Arduina za prikaz drsnega besedila brez knjižnice: 5 korakov
Programiranje Arduina z uporabo drugega Arduina za prikaz drsnega besedila brez knjižnice: Sony Spresense ali Arduino Uno nista tako draga in ne zahtevata veliko energije. Če pa ima vaš projekt omejeno moč, prostor ali celo proračun, razmislite o uporabi Arduino Pro Mini. Za razliko od Arduino Pro Micro, Arduino Pro Mi
RC5 dekodirnik protokola za daljinsko upravljanje brez knjižnice: 4 koraki
Dekoder protokola RC5 za oddaljeni nadzor brez knjižnice: pred dekodiranjem rc5 najprej razpravljamo, kaj je ukaz rc5 in kakšna je njegova struktura. torej v bistvu ukaz rc5, ki se uporablja v daljinskih upravljalnikih, ki se uporabljajo v televizorjih, CD predvajalnikih, d2h, sistemih za domači kino itd., ima 13 ali 14 bitov, razporejenih v
Načrtovanje intenzivnosti svetlobe z uporabo Arduino in Pythonove glavne knjižnice Arduino: 5 korakov
Ustvarjanje zemljevidov intenzivnosti svetlobe z uporabo Arduina in Pythonove glavne knjižnice Arduino: Arduino je ekonomično, a zelo učinkovito in funkcionalno orodje, zato ga programiranje v vdelanem C otežuje proces oblikovanja projektov! Modul Arduino_Master Pythona to poenostavi in nam omogoča izračune, odstranjevanje vrednosti smeti,
Generator tonov Arduino brez knjižnice ali zaporednih funkcij (s prekinitvami): 10 korakov
Arduino Tone Generator brez knjižnice ali zaporednih funkcij (s prekinitvami): To ni nekaj, za kar bi običajno poučeval, raje imam kovinsko obdelavo, a ker sem študent elektrotehnike in moram opraviti tečaj mikrokrmilnikov ( Embedded Systems Design), mislil sem, da bom na enem od svojih p
Ogled nadzornih plošč Emoncms & ESP8266 + Arduino #IoT: 7 korakov (s slikami)
Ogled nadzornih plošč Emoncms & ESP8266 + Arduino #IoT: Dolgo sem preizkušal platformo Emoncms in vam ob tej priložnosti pokazal končni rezultat ter kakovost nadzornih plošč in / ali vizualizacij. Vzel sem nekaj vaj, ki bodo služile kot vmesne korake. Vizualizirali si bomo