OpenThread nasıl oluşturulur?
OpenThread oluşturma adımları; araç zinciri, kullanıcı makinesi ve hedef platforma göre değişir.
En yaygın iş akışı şu şekildedir:
- Derleme ortamını ayarlayın ve istediğiniz araç zincirini yükleyin:
- Doğrudan bir makinede derlemek için ayrıntılı talimatlar için Simülasyon Kod Laboratuvarı'na bakın
- Önceden yapılandırılmış bir ortama sahip bir Docker container'ı kullanmak için OpenThread
environment
görüntüsünü indirip çalıştırın:docker pull openthread/environment:latest
docker run -it --rm openthread/environment bash
- Seçtiğiniz ortamda, platforma özgü OpenThread Git deposunu klonlayın. CC2538 örneğini inceleyelim:
git clone https://github.com/openthread/ot-cc2538.git --recursive
- Klonlanan deponun kök dizininden:
- Araç zincirini yükleyin:
./script/bootstrap
- Yapılandırmayı oluşturun:
./script/build platform-specific-args cmake-options
- Araç zincirini yükleyin:
- İstediğiniz ikili programı hedef platforma aktarın. Oluşturulan tüm ikili programlar
./build/bin
konumunda bulunur.
Yapılandırma
OpenThread işlevini, oluşturma işlemi sırasında farklı işlevler ve davranışlar için yapılandırabilirsiniz. Kullanılabilen yapılandırma seçenekleri aşağıdaki konumlarda ayrıntılı olarak açıklanmıştır:
Tür | Konum |
---|---|
Derleme zamanı sabitleri | /src/core/config içindeki tüm başlık dosyalarında listelenir |
cmake derleme seçenekleri | Liste: openthread/examples/README.md |
Derleme örnekleri
Platform için işlevleri etkinleştirmek üzere Cc derleme seçeneklerini kullanın. Örneğin, CC2538 platformu için komisyoncu ve birleşim desteği etkin şekilde ikili program oluşturmak üzere:
./script/build -DOT_COMMISSIONER=ON -DOT_JOINER=ON
Ayrıca, nRF52840 platformunu deposunda JamDetect özelliği etkin olacak şekilde oluşturmak için:
./script/build nrf52840 UART_trans -DOT_JAM_DETECTION=ON
İkili
./build/bin
ürününde derleme işleminden aşağıdaki ikili programlar oluşturulur. Hangi ikili programların oluşturulduğunu belirlemek için ./script/build
komutuyla işaretleri kullanın. Örneğin, OpenThread’ı derlemek ve yalnızca FTD CLI ikili programını oluşturmak için:
./script/build -DOT_APP_CLI=ON -DOT_FTD=ON -DOT_MTD=OFF -DOT_APP_NCP=OFF -DOT_APP_RCP=OFF -DOT_RCP=OFF
İkili | Açıklama | Seçenekler |
---|---|---|
ot-cli-ftd |
çip üzerinde sistem (SoC) tasarımları için tam Thread cihazı | -DOT_APP_CLI=ON -DOT_FTD=ON |
ot-cli-mtd |
çip üzerinde sistem (SoC) tasarımları için minimum Thread cihazı | -DOT_APP_CLI=ON -DOT_MTD=ON |
ot-ncp-ftd |
Ağ İşleyici (NCP) tasarımları için tam Thread cihazı | -DOT_APP_NCP=ON -DOT_FTD=ON |
ot-ncp-mtd |
NCP tasarımları için Minimum İleti Dizisi cihazı | -DOT_APP_NCP=ON -DOT_MTD=ON |
ot-rcp |
Radyo Ortak İşlemci (RCP) tasarımı | -DOT_APP_RCP=ON -DOT_RCP=ON |
Varsayılan olarak yukarıdaki tüm işaretler etkindir. Tüm işaretleri açıkça devre dışı bırakırsanız uygulamalar oluşturulmaz ancak OpenThread kitaplık dosyaları bir projede kullanılmak üzere ./build/lib
ürününde oluşturulmaya devam eder.
Her bir platformun hangi işaretleri desteklediğini görmek için examples/platforms
dizinine bakın. FTD ve MTD'ler hakkında daha fazla bilgi için Thread Primer bölümüne bakın. SoC ve NCP tasarımları hakkında daha fazla bilgi için Platformlar'a bakın.
Bu ikili programların yanıp sönme işlemi örnek platformlar arasında farklılık göstermektedir. Ayrıntılı talimatlar için her bir platformun örnek klasöründeki README’lere bakın.
OpenThread Arka Plan Programı
OpenThread Daemon (OT Daemon), hizmet olarak OpenThread'ı çalıştıran ve RCP tasarımıyla kullanılan bir OpenThread POSIX derleme modudur. Uygulama derleme ve kullanma hakkında daha fazla bilgi edinmek için OpenThread Daemon makalesine bakın.
Destek Paketleri Oluşturma
Derleme Destek Paketleri (BSP'ler) /third_party
içinde bulunur. BSP'ler, her bir ilgili platformda OpenThread tarafından kullanılan ek üçüncü taraf kodudur. Bu kod genellikle, OpenThread yeni bir donanım platformuna taşınırken dahil edilir.