Cách xây dựng OpenThread
Các bước tạo OpenThread khác nhau tuỳ thuộc vào chuỗi công cụ, máy người dùng và nền tảng mục tiêu.
Quy trình công việc phổ biến nhất là:
- Thiết lập môi trường tạo bản dựng và cài đặt chuỗi công cụ mong muốn:
- Để xây dựng trực tiếp trên máy, hãy xem Lớp học lập trình mô phỏng để biết hướng dẫn chi tiết
- Để sử dụng vùng chứa Docker với môi trường được định cấu hình sẵn,
tải xuống và chạy hình ảnh OpenThread
environment
:docker pull openthread/environment:latest
docker run -it --rm openthread/environment bash
- Trong môi trường bạn chọn, hãy sao chép kho lưu trữ OpenThread Git dành riêng cho nền tảng. Lấy CC2538 làm ví dụ:
git clone https://github.com/openthread/ot-cc2538.git --recursive
- Từ thư mục gốc của kho lưu trữ đã sao chép:
- Cài đặt chuỗi công cụ:
./script/bootstrap
- Tạo cấu hình:
./script/build platform-specific-args cmake-options
- Cài đặt chuỗi công cụ:
- Cài đặt ROM tệp nhị phân mong muốn vào nền tảng mục tiêu. Tất cả tệp nhị phân đã tạo đều
đặt tại
./build/bin
.
Cấu hình
Bạn có thể định cấu hình OpenThread cho các chức năng và hành vi khác nhau trong quá trình quá trình tạo bản dựng. Các lựa chọn cấu hình hiện có được nêu chi tiết tại vị trí:
Loại | Vị trí |
---|---|
Hằng số thời gian biên dịch | Được liệt kê trong tất cả tệp tiêu đề trong /src/core/config |
các tuỳ chọn bản dựng cmake | Được liệt kê trong openthread/examples/README.md |
Ví dụ về bản dựng
Sử dụng các tuỳ chọn bản dựng cmake để bật chức năng cho nền tảng. Ví dụ: để tạo tệp nhị phân cho nền tảng CC2538 khi bật dịch vụ hỗ trợ của Uỷ viên và Người tham gia:
./script/build -DOT_COMMISSIONER=ON -DOT_JOINER=ON
Hoặc để xây dựng nền tảng nRF52840 với công nghệ Phát hiện nhiễu tính năng được bật trong repo của mình:
./script/build nrf52840 UART_trans -DOT_JAM_DETECTION=ON
Tệp nhị phân
Các tệp nhị phân sau đây được tạo trong ./build/bin
trong quy trình xây dựng. Để xác định tệp nhị phân nào được tạo, hãy sử dụng cờ bằng lệnh ./script/build
. Ví dụ: để tạo OpenThread và chỉ tạo tệp nhị phân FTD CLI:
./script/build -DOT_APP_CLI=ON -DOT_FTD=ON -DOT_MTD=OFF -DOT_APP_NCP=OFF -DOT_APP_RCP=OFF -DOT_RCP=OFF
Tệp nhị phân | Mô tả | Tùy chọn |
---|---|---|
ot-cli-ftd |
Thiết bị dùng luồng đầy đủ cho các thiết kế SoC | -DOT_APP_CLI=ON -DOT_FTD=ON |
ot-cli-mtd |
Thiết bị Thread tối thiểu cho các thiết kế SoC | -DOT_APP_CLI=ON -DOT_MTD=ON |
ot-ncp-ftd |
Thiết bị luồng đầy đủ dành cho thiết kế Bộ đồng xử lý mạng (NCP) | -DOT_APP_NCP=ON -DOT_FTD=ON |
ot-ncp-mtd |
Thiết bị Thread tối thiểu cho các thiết kế NCP | -DOT_APP_NCP=ON -DOT_MTD=ON |
ot-rcp |
Thiết kế Bộ đồng xử lý vô tuyến (RCP) | -DOT_APP_RCP=ON -DOT_RCP=ON |
Theo mặc định, tất cả cờ ở trên đều được bật. Nếu bạn tắt tất cả các cờ một cách rõ ràng, các ứng dụng sẽ không
nhưng các tệp thư viện OpenThread vẫn được tạo trong ./build/lib
để sử dụng trong dự án.
Kiểm tra thư mục examples/platforms
để xem cờ nào của mỗi nền tảng
Google Cloud. Để biết thêm thông tin về FTD và MTD, hãy xem
Cẩm nang chủ đề. Cho
để biết thêm thông tin về các thiết kế SoC và NCP, hãy xem bài viết Nền tảng.
Quy trình cài đặt ROM những tệp nhị phân này sẽ khác nhau tuỳ theo nền tảng mẫu. Xem README trong mỗi nền tảng thư mục mẫu để xem hướng dẫn chi tiết.
Trình nền OpenThread
OpenThread Daemon (OT Daemon) là một chế độ bản dựng OpenThread POSIX có thể chạy OpenThread làm dịch vụ và được dùng với thiết kế RCP. Để biết thêm thông tin về cách tạo và sử dụng thuộc tính này, hãy xem phần OpenThread Daemon.
Xây dựng gói hỗ trợ
Tìm thấy các Gói hỗ trợ xây dựng (BSP) trong
/third_party
. {/9}s là mã bổ sung của bên thứ ba mà OpenThread sử dụng trên từng nền tảng tương ứng, thường được đưa vào khi chuyển OpenThread sang nền tảng phần cứng mới.