Jak utworzyć niestandardową bibliotekę Arduino?

Jak utworzyć niestandardową bibliotekę Arduino?
Budowanie projektów z Arduino wymaga zintegrowania zewnętrznego sprzętu, a większość sprzętu, którego używamy z Arduino, ma z nimi biblioteki, które pomagają kontrolować te moduły bez zapisywania dla nich nowego kodu. Wyobraź sobie, że napisz kod do kontrolowania wyświetlacza LCD ciekłokrystalicznego lub poruszania silnika serwomechanizmu.

Będzie to wymagało szerokiej ilości pracy, zanim zaczniemy od naszego projektu. Chociaż dostępna jest szeroka gama bibliotek typu open source, czasami musimy napisać niestandardową bibliotekę, aby ten przewodnik pomoże ci pisać swoją pierwszą bibliotekę Arduino.

Jak utworzyć niestandardową bibliotekę Arduino

Biblioteki są zwykle pisane w języku c/c ++, więc aby napisać biblioteki Arduino, potrzebujemy solidnej wiedzy o funkcjach i klasach. Biblioteki to kilka .Pliki CPP połączone w celu uruchomienia jednego sprzętu. Biblioteki sprawiają, że programowanie Arduino jest łatwiejsze i wydajne. Nie musimy pisać nowego kodu za każdym razem, gdy używamy sprzętu. Biblioteki to świetny sposób na udostępnianie kodów, które oszczędzają dużo czasu i kosztów.

Ponieważ Arduino jest platformą typu open source, społeczność Arduino stworzyła tysiące bibliotek. Ale wciąż jest miejsce na napisanie nowych bibliotek lub jeśli zamierzasz zamienić projekt Arduino w produkt, to może być konieczne napisanie osobnej biblioteki dla jego sprzętu.

Zanim przejdziemy do przodu, przejrzyjmy krótką recenzję podstawowej struktury biblioteki Arduino.

Biblioteka zazwyczaj składa się z:

  • Plik nagłówka (.H): Zawiera definicje biblioteki.
  • Plik źródłowy (.CPP): Zawiera kod biblioteki.
  • Plik słów kluczowych (.tekst): Ten plik wyjaśnia słowa kluczowe używane w bibliotece.
  • Plik Readme (.tekst): Zawiera dodatkowe informacje związane z biblioteką Arduino.
  • Przykłady (INO): Przykłady pomagają użytkownikom obsługiwać bibliotekę.

Wszystkie te pliki pomagają użytkownikom zrozumieć i obsługiwać biblioteki w Arduino.

plik nagłówka (.H) I Plik źródłowy(.CPP) są dwa niezbędne pliki potrzebne do obsługi biblioteki Arduino. Wszystkie inne pliki to dodatek, który daje użytkownikom niezbędne informacje, takie jak to, co robi ta biblioteka lub kto jest pisarzem tej biblioteki.

Teraz utworzymy nową bibliotekę .H I .CPP plik.

Krok 1: Utwórz przykładowy kod

Krok 2: Utwórz nagłówek biblioteki i plik źródłowy

Krok 3: Dodanie niestandardowej biblioteki w Arduino IDE

Krok 4: Wywołanie niestandardowej biblioteki w kodzie Arduino

Krok 1: Utwórz przykładowy kod

I: Napisz prosty kod w edytorze Arduino IDE, który weźmie dwie liczby i zsumuje oba liczby, aby pokazać wynik w monitor szeregowych:

int sum (int a, int b)

zwrócić A + B;

void Setup ()

Seryjny.rozpocząć (9600);
int odpowiedź = suma (1,2);
Seryjny.println (odpowiedź);

void Loop ()

Skompiluj powyższy kod następujące wyjście pojawi się w oknie wyjściowym. Wyjście wydrukuje sumę dwóch liczb 1 i 2.

II: Po zapisaniu kodu w IDE Zapisz kod, chodząc Zapisz jako opcja pod Plik menu:

Nowe okno otworzy się, utwórz nowy folder MOJA BIBLIOTEKA i zapisz plik Arduino w tym folderze.

Po utworzeniu nowego folderu biblioteki zobaczysz nowy .ja nie plik tam. W tym pliku wywołamy bibliotekę niestandardową i przetestujemy jej wyjście.

Krok 2: Utwórz nagłówek biblioteki i plik źródłowy

I: Teraz utwórz dwa główne pliki biblioteki, które są nagłówkiem i plik źródłowym. Aby zrobić tę prasę „Ctrl+Shif+N” lub kliknij ikonę elipsy po prawej stronie IDE, a następnie kliknij Nowa karta:

II: Nowe okno otworzy się tutaj i zapisze nazwę plików, które chcemy utworzyć. Typ Moja Biblioteka.CPP I Moja Biblioteka.H Aby utworzyć odpowiednio plik źródłowy i nagłówka:

III: Po utworzeniu dwóch nowych plików interfejs IDE będzie wyglądał tak. Następnym krokiem jest napisanie kodu dla plików źródłowych i nagłówków, abyśmy mogli wywołać własną bibliotekę niestandardową w głównym pliku kodu.

Kod pliku nagłówka

Najpierw utworzymy plik nagłówka dla biblioteki niestandardowej Arduino. Wpisz kod poniżej wewnątrz ".H" plik.

#ifndef my_library_h
#definicja my_library_h
#włączać
int sum (int a, int b);
#endif

Jest to ogólna składnia do pisania kodu dla biblioteki Arduino #endif oświadczenie. Zwykle, pisząc nazwę strażnika nagłówka, lepiej pisać w literach górnych i dodać "_H" Na końcu nazwy.

Następnie konieczne jest dodanie biblioteki Arduino, ponieważ biblioteka może wymagać użycia niektórych funkcji Arduino. W naszym głównym programie zwykle jest on domyślnie dodawany, ale pisząc niestandardową bibliotekę musimy sami uwzględnić. Następnie stworzyliśmy zmienną "SUMA" To zostanie wywołane przez nasz plik źródłowy .CPP wewnątrz funkcji.

Kod pliku źródłowego

Nasz plik nagłówka jest gotowy, teraz przejdziemy do tworzenia kodu źródłowego (.CPP plik). Wpisz poniżej kod w pliku źródłowym:

#include "my_library.H"
int sum (int a, int b)

zwrócić A + B;

Tutaj, w powyższym kodzie, zaczęliśmy od wywołania pliku nagłówka za pomocą #włączać dyrektywa. Plik nagłówka zawiera opisowe komentarze zawierają pliki takie jak (#include), niektóre stałe definicje i klasy zawierające różne funkcje i zmienne, które wywołujemy w naszej bibliotece.

Krok 3: Dodanie niestandardowej biblioteki w Arduino IDE

Po utworzeniu biblioteki Arduino następnym krokiem jest dodanie jej do Arduino IDE, abyśmy mogli to wywołać w dowolnym kodzie. Aby wykonać ten folder zawierający nagłówek biblioteki i kod źródłowy, wklej ten folder w katalogu biblioteki Arduino. Ścieżka folderu katalogu Arduino będzie wyglądać tak: Dokumenty> Arduino> Biblioteki:

Po dodaniu biblioteki do Arduino IDE. Możemy to nazwać w dowolnym kodzie, przechodząc do: Szkic> Dołącz bibliotekę> my_library:

Otwórz pusty szkic Arduino i spróbuj zadzwonić do biblioteki, którą właśnie utworzyłeś kod będzie wyglądał tak:

Z powodzeniem utworzyliśmy bibliotekę do obliczania suma dwóch liczb całkowitych i nazwaliśmy ją w kodzie Arduino.

Krok 4: Wywołanie niestandardowej biblioteki w kodzie Arduino

Ponieważ nasza biblioteka Arduino jest teraz zakończona, napiszemy ten sam powyższy kod sum. Wpisz następujący kod w IDE:

#include "my_library.H"
void Setup ()

Seryjny.rozpocząć (9600);
int wynik = suma (1,2);
Seryjny.println (wynik);

void Loop ()

W powyższym kodzie najpierw uwzględniliśmy "Moja Biblioteka.H" Następnie w części konfiguracji rozpoczęliśmy komunikację seryjną. Zmienna następnego wyniku zostanie wywołana, a suma dwóch liczb zostanie wydrukowana na monitorze szeregowym, wywołując funkcję wyniku z biblioteki .CPP plik. Wzywając niestandardową bibliotekę w Arduino .ja nie Plik upewnij się, że użyj dokładnie takiej samej nazwy pliku, jak nazwałeś plik nagłówka.

Po skompilowaniu kodu ten sam wynik jest wydrukowany jak nasz poprzedni kod. Tutaj kod jest bardziej zoptymalizowany za pomocą osobnej biblioteki.

Jak udostępnić bibliotekę niestandardową Arduino

Aby udostępnić bibliotekę Arduino najpierw otwórz folder, w którym dwa główne pliki z .CPP I .H Format jest zapisany. Folder szkicu może być otwarty, przechodząc do: Szkic> Pokaż folder szkicu.

Tutaj otworzy się nowe okno, w którym można zobaczyć wszystkie pliki biblioteki. Aby udostępnić biblioteki najpierw kompresuj te pliki i udostępnić je za pomocą pliku ZIP:

Wniosek

Arduino ma szeroką gamę bibliotek typu open source, ale czasami potrzebujemy niestandardowej biblioteki, aby zwiększyć naszą wydajność projektu lub zoptymalizować kod. W tym artykule obejmuje wszystkie niezbędne kroki potrzebne do napisania własnego kodu biblioteki. Wymagane są głównie dwa pliki dla plików biblioteki Arduino, źródła i nagłówka. Oba te pliki można utworzyć zgodnie z krokami wymienionymi w tym przewodniku.