Sisällysluettelo:

Arduinon kirjaston luominen YouTuben näkökulmasta: 7 vaihetta
Arduinon kirjaston luominen YouTuben näkökulmasta: 7 vaihetta

Video: Arduinon kirjaston luominen YouTuben näkökulmasta: 7 vaihetta

Video: Arduinon kirjaston luominen YouTuben näkökulmasta: 7 vaihetta
Video: Arduinon perusteet, osa #2: Ohjelmointi 2024, Marraskuu
Anonim
Image
Image
Mikä on kirjasto?
Mikä on kirjasto?

Hei kaikki, Olen hiljattain rakentanut YouTube Sight -palvelun, joka voi kerätä tilaajien tietoja YouTube Analytics -sovellusliittymästä ja antaa sinulle tarkemmat tilaajamäärät sen jälkeen, kun YouTube aloitti tulosten kokoamisen. Sen avulla olen rakentanut esimerkkiluonnoksen, mutta halusin myös tehdä Arduino -kirjaston, jotta ihmiset voivat käyttää sitä helpommin.

Vaihe 1: Mikä on kirjasto?

Mikä on kirjasto?
Mikä on kirjasto?

Kirjasto on koodikappale, joka pystyy käsittelemään tiettyä toimintoa, käsittelemään tietyn tyyppistä dataa tai osaa toimia vuorovaikutuksessa tietyn laitteistoelementin kanssa. Niiden avulla voimme helposti laajentaa Arduino-ympäristöä, ja monet niistä on esiasennettu Arduino IDE: n kanssa.

Minun kaltaisissa tapauksissa, joissa haluamme lisätä uusia mahdollisuuksia Arduinolle, voimme luoda omia kirjastoja muiden ihmisten käyttöön. Kaikki asennetut kirjastot sijaitsevat tietokoneemme tietyssä kansiossa. Minun tapauksessani Windows -tietokoneessa kirjastot sijaitsevat Dokumentit/Arduino -kansiossa. Koko polku on nimenomainen sinulle käyttäjänimesi perusteella.

Vaihe 2: Kirjaston rakenne ja tiedostot

Kirjaston rakenne ja tiedostot
Kirjaston rakenne ja tiedostot

Jotta voisimme aloittaa kirjastomme rakentamisen, meidän on ensin luotava tänne kansio sen nimellä, joten olen luonut kansion nimeltä YouTube Sight. Kirjaston vähimmäisversiossa meillä on oltava vähintään kaksi tiedostoa.

Ensimmäinen on niin sanottu otsikkotiedosto, joka sisältää kaikki kirjastomme tarjoamien menetelmien ja ominaisuuksien määritelmät, ja toinen on lähdetiedosto, joka sisältää kaiken lähdekoodin.

Otsikkotiedostojen laajennus on ".h", kun taas lähdetiedoston laajennus on ".cpp" ja niissä on yleensä kirjaston nimi. Minun tapauksessani näiden kahden tiedoston nimi on “YouTubeSight.h” ja “YouTubeSight.cpp”.

Kirjastokoodin kirjoittaminen voi olla hieman tylsää ja turhauttavaa, varsinkin kun kirjoitat kirjastoa ensimmäistä kertaa, mutta paljon yrityksiä ja erehdyksiä käyttämällä voit saavuttaa halutut tulokset. Siksi johdan sinut kahden tiedoston valmiiden koodien läpi ja selitän sen.

Koko koodi ja kirjasto on ladattavissa GitHubista seuraavasta linkistä:

Vaihe 3: Otsikkotiedosto

Otsikkotiedosto
Otsikkotiedosto
Otsikkotiedosto
Otsikkotiedosto
Otsikkotiedosto
Otsikkotiedosto

Otsikkotiedoston sisällä koko tiedosto on aluksi kääritty ifndef -käskyyn, joka tarkistaa, onko määritetty muuttuja määritetty vai ei. Tämä estää virheet kaikille kirjaston käyttäjille, jos he sisällyttävät sen kahdesti samaan luonnokseen vahingossa.

Seuraavaksi meidän on sisällytettävä Arduino -peruskirjasto, ja koska työskentelemme jonkinlaisen HTTP -asiakkaan kanssa pyynnön lähettämiseksi YouTube Sightiin, sisällytämme myös perusasiakaskirjaston.

Ennen kuin aloitamme pääluokan sisällön kirjoittamisen, meidän on määritettävä kaikki staattiset muuttujat ja asetukset, joita emme halua muuttaa. Minun tapauksessani on kaksi tällaista muuttujaa. YouTube Sight -palvelun pää -URL -osoite ja aikakatkaisumuuttuja, joiden avulla tarkistamme, kuinka kauan luemme arvoa.

Myös tässä osassa voimme määritellä haluamamme mukautetut tyypit, kuten tämän kanavan tilastot, kuten tulokset, joihin tallennamme.

Luokkarakenteen määritelmä on jaettu kahteen osaan. Ensimmäinen osa on kaikkien julkisten toimintojen ja kiinteistöjen määrittely ja toinen on kaikkien yksityisten toimintojen ja kiinteistöjen määritelmä. Ero näiden kahden välillä on se, että kirjastomme loppukäyttäjät eivät voi käyttää mitään yksityisestä osiosta suoraan, kun he voivat suoraan muokata ja käyttää mitä tahansa julkisen osan ominaisuuksia ja toimintoja.

Julkisessa osassa määritellään luokkakonstruktori, channelStats -muuttuja, johon tallennamme tulokset, funktio, joka saa tiedot, ja virheenkorjausominaisuus, jota voimme myöhemmin käyttää tapausten tarkistamiseen, joissa emme ehkä saa odotettuja tuloksia.

Yksityisille ominaisuuksille määritämme kanavan GUID -tunnuksen tallentamisen, osoittimen käyttämäämme HTTP -asiakasohjelmaan ja toiminnon, joka jakaa palautetun merkkijonon YouTube Sightista.

Vaihe 4: Lähdetiedosto

Lähdetiedosto
Lähdetiedosto
Lähdetiedosto
Lähdetiedosto

Tarkastellaan nyt kaiken tämän todellista toteutusta lähdetiedoston sisällä.

Ensimmäinen askel on sisällyttää oma juuri luomamme otsikkotiedosto ja sitten meidän on määriteltävä kirjaston rakentaja. Siinä välitämme kaksi muuttujaa. GUID tallennetaan aiemmin määrittämäämme yksityiseen muuttujaan ja asiakas välitetään viitteellä, jotta voimme sitten kutsua saman ilmentymän, jonka saimme.

Kirjaston pää getData -funktio määritellään seuraavaksi määrittämällä ensin palautustyyppi, jota seuraa kirjaston nimi ja funktion nimi. En mene yksityiskohtiin siitä, mitä jokainen rivi tekee tässä toiminnossa, mutta yleensä toiminto avaa yhteyden YouTube Sight -palvelimeen, lähettää pyynnön saada tilastot ja jäsentää sitten palautetut tiedot yksityinen getValue -funktio.

Haetut tulokset asetetaan sitten channelStats -muuttujaan ja indikaattori palautetaan, jos onnistuimme noutamaan tulokset vai emme ja että kirjastoimme ydin on valmis.

Vaihe 5: Esimerkkiluonnosten tarjoaminen

Esimerkkiluonnosten tarjoaminen
Esimerkkiluonnosten tarjoaminen

Yleensä sinä, jokainen kirjasto tarjoaa esimerkkejä, jotka voit ladata nopeasti ja käyttää esittelemään, mitä kirjasto voi tehdä ja miten se tehdään. Jotta voimme tarjota tällaisia esimerkkejä, meidän on muutettava kirjastorakennetta, jossa nyt otsikko ja lähdetiedosto ovat "src" -kansiossa ja uusi kansio lisätään kirjaston juureen nimeltä "esimerkit".

Kaikki Arduino -luonnokset, jotka sijoitat tähän kansioon, näytetään Arduino IDE: stä esimerkkinä kirjastollesi, ja ihmiset voivat nopeasti tutkia sitä ja oppia kirjaston toimintaa.

Vaihe 6: Julkaiseminen kirjastonhoitajalle

Julkaiseminen kirjastonhoitajalle
Julkaiseminen kirjastonhoitajalle

Kirjastoa käyttääkseen ihmisten on yksinkertaisesti sisällytettävä kirjaston otsikkotiedosto luonnokseensa ja Arduino IDE rakentaa sen yhdessä sen kanssa. Mutta voidakseen tehdä niin heidän on ensin asennettava se koneilleen.

Yleinen tapa on ladata kirjasto GitHubista ja asentaa se ZIP -asennusohjelman kautta IDE: hen tai sijoittaa se kirjastojen kansioon, kuten teimme sitä luodessamme. Arduino IDE sisältää kuitenkin myös työkalun nimeltä Library Manager, jonka avulla voit etsiä kirjastoa suoraan IDE: stä.

Jos haluat sisällyttää kirjastoosi, meidän on ensin luotava lisätiedosto juurikansioon nimeltä "library.properties" ja siinä on määritettävä kirjaston nimi, nykyinen versio ja joitain lisätietoja, jotka auttavat kirjastonhoitajaa näyttääksesi siitä parempaa tietoa.

Kun tiedosto on paikallaan, Arduino GitHub -sivulle on luotava ongelma, joka yksinkertaisesti pyytää kirjastoasi sisällyttämään hakemistoon linkin siihen, ja kun Arduinon henkilökunta on hyväksynyt ja lisännyt sen, kirjaston johtaja aloita tarjoamaan kirjastoasi tuloksissa. Lisäksi johtaja etsii tulevaisuudessa versiotunnisteita GitHub -reposta ja tarjoaa päivityksen sitä käyttäville ihmisille muutosten jälkeen.

Vaihe 7: Seuraavat vaiheet

Toivon, että tämän Instructable -ohjelman jälkeen ymmärrät paremmin, miten Arduino -kirjastot toimivat, kuinka voit luoda yhden ja mikä tärkeintä, toivon, että saat inspiraatiota aloittaaksesi seuraavan suuren ideasi.

Jos sinulla on lisäkysymyksiä tai ehdotuksia, voit kirjoittaa kommentteihin, tilata YouTube -kanavani ja seurata minua täällä Instructablesissa.

Suositeltava: