Innholdsfortegnelse:
- Trinn 1: Hva er et bibliotek?
- Trinn 2: Bibliotekstruktur og filer
- Trinn 3: Overskriftsfilen
- Trinn 4: Kildefilen
- Trinn 5: Gi eksempler på skisser
- Trinn 6: Publisering til Library Manager
- Trinn 7: Neste trinn
Video: Lag et Arduino -bibliotek for YouTube Sight: 7 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:22
Hei alle sammen, Jeg har nylig bygd en tjeneste som heter YouTube Sight som kan trekke ut abonnentdata fra YouTube Analytics API og gi deg mer nøyaktige abonnentteller siden YouTube begynte å samle resultatene. Med det har jeg bygget en eksempelskisse, men jeg ønsket også å lage et Arduino -bibliotek slik at folk lettere kan bruke det.
Trinn 1: Hva er et bibliotek?
Et bibliotek er et stykke kode som kan håndtere en bestemt operasjon, behandle en type data eller kan vite hvordan den skal samhandle med et bestemt maskinvareelement. De lar oss enkelt utvide Arduino-miljøet, og det er mange av dem som er forhåndsinstallert med Arduino IDE.
I tilfeller som min, der vi ønsker å legge til nye muligheter for Arduino, kan vi lage våre egne biblioteker for andre mennesker å bruke dem. Alle de installerte bibliotekene bor i en bestemt mappe på datamaskinen vår. I mitt tilfelle for Windows -PC bor bibliotekene under mappen Dokumenter/Arduino. Hele banen vil være spesifikk for deg, basert på brukernavnet ditt.
Trinn 2: Bibliotekstruktur og filer
For å begynne å bygge biblioteket vårt, må vi først lage en mappe her med navnet på det, så jeg har opprettet en mappe som heter YouTube Sight. I minimumsversjonen av biblioteket må vi ha minst to filer.
Den første er en såkalt “header” -fil som inneholder alle definisjonene av metodene og egenskapene biblioteket vårt gir, og den andre er kildefilen som vil inneholde all kildekoden.
Toppfilene har en utvidelse av ".h" mens kildefilen har en ".cpp" -utvidelse, og de har vanligvis navnet på biblioteket som filnavn. I mitt tilfelle kalles de to filene "YouTubeSight.h" og "YouTubeSight.cpp".
Prosessen med å skrive bibliotekskoden kan være litt kjedelig og frustrerende, spesielt når du skriver et bibliotek for første gang, men med mye prøving og feiling kan du oppnå de ønskede resultatene. På grunn av det vil jeg guide deg gjennom den ferdige koden til de to filene og forklare den.
Hele koden og biblioteket er tilgjengelig for nedlasting fra GitHub på følgende lenke:
Trinn 3: Overskriftsfilen
Inne i toppteksten, i begynnelsen, er hele filen pakket inn i en "ifndef" -setning som kontrollerer om variabelen som er angitt er definert eller ikke. Dette vil forhindre feil for alle som bruker biblioteket hvis de tar det to ganger i samme skisse ved en feiltakelse.
Deretter må vi inkludere det grunnleggende Arduino -biblioteket, og siden vi vil jobbe med en eller annen HTTP -klient for å sende forespørselen til YouTube Sight, vil vi også inkludere basisklientbiblioteket.
Før vi begynner å skrive innholdet i hovedklassen vår, må vi definere eventuelle statiske variabler og innstillinger som vi ikke ønsker å bli endret. I mitt tilfelle er det to slike variabler. Hovedadressen til YouTube Sight -tjenesten og tidsavbruddsvariabelen som vi skal bruke til å sjekke hvor lenge vi leser en verdi.
Også i denne delen kan vi definere egendefinerte typer som vi ønsker å bruke som denne kanalstatistikkstrukturen som vi vil lagre resultatene til.
Klassestrukturdefinisjonen er delt inn i to deler. Den første delen er definisjonen av alle de offentlige funksjonene og eiendommene, og den andre er definisjonen av alle de private funksjonene og eiendommene. Forskjellen mellom begge er at sluttbrukerne av biblioteket vårt ikke vil kunne bruke noe fra den private delen direkte mens de vil kunne endre og bruke noen av egenskapene og funksjonene fra den offentlige delen.
I den offentlige delen definerer vi klassekonstruktøren, varianten channelStats hvor vi vil lagre resultatene, funksjonen som vil få dataene og en feilsøkingsegenskap som vi senere kan bruke til å se etter tilfeller der vi kanskje ikke får de forventede resultatene.
For de private egenskapene vil vi definere en for lagring av kanal -GUID, en peker til HTTP -klienten vi skal bruke og en funksjon som vil dele den returnerte strengen fra YouTube Sight.
Trinn 4: Kildefilen
La oss nå se på den faktiske implementeringen av alt dette i kildefilen.
Det første trinnet for oss er å inkludere vår egen toppfil som vi nettopp har opprettet, og så må vi definere bibliotekskonstruktøren. I den passerer vi to variabler. GUID -en lagres i den private variabelen som vi definerte tidligere, og klienten sendes som referanse, slik at vi kan kalle den samme forekomsten som vi fikk.
HovedgetData -funksjonen i biblioteket defineres deretter ved først å spesifisere returtypen, etterfulgt av biblioteksnavnet og funksjonsnavnet. Jeg vil ikke gå i detalj om hva hver eneste linje gjør i denne funksjonen, men generelt åpner funksjonen en forbindelse til YouTube Sight -serveren, sender inn forespørselen om å få statistikken og analyserer deretter de returnerte dataene ved hjelp av den private getValue -funksjonen.
De hentede resultatene settes deretter til varianten channelStats, og en indikator returneres hvis vi lyktes med å hente resultatene eller ikke, og med det er kjernen i biblioteket vårt fullført.
Trinn 5: Gi eksempler på skisser
Vanligvis gir hvert bibliotek eksempler som du raskt kan laste opp og bruke for å vise hva biblioteket kan gjøre og hvordan du gjør det. For å gi slike eksempler, må vi endre bibliotekstrukturen der nå overskriften og kildefilen vil være i en "src" -mappe og en ny mappe vil bli lagt til under bibliotekroten kalt "eksempler".
Enhver Arduino -skisse du legger i denne mappen vil bli servert fra Arduino IDE som et eksempel for biblioteket ditt, og folk kan raskt utforske det og lære hvordan biblioteket fungerer.
Trinn 6: Publisering til Library Manager
For å bruke biblioteket må folk bare inkludere toppfilen til biblioteket i skissen, og Arduino IDE vil bygge den sammen med den. Men for å gjøre det må de først installere det på maskinene sine.
En vanlig måte er å laste ned biblioteket fra GitHub og installere det gjennom ZIP -installasjonsprogrammet i IDE eller ganske enkelt plassere det i bibliotekmappen slik vi gjorde da vi opprettet det. Arduino IDE inneholder imidlertid også et verktøy, kalt Library Manager, som lar deg søke etter et bibliotek direkte fra IDE.
For å inkludere biblioteket ditt i det, må vi først opprette en ekstra fil i rotmappen som heter "library.properties", og i den må vi spesifisere bibliotekets navn, den nåværende versjonen og litt tilleggsinformasjon som vil hjelpe biblioteksjefen for å vise bedre informasjon om det.
Med filen på plass må det opprettes et problem på Arduino GitHub -siden som bare ber om at biblioteket ditt skal inkluderes i indeksen med lenken til den, og når den er godkjent og lagt til av Arduino -personalet, vil biblioteksjefen begynn å tilby biblioteket ditt i resultatene. I tillegg vil lederen se etter eventuelle versjonskoder i GitHub -repoen i fremtiden og tilby en oppdatering til folk som bruker den når det er endringer.
Trinn 7: Neste trinn
Jeg håper at du etter denne Instructable har en bedre forståelse av hvordan Arduino -biblioteker fungerer, hvordan du kan lage en, og viktigst av alt, jeg håper at du blir inspirert til å begynne å jobbe med din neste store idé.
For ytterligere spørsmål eller forslag, skriv gjerne ned i kommentarene, abonner på YouTube -kanalen min og følg meg her på Instructables.
Anbefalt:
Lag GPS -GRENSER ved å bruke Arduino: 8 trinn
Lag GPS -GRENSER Ved å bruke Arduino: I denne opplæringen lærer vi hvordan du lager en GPS -GRENSE med Arduino, dette er nyttig når du har en robot og du ikke vil at den skal gå utenfor det angitte området. Når roboten er utenfor området , vil displayet vise "Utenfor"
Lag din egen kjørekommando med enkle trinn: 4 trinn
Lag din egen run -kommando med enkle trinn: Her viser jeg hvordan du kan lage din egen run -kommando i Windows OS. Egentlig er denne funksjonen i Windows flott, noe som er nyttig for å åpne applikasjonsvinduet umiddelbart. Så nå kan du også opprette kommandoen din for å åpne et hvilket som helst program ved å skrive inn
SIR (Sight Impairment Replicators): 4 trinn
SIR (Sight Impairment Replicators): Sight Impairment Replicators (SIR) er en måte for mennesker som blir svaksynte å lære hvordan deres blindhet vil påvirke dem i fremtiden. Googles skal kunne blokkere alt lys og skape et nesten perfekt mørke for bruk
Sett lag gratis videoer fra datamaskinen/Youtube til Sansa -spillere: 4 trinn
Sett lagervideoer fra datamaskinen/Youtube på Sansa -spillere: Sansa -videospillere opplever lydforsinkelse på de fleste videoer over 5 minutter. My Instructable vil lede deg gjennom trinnene for å sette Youtube -videoer og videoer på din egen datamaskin på din Sansa videospiller
Hvordan lage en laserpeker Red Dot Sight: 9 trinn
Hvordan lage en laserpeker Red Dot Sight: Dette er en instruksjon om hvordan du lager en laserpeker med rød prikk for å spille videospill. Dette er en praktisk måte å skyte våpenet ditt nøyaktig når de medfølgende severdighetene er vanskelige å sikte på, eller ikke er gitt. Jeg bruker