Biblioteki Arduino – Część druga

Na drodze nauki każdego amatora elektroniki i programowania przychodzi czas na napisanie własnej biblioteki. Czynność ta może być spowodowana chęcią oczyszczenia kodu z niepotrzebnych funkcji oraz ułatwienia prac z nim lub chęcią podzielenia się swoim „dziełem” z innymi.

Najbardziej przydatne biblioteki to te, które ułatwiają współpracę Arduino z zewnętrznymi komponentami.

Zanim przystąpisz do pisania swojej biblioteki sprawdź czy już nie ma podobnej lub takiej samej.

Pisząc bibliotekę na Arduino możesz korzystać z klas oraz metod.
Ułatwia to bardzo proces tworzenia, ponieważ w późniejszym czasie osoba pisząca szkic będzie komunikować się z biblioteką przy użyciu metod publicznych a metody prywatne nie będą wykorzystywane, będą przechowywane wewnątrz biblioteki. Co uniemożliwi zmianę ich wartości z poziomu kodu Arduino. Jest to bardzo przydatna funkcja. Przekonasz się o tym pisząc swoją pierwszą bibliotekę.

Podstawowe kroki tworzenia biblioteki to
1. Określenie interfejsu programistycznego
2. Napisanie pliku nagłówkowego
3. Napisanie pliku implementacji
4. Napisanie pliku ze słowami kluczowymi
5. Stworzenie kilku przykładów.

Każda biblioteka to folder. Nazwa tego folderu powinna być taka sama jak nazwa klasy biblioteki. W folderze powinien znajdować się podfolder examples (przykłady) oraz plik keywords.txt czyli dokument tekstowy zawierający słowa kluczowe.

Określ interfejs programistyczny
Biblioteki mogą być obsługiwane przez użytkowników na dwa sposoby.

Biblioteki proste, w których wystarczy dodać bibliotekę do szkicu a następnie uzyskać dostęp do jej metod

W ten sposób używa się bibliotek przeznaczonych do tylko jednego urządzenia.

Jeżeli istnieje możliwość obsługi kilku urządzeń(na przykład biblioteka IR ma możliwość obsługi wielu typów pilotów) należy z niej korzystać w trochę inny sposób.

gdy póżniej chcesz skorzystać z portu szeregowego musisz użyć nazwy

Utwórz plik nagłówkowy

Plik nagłówkowy jest to plik z rozszerzeniem .h w pliku tym definiujemy nazwy klas i metod w bibliotece

polecenie #ifndef  chroni przed kilkukrotnym zaimportowaniem biblioteki

Kolejnym plikiem w bibliotece jest plik implementacyjny .cpp
W typ pliku implementujemy funkcje zdefiniowane w pliku nagłówkowym

 

Plik ze słowami kluczowymi nie jest konieczny jednak jest bardzo przydatny.
Umożliwia on środowisku programistycznemy oznaczanie kolorem fragmentów kodu, które są słowami kluczowymi biblioteki

 

Folder z przykładami także nie jest konieczny jednak jeżeli udostępnisz swoją bibliotekę w internecie może okazać się on bardzo przydatny dla osób korzystających z twojej biblioreki

Jeżeli chcesz udostępnić bibliotekę osobom z zewnątrz najlepiej dodaj jej do listy arduino lub udostępnij na serwisie GitHub/Google Code lub innym
Dzięki udostępnieniu biblioteki innym ludziom twoja biblioteka może zostać poprawiona oraz mogą zostać wyłapane błędy przez zewnętrznych użytkowników

Jeżeli stworzyłeś jakąś bibliotekę podziel się nią w komentarzu 😀