Arduinos Biblioteker
Denne beskrivelse er lavet ud fra Arduinos beskrivelse af biblioteker[1] på deres egen side.
Standard biblioteker
Det er en fordel IKKE at pille ved standard bibliotekerne.
Som standard ligger der en del biblioteker installeret sammen med Arduinos PC program som standard indstillinger.
Tilføjelse af biblioteker
Man kan tilføje biblioteker (testet i version 1.6.4) ved at gå ind i "Sketch - Include Library - Manage Libraries...", hvor man kan finde en del biblioteker, som downloades fra nettet, eller hvis man har en zip-fil med et bibliotek, så kan man gå ind i "Sketch - Include Library - Add .ZIP Library..." - i begge tilfælde placeres biblioteket inde i den korrekte struktur og kan anvendes direkte.
Hvert bibliotek ligger i sin egen mappe, og navnet på biblioteket skal være det samme som den mappe det ligger inde i, og den mappestruktur der er inde i biblioteket angiver.
Som det er angivet på figuren her til højre, så ligger de biblioteker man selv ønsker at tilføje inde i Dokumenter\Arduino\libraries\, hvor der i dette eksempel kun er tilføjet et Keypad bibliotek.
Et bibliotek vil normalt være skrevet i C eller C++ og vil kunne lette tilgangen til et stykke hardware som et display eller et tastatur.
Anvendelse af biblioteker
Det letteste måde at anvende et bibliotek på er at man i IDE'et går ind i "Sketch" - "Library" og vælger det bibliotek man ønsker at tilføje. Dette vil give en linje som vist her:
#include <Keypad.h>
Til mange biblioteker er det ikke altid nok for at forstå hvordan man anvender bibilioteket, her vil de fleste biblioteker komme med et eller flere eksempler.
Har man lagt biblioteket rigtigt ind, så vil man kunne finde eksemplerne inde under "Fil" - "Eksempler" - "det relevante bibliotek".
Uautorisert måde at lægge biblioteker ind på
Hvis man har administratorrettigheder, så kan man tilføje biblioteker inde sammen med standard bibliotekerne. Denne metode anbefales ikke.
Steder at finde biblioteker
Der er mange biblioteker [2] på Arduinos hjemmeside.
Et andet sted hvor der ligger rigtigt meget er på githum.com[3]. Det kan være svært at navigere i stedet for at finde frem til relevante biblioteker, men man kan tit google sig frem ktil gode resultater ved at tilføje "github arduino library" til sin søgning efter noget hardware man ikke har kunnet finde på Arduinos side
At skrive sine biblioteker selv
Man kan også selv skrive og udvikle biblioteker[4], og hvis man syntes man har skrevet et godt bibliotek kan man også poste det f.x. i Arduinos forum[5] så andre får glæde af arbejdet.
Hvis man ønsker at skrive et bibliotek, så er det en god ide at kende strukturen i hvordan man skriver et bibliotek, da man skal skrive C++ kode, og man skal regne syntaksen i class-definitionen ud, som i sin grundlæggende struktur bliver beskrevet på Arduinos side[4]. Eksemplet her er dog meget simpelt, så hvis man vil ud i noget der er mere avanceret, så er det en god ide at kigge i andre lidt større eksempler, gerne fra Arduinos egen hjemmeside.
Som vist herunder, så indeholder et bibliotek flere elementer, og det kan gøres mere eller mindre avanceret. Her vises et eksempel på Keypad-biblioteket:
Oversigt over Keypad biblioteket
Der er en del ting der er værd at bemærke:
- keypad mappen ligger i mappen libraries
- De to filer keypad.cpp (C++ filen) og keypad.h (include-filen) skal hedde det samme som mappen
- keywords.txt indeholder de ord der skal syntaksfarves når man anvender biblioteket
- mappen examples indeholder som man kan se 7 forskellige eksempler på hvordan keypad kan bruges
- i dette eksempel er der mappen utility, som indeholder en class-fil der anvendes inde i keypad
Ens eget bibliotek behøves ikke være så omfattende, men som minimum et eksempel der viser bruget af biblioteket, og som er skrevet så man kan se strukturen i hvordan man anvender biblioteket.
Ekstern hjælp til at skrive biblioteker
På Arduinos hjemmeside er der skrevet forskellig hjælp til at oprette sine egne biblioteker.
Selve indholdet i biblioteket er forklaret på Library Tutorial[6]. Forklaringen har ikke så meget fokus på strukturen i biblioteket, og man skal læse siden godt igennem, for at kunne se hvor de forskellige dele skal placeres i de forskellige filer.
For at få styr på hvordan koden fordeles i de forskellige filer kan det være lettest at kigge på et eksempel, hvor der på Arduino Libraries[1] er lavet et test eksempel nederst på siden, som illustrerer strukturen, men ikke har nogen egentlig funktion.
Hvis man vil dele sit bibliotek med andre er gitHub.com et godt sted. For at optræde fornuftigt på gitHub er det en god ide at sikre sig at biblioteket både fungerer ordentligt og er veldokumenteret - se hvordan forskellige andre gør det. Når man har et bibliotek som er værd at dele, så kan man få hjælp til at uploade ved gitHub[7] eller en anden guide[8]. Man kan også kigge på andre måder at dele softwaren på ud fra beskrivelsen på Arduinos playground[9].
Referencer
- ↑ 1,0 1,1 Arduino Libraries - Beskrivelse af hvordan man arbejder generelt med biblioteker
- ↑ http://playground.arduino.cc/Main/LibraryList Liste over de forskellige biblioteker man kan hente fra Arduinos hjemmeside
- ↑ site til samarbejde omkring software
- ↑ 4,0 4,1 http://playground.arduino.cc/Code/Library Beskrivelse af hvordan biblioteker skal skrives
- ↑ Arduinos forum
- ↑ Library Tutorial
- ↑ Beskrivelse af hvordan man lægger sit første bidrag op
- ↑ akrabat.com guide to gitHub
- ↑ Forskellige deling af biblioteker