Hello World サンプル
このセクションでは、T2 トポロジーベースのリポジトリ内で、最も単純な Hello World アプリケーションをビルドして実行する例を示します。 サンプルアプリケーションは Hello World sample にあります。
サンプルコードの説明
CMakeLists.txt
CMakeLists.txt ファイルは、アプリケーションディレクトリの直下に配置する必要があります。
# Copyright (c) 2025 Space Cubics Inc.
# SPDX-License-Identifier: Apache-2.0
cmake_minimum_required(VERSION 3.20.0)
find_package(Zephyr REQUIRED HINTS $ENV{ZEPHYR_BASE})
project(hello-world)
target_sources(app PRIVATE src/main.c)
ここでは、各アプリケーションごとに変更が必要となる箇所を説明します。
-
project: 任意のプロジェクト名を指定します
-
target_sources: ソースコードファイルを指定します
prj.conf
アプリケーションの実行に必要な追加の Kconfig パラメータを指定できます。 この Hello World アプリケーションでは追加パラメータは不要なので、空のままで問題ありません。
# nothing here
ソースコード
ソースコード自体は Zephyr が提供しているサンプルコードと同等ですが、表示するパラメータを変更しています。
Zephyr のサンプルコードでは CONFIG_BOARD_TARGET を表示していましたが、このサンプルではボード名 (CONFIG_BOARD) とリビジョン (CONFIG_BOARD_REVISION) を分けて表示しています。
/*
* Copyright (c) 2025 Space Cubics Inc.
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <stdio.h>
int main(void)
{
printf("Hello World! %s Rev %s\n", CONFIG_BOARD, CONFIG_BOARD_REVISION);
return 0;
}
CONFIG_ で始まる変数名には、Zephyr の Kconfig で指定されたパラメータが格納されています。すべての Kconfig パラメータを確認したい場合は、~/myproject/build/zephyr/.config ファイルを参照してください。
|
コンソールを開く
SC-OBC Module A1 と PC の間をケーブルで接続し、端末でコンソールを開いてください。
tio /dev/ttyUSB2
| Zephyr コンソールを使用するには、DIP スイッチ (SW1) の bit3 (RX) と bit4 (TX) を ON にする必要があります。現在 OFF の場合は、ON に切り替えてください。 |