Utwórz OpenThread

Wyświetl źródło na GitHubie

Jak utworzyć OpenThread

Etapy kompilacji OpenThread różnią się w zależności od łańcucha narzędzi, komputera użytkownika i platformy docelowej.

Najczęstszy przepływ pracy to:

  1. Skonfiguruj środowisko kompilacji i zainstaluj odpowiedni łańcuch narzędzi:
    1. Aby przeprowadzić konfigurację bezpośrednio na komputerze, zapoznaj się ze szczegółowymi instrukcjami z symulatora ćwiczeń
    2. Aby użyć kontenera Dockera ze wstępnie skonfigurowanym środowiskiem, pobierz i uruchom obraz OpenThread environment:
      docker pull openthread/environment:latest
      docker run -it --rm openthread/environment bash
      
  2. W wybranym środowisku skopiuj repozytorium OpenThread Git. Biorąc pod uwagę CC2538 jako przykład:
    git clone https://github.com/openthread/ot-cc2538.git --recursive
    
  3. Z kopiowanego repozytorium & katalogu głównego:
    1. Zainstaluj łańcuch narzędzi:
      ./script/bootstrap
      
    2. Utwórz konfigurację:
      ./script/build platform-specific-args cmake-options
      
  4. Umieść odpowiedni plik binarny na platformie docelowej. Wszystkie wygenerowane pliki binarne są dostępne w ./build/bin.

Konfiguracja

W trakcie kompilacji możesz skonfigurować OpenThread pod kątem różnych funkcji i zachowań. Dostępne opcje konfiguracji znajdziesz w tych lokalizacjach:

Typ Lokalizacja
Stałe w czasie kompilacji Wymieniony we wszystkich plikach nagłówka w /src/core/config
opcje kompilacji Cmake Jest na liście openthread/examples/README.md

Przykłady kompilacji

Użyj opcji kompilacji cmake, aby włączyć funkcje na platformie. Aby na przykład utworzyć plik binarny dla platformy CC2538 z włączoną obsługą „komisarza” i fachowca:

./script/build -DOT_COMMISSIONER=ON -DOT_JOINER=ON

Aby utworzyć platformę nRF52840 z włączoną repozytorium Jamu w repozytorium:

./script/build nrf52840 UART_trans -DOT_JAM_DETECTION=ON

Pliki cookie

Te pliki binarne zostały wygenerowane w ./build/bin podczas procesu kompilacji. Aby określić, które pliki binarne mają być generowane, użyj flag za pomocą polecenia ./script/build. Aby na przykład utworzyć OpenThread i wygenerować tylko plik binarny CLI FTD:

./script/build -DOT_APP_CLI=ON -DOT_FTD=ON -DOT_MTD=OFF -DOT_APP_NCP=OFF -DOT_APP_RCP=OFF -DOT_RCP=OFF
Binarne Opis Opcje
ot-cli-ftd Kompaktowe urządzenie do projektowania soc -DOT_APP_CLI=ON
-DOT_FTD=ON
ot-cli-mtd Minimalistyczne urządzenie do SOC -DOT_APP_CLI=ON
-DOT_MTD=ON
ot-ncp-ftd Urządzenie z wątkiem typu procesor sieciowy (NCP) -DOT_APP_NCP=ON
-DOT_FTD=ON
ot-ncp-mtd Minimalistyczne urządzenie do projektowania NCP -DOT_APP_NCP=ON
-DOT_MTD=ON
ot-rcp Projektowanie RCP -DOT_APP_RCP=ON
-DOT_RCP=ON

Domyślnie wszystkie powyższe flagi są włączone. Jeśli wyraźnie wyłączysz wszystkie flagi, aplikacje nie zostaną utworzone, ale pliki biblioteki OpenThread będą generowane w aplikacji ./build/lib na potrzeby projektu.

Przyjrzyj się przykładowym elementom Makefiles dla każdej platformy i sprawdź, które flagi działają na poszczególnych platformach. Więcej informacji o FTD i MTD znajdziesz w Thread Primer. Więcej informacji o projektach soc i NCP znajdziesz w artykule Platformy.

Proces ten wygląda inaczej na różnych przykładowych platformach. Szczegółowe instrukcje znajdziesz w README na każdej platformie.

Demon demo OpenThread

Daemon OpenThread (OT Daemon) to tryb kompilacji POSIX OpenThread, który uruchamia OpenThread jako usługę i jest używany w projekcie RCP. Więcej informacji o tworzeniu i korzystaniu z tego narzędzia znajdziesz w dokumencie OpenThread Deemon.

Pakiety pomocy dla programistów

Pakiety pomocy do kompilacji (BSP) znajdziesz w /third_party. BSP to dodatkowy kod innej firmy wykorzystywany przez OpenThread na każdej platformie, który jest zazwyczaj uwzględniany podczas przenoszenia OpenThread na nową platformę sprzętową.