SDKで起動

注釈

サードパーティ アプリケーションの開発は UDK1 の提供範囲外であるため、プリペイドの UDK1 サポートの一部ではないことに注意してください。

このセクションでは、Zephyr RTOSプラットフォーム用に設計されたLEAPSサンプルプロジェクトの選択および起動に関する包括的なガイダンスを提供します。これらのサンプルは、UWB(Ultra-Wideband)技術 とUDK1キットの ハードウェアインターフェイス をより深く理解するためのものです。

これらの知識を活用すれば、UDK1 キットでカスタム アプリケーションを自信を持って開発することができます。

ガイダンスは以下の手順で行われます:

  1. Linux、macOS、または Windows 上で Zephyr RTOS 用の開発環境をセットアップします。

  2. Zephyr ベースのサンプルアプリケーションパッケージであるUDK1のSDKを入手する。

  3. ホストPCへのデバイスの接続と必要なツール。

  4. サンプル・アプリケーションを選択し、ビルド、フラッシュ、実行します。


ゼファー入門ガイド

このガイドに従ってください:

  • Ubuntu、macOS、Windows上でコマンドラインZephyr開発環境をセットアップする (他のLinuxディストリビューションの手順は installation_linux で説明されています)

  • ZephyrのSDKパッケージ(必要なツールチェーンを含む)をインストールする。

OS の選択と更新

お使いのOSをクリックしてください。

このガイドはUbuntuバージョン20.04 LTS以降を対象としています。

sudo apt update
sudo apt upgrade

macOS Mojave以降では、システム環境設定 > ソフトウェア・アップデート を選択します。必要に応じて、 今すぐ更新 をクリックします。

他のバージョンについては、この Apple サポートトピック を参照してください。

スタート > 設定 > 更新とセキュリティ > Windows Updateを選択します更新プログラムのチェック をクリックし、利用可能なすべての更新プログラムをインストールします。

依存関係のインストール

次に、パッケージマネージャーを使ってホストの依存関係をいくつかインストールします。

主な依存関係の現在の最小必要バージョンは以下の通りです:

ツール

最小 バージョン

CMake

3.20.5

Python

3.10

Devicetreeコンパイラ

1.4.6

  1. 22.04より古いバージョンのUbuntuを使用している場合、上記の主な依存関係の最低必要バージョンを満たすために、追加のリポジトリを追加する必要があります。その場合、Kitware APT リポジトリをソースリストに追加するために、Kitware アーカイブスクリプトをダウンロード、検査、実行してください。kitware-archive.sh の詳細な説明は、こちら kitware third-party apt repository にあります:

    wget https://apt.kitware.com/kitware-archive.sh
    sudo bash kitware-archive.sh
    
  2. 必要な依存関係をインストールするには apt を使ってください:

    sudo apt install --no-install-recommends git cmake ninja-build gperf \
      ccache dfu-util device-tree-compiler wget minicom \
      python3-dev python3-pip python3-setuptools python3-tk python3-wheel xz-utils file \
      make gcc gcc-multilib g++-multilib libsdl2-dev libmagic1
    
  3. システムにインストールされている主な依存関係のバージョンを入力して確認してください:

    cmake --version
    python3 --version
    dtc --version
    

    このセクションの最初にある表のバージョンと照らし合わせてください。手動で依存関係を更新するための追加情報については installation_linux page を参照してください。

  1. Homebrew をインストールしてください:

    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
    
  2. Homebrew インストールスクリプトが完了したら、画面の指示に従って Homebrew インストールをパスに追加してください。

    • Apple Silicon上で動作するmacOSでは、次のようにします:

      (echo; echo 'eval "$(/opt/homebrew/bin/brew shellenv)"') >> ~/.zprofile
      source ~/.zprofile
      
    • Intel 上で動作している macOS では、Apple Silicon 用のコマンドを使用しますが、/opt/homebrew//usr/local/ に置き換えてください。

  3. 必要な依存関係をインストールするには brew を使用してください:

    brew install cmake ninja gperf python3 ccache qemu dtc libmagic wget openocd minicom
    
  4. python3pip3 を実行できるように、Homebrew Python フォルダをパスに追加してください。

    (echo; echo 'export PATH="'$(brew --prefix)'/opt/python/libexec/bin:$PATH"') >> ~/.zprofile
    source ~/.zprofile
    

注釈

実行ファイルが見つからないという問題があるため、Zephyr Project は現在 Windows Subsystem for Linux (WSL) (WSL) を使ったアプリケーションのフラッシュをサポートしていません。

そのため、Zephyrを始めるときにWSLを使うことはお勧めしません。

これらの手順は cmd.exe コマンドプロンプトのターミナルウィンドウで実行する必要があります。Windowsの最新バージョン(10以降)では、マイクロソフトストアからWindowsターミナルアプリケーションをインストールすることをお勧めします。必要なコマンドはPowerShellによって異なります。

これらの手順は Chocolatey に依存しています。Chocolateyが使えない場合は、それぞれのウェブサイトから依存関係をインストールし、コマンドラインツールが PATH environment variable にあることを確認してください。

  1. Install chocolatey

  2. 管理者 として cmd.exe ターミナルウィンドウを開きます。Windows キーを押しながら cmd.exe と入力し、 Command Prompt の検索結果を右クリックし、 Run as Administrator を選択する。

  3. グローバル確認を無効にすると、個々のプログラムのインストールを確認する必要がなくなります:

    choco feature enable -n allowGlobalConfirmation
    
  4. 必要な依存関係をインストールするには choco を使ってください:

    choco install cmake --installargs 'ADD_CMAKE_TO_PATH=System'
    choco install ninja gperf python311 git dtc-msys2 wget 7zip unzip
    

    警告

    2023年11月現在、Python 3.12はWindowsでのZephyr開発には推奨されていません。

  5. ターミナ

Westのインストール

WestZephyr 用の swiss-army knife コマンドラインツールです:

  1. Python venv パッケージをインストールするには apt を使用してください:

    sudo apt install python3-venv
    
  2. 新しい仮想環境を作成します:

    python3 -m venv ~/udk1-sdk/.venv
    
  3. 仮想環境をアクティブにします:

    source ~/udk1-sdk/.venv/bin/activate
    

    仮想環境をアクティブにする: 激虚虚拟环境: msgid: 一度アクティブにすると、シェルの先頭に (.venv) が付きます。仮想環境は deactivate を実行することでいつでも無効化できます。

    注釈

    作業を開始するたびに仮想環境を有効にすることを忘れないでください。

  4. ウェストをインストールする

    pip install west
    

west をインストールし、~/.local/binPATH environment variable にあることを確認してください:

pip3 install --user -U west
echo 'export PATH=~/.local/bin:"$PATH"' >> ~/.bashrc
source ~/.bashrc
  1. 新しい仮想環境を作成します:

    python3 -m venv ~/udk1-sdk/.venv
    
  2. 仮想環境をアクティブにします:

    source ~/udk1-sdk/.venv/bin/activate
    

    仮想環境をアクティブにする: 激虚虚拟环境: msgid: 一度アクティブにすると、シェルの先頭に (.venv) が付きます。仮想環境は deactivate を実行することでいつでも無効化できます。

    注釈

    作業を開始するたびに仮想環境を有効にすることを忘れないでください。

  3. ウェストをインストールする

    pip install west
    

ウェストをインストールする

pip3 install -U west
  1. ターミナルウィンドウ cmd.exe を開きます 一般ユーザー として

  2. 新しい仮想環境を作成します:

    cd %HOMEPATH%
    python -m venv udk1-sdk\.venv
    
  3. 仮想環境をアクティブにします:

    udk1-sdk\.venv\Scripts\activate.bat
    

    仮想環境をアクティブにする: 激虚虚拟环境: msgid: 一度アクティブにすると、シェルの先頭に (.venv) が付きます。仮想環境は deactivate を実行することでいつでも無効化できます。

    注釈

    作業を開始するたびに仮想環境を有効にすることを忘れないでください。

  4. ウェストをインストールする

    pip install west
    
  1. ターミナルウィンドウ cmd.exe を開きます 一般ユーザー として

  2. ウェストをインストールする

    pip3 install -U west
    

Zephyr SDK をインストールする。

注釈

SDKをアンインストールしたい場合は、SDKをインストールしたディレクトリを削除してください。

  1. Zephyr SDK bundle をダウンロードして確認してください:

    cd ~
    wget https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.14.2/zephyr-sdk-0.14.2_linux-x86_64.tar.gz
    wget -O - https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.14.2/sha256.sum | shasum --check --ignore-missing
    

    ホストアーキテクチャが 64-bit ARM (例: Raspberry Pi) の場合、64-bit ARM Linux SDK をダウンロードするには x86_64aarch64 に置き換えてください。

  2. Zephyr SDK バンドルアーカイブを解凍してください:

    tar xvf zephyr-sdk-0.14.2_linux-x86_64.tar.gz
    

    注釈

    Zephyr SDK バンドルは以下のいずれかの場所で展開することをお勧めします:

    • $HOME

    • $HOME/.local

    • $HOME/.local/opt

    • $HOME/bin

    • /opt

    • /usr/local

    Zephyr SDK バンドルアーカイブには zephyr-sdk-<version> ディレクトリが含まれており、$HOME の下に展開すると、インストールパスは $HOME/zephyr-sdk-<version> になります。

  3. Zephyr SDK バンドルセットアップスクリプトを実行してください:

    cd zephyr-sdk-0.14.2
    ./setup.sh
    

    注釈

    Zephyr SDK バンドルを展開した後、セットアップスクリプトを一度だけ実行する必要があります。

    初期セットアップ後に Zephyr SDK バンドルディレクトリを再配置した場合は、セットアップスクリプトを再実行する必要があります。

  4. udev ルールをインストールすると、ほとんどの Zephyr ボードを一般ユーザーとしてフラッシュできるようになります:

    sudo cp ~/zephyr-sdk-0.14.2/sysroots/x86_64-pokysdk-linux/usr/share/openocd/contrib/60-openocd.rules /etc/udev/rules.d
    sudo udevadm control --reload
    
  1. Zephyr SDK bundle をダウンロードして確認してください:

    cd ~
    curl -L -O https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.14.2/zephyr-sdk-0.14.2_macos-x86_64.tar.gz
    curl -L https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.14.2/sha256.sum | shasum --check --ignore-missing
    

    ホストアーキテクチャが64-bit ARM (Apple Silicon, M1としても知られています) の場合、64-bit ARM macOS SDKをダウンロードするために x86_64aarch64 に置き換えてください。

  2. Zephyr SDK バンドルアーカイブを解凍してください:

    tar xvf zephyr-sdk-0.14.2_macos-x86_64.tar.gz
    

    注釈

    Zephyr SDK バンドルは以下のいずれかの場所で展開することをお勧めします:

    • $HOME

    • $HOME/.local

    • $HOME/.local/opt

    • $HOME/bin

    • /opt

    • /usr/local

    Zephyr SDK バンドルアーカイブには zephyr-sdk-<version> ディレクトリが含まれており、$HOME の下に展開すると、インストールパスは $HOME/zephyr-sdk-<version> になります。

  3. Zephyr SDK バンドルセットアップスクリプトを実行してください:

    cd zephyr-sdk-0.14.2
    ./setup.sh
    

    注釈

    Zephyr SDK バンドルを展開した後、セットアップスクリプトを一度だけ実行する必要があります。

    初期セットアップ後に Zephyr SDK バンドルディレクトリを再配置した場合は、セットアップスクリプトを再実行する必要があります。

  1. ターミナルウィンドウ cmd.exe を開きます 一般ユーザー として

  2. 下载 Zephyr SDK bundle

    cd %HOMEPATH%
    wget https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.14.2/zephyr-sdk-0.14.2_windows-x86_64.zip
    
  3. Zephyr SDK バンドルアーカイブを解凍してください:

    unzip zephyr-sdk-0.14.2_windows-x86_64.zip
    

    注釈

    Zephyr SDK バンドルは以下のいずれかの場所で展開することをお勧めします:

    • %HOMEPATH%.

    • %PROGRAMFILES%.

    Zephyr SDK バンドルアーカイブには zephyr-sdk-<version> ディレクトリが含まれており、%HOMEPATH% で展開するとインストールパスは %HOMEPATH%%zephyr-sdk-<version> となります。

  4. Zephyr SDK バンドルセットアップスクリプトを実行してください:

    cd zephyr-sdk-0.14.2
    setup.cmd
    

    注釈

    Zephyr SDK バンドルを展開した後、セットアップスクリプトを一度だけ実行する必要があります。

    初期セットアップ後に Zephyr SDK バンドルディレクトリを再配置した場合は、セットアップスクリプトを再実行する必要があります。

UDK1-SDK パッケージのインストール

注釈

UDK1 SDKもZephyrベースのサンプルアプリケーションです。より深く理解するには、この example-application ページを参照してください。

注意

公開されている udk1-sdk repository は近日中に提供される予定です。ご期待ください!

最初のステップでは、ワークスペースフォルダ udk1-sdk を初期化し、そこに leaps-udk1-examples と全てのZephyrモジュールをクローンします。以下の手順に従ってください:

  1. ターミナルを開く

  2. leaps-udk1-examples`` の udk1-sdk ワークスペースをメインリビジョンで初期化する。

    west init -m <udk1-sdk repository> --mr main udk1-sdk
    
  3. Zephyr ソース(バージョン 3.1.0)とそのモジュールをクローンしてください。

    cd udk1-sdk
    west update
    
  4. Zephyr CMake パッケージをエクスポートしてください。これにより、Zephyrアプリケーションのビルドに必要なボイラープレートコードをCMakeが自動的にロードするようになります。

    west zephyr-export
    
  5. Zephyr のscripts/requirements.txtファイルは追加のPython依存を宣言しています。pip を使ってインストールしてください。

    pip install -r ./zephyr/scripts/requirements.txt
    
  6. ZEPHYR_BASE 環境を設定してください。

    source zephyr/zephyr-env.sh
    
  1. ターミナルを開く

  2. leaps-udk1-examples`` の udk1-sdk ワークスペースをメインリビジョンで初期化する。

    west init -m <udk1-sdk repository> --mr main udk1-sdk
    

    注意

    公開されている udk1-sdk repository は近日中に提供される予定です。ご期待ください!

  3. Zephyr ソース(バージョン 3.1.0)とそのモジュールをクローンしてください。

    cd udk1-sdk
    west update
    
  4. Zephyr CMake パッケージをエクスポートしてください。これにより、Zephyrアプリケーションのビルドに必要なボイラープレートコードをCMakeが自動的にロードするようになります。

    west zephyr-export
    
  5. Zephyr のscripts/requirements.txtファイルは追加のPython依存を宣言しています。pip を使ってインストールしてください。

    pip install -r ./zephyr/scripts/requirements.txt
    
  6. ZEPHYR_BASE 環境を設定してください。

    source zephyr/zephyr-env.sh
    
  1. 一般ユーザーとして cmd.exe ターミナルウィンドウを開く

  2. leaps-udk1-examples`` の udk1-sdk ワークスペースをメインリビジョンで初期化する。

    west init -m <udk1-sdk repository> --mr main udk1-sdk
    
  3. Zephyr ソース(バージョン 3.1.0)とそのモジュールをクローンしてください。

    cd udk1-sdk
    west update
    
  4. Zephyr CMake パッケージをエクスポートしてください。これにより、Zephyrアプリケーションのビルドに必要なボイラープレートコードをCMakeが自動的にロードするようになります。

    west zephyr-export
    
  5. Zephyr のscripts/requirements.txtファイルは追加のPython依存を宣言しています。pip を使ってインストールしてください。

    pip install -r zephyr/scripts/requirements.txt
    
  6. ZEPHYR_BASE 環境を設定してください。

    cd zephyr
    zephyr-env.cmd
    

デバイスのセットアップ

サンプル・アプリケーションを実行する前に、デバイスが接続されていることを確認し、以下の手順でコンソール・ウィンドウを開いてください:

  1. USB-C データケーブルを使用して、デバイスの USB-C データポート 2 とホスト PC を接続します。

    ../../../_images/leaps-connect-usb-port2.gif
  2. ファームウェアのプログラミング/アップグレード セクションのOpenOCDタブを参照し、OpenOCDツールをインストールする。このセクションにはファームウェアをフラッシュするための他のソリューションも含まれています。

  3. 以下のコマンドを実行して minicom (Linux と macOs) または Tera Term (Windows) を開き、接続されたシリアルポートにアクセスします。

  1. ターミナルを開く

  2. 以下のコマンドを ttyACM<X> (0 は最初に接続されたデバイスのデフォルトポート) で実行する。

    minicom -b 115200 -D /dev/ttyACM0
    

    注釈

    以下のコマンドを使用して、再フラッシュしようとしているすべての接続デバイス(ttyACM<X>)を確認してください

    ls ../../dev/
    
  3. デバイスに正常に接続された場合

    Welcome to minicom 2.8
    
    OPTIONS: I18n
    Port /dev/ttyACM0, 04:49:57
    
    Press CTRL-A Z for help on special keys
    
  1. ターミナルを開く

  2. dev/tty.usb<xxx>で以下のコマンドを実行します(モデム1410の例)

    minicom -b 115200 -D /dev/tty.usbmodem1410
    

    注釈

    以下のコマンドを使って、再フラッシュしようとしている接続デバイス (tty.usb<xxx>) を確認してください。

    ls ../../dev/
    
  3. デバイスに正常に接続された場合

    Welcome to minicom 2.8
    
    OPTIONS:
    Compiled on Jan  4 2021, 00:04:46.
    Port /dev/tty.usbmodem1410, 19:42:45
    
    Press Meta-Z for help on special keys
    
  1. Tera Term ツールを開く

  2. 設定 > シリアルポート

    ../../../_images/setup.png
  3. デバイスの接続ポートを選択 (例: Port 5 がデバイスに接続されている)

    ../../../_images/port.png
  4. 速度を 115200 に選択してください

    ../../../_images/speed.png
  5. Close と New Open を選択する(または New Open)

調整された例の実行

UDK1-SDKパッケージの @yourdir/udk1-sdk/leaps-udk1-examples/app/006_ex_uwb に、さまざまなサンプルがあります。ウルトラワイドバンドの協調動作を実現するには、以下の表に示すように2つの例をペアリングする必要があります。

例 1

例 2

ex_01a_simple_tx/simple_tx.c

ex_02a_simple_rx/simple_rx.c

ex_01b_tx_sleep/tx_sleep_idleRC.c

ex_02a_simple_rx/simple_rx.c

ex_01b_tx_sleep/tx_sleep.c

ex_02a_simple_rx/simple_rx.c

ex_01c_tx_sleep_auto/tx_sleep_auto.c

ex_02a_simple_rx/simple_rx.c

ex_01d_tx_timed_sleep/tx_timed_sleep.c

ex_02a_simple_rx/simple_rx.c

ex_01e_tx_with_cca/tx_with_cca.c

ex_02a_simple_rx/simple_rx.c

ex_01g_simple_tx_sts_sdc/simple_tx_sts_sdc.c

ex_02g_simple_rx_sts_sdc/simple_rx_sts_sdc.c

ex_01h_simple_tx_pdoa/simple_tx_pdoa.c

ex_02h_simple_rx_pdoa/simple_rx_pdoa.c

ex_01i_simple_tx_aes/simple_tx_aes.c

ex_02i_simple_rx_aes/simple_rx_aes.c

ex_02a_simple_rx/simple_rx_nlos.c

ex_01a_simple_tx/simple_tx.c

ex_02c_rx_diagnostics/rx_diagnostics.c

ex_01a_simple_tx/simple_tx.c

ex_02d_rx_sniff/rx_sniff.c

ex_01a_simple_tx/simple_tx.c

ex_02e_rx_dbl_buff/double_buffer_rx.c

ex_01a_simple_tx/simple_tx.c

ex_02f_rx_with_crystal_trim/rx_with_xtal_trim.c

ex_01a_simple_tx/simple_tx.c

ex_03a_tx_wait_resp/tx_wait_resp.c

ex_03b_rx_send_resp/rx_send_resp.c

ex_03d_tx_wait_resp_interrupts/tx_wait_resp_int.c

ex_03b_rx_send_resp/rx_send_resp.c

ex_05a_ds_twr_init/ds_twr_initiator.c

ex_05b_ds_twr_resp/ds_twr_responder.c

ex_05a_ds_twr_init/ds_twr_initiator_sts.c

ex_05b_ds_twr_resp/ds_twr_responder_sts.c

ex_05c_ds_twr_init_sts_sdc/ds_twr_sts_sdc_initiator.c

ex_05d_ds_twr_resp_sts_sdc/ds_twr_sts_sdc_responder.c

ex_06a_ss_twr_initiator/ss_twr_initiator_sts_no_data.c

ex_06b_ss_twr_responder/ss_twr_responder_sts_no_data.c

ex_06a_ss_twr_initiator/ss_twr_initiator_sts.c

ex_06b_ss_twr_responder/ss_twr_responder_sts.c

ex_06a_ss_twr_initiator/ss_twr_initiator.c

ex_06b_ss_twr_responder/ss_twr_responder.c

ex_06e_AES_ss_twr_initiator/ss_aes_twr_initiator.c

ex_06f_AES_ss_twr_responder/ss_aes_twr_responder.c

ex_07a_ack_data_tx/ack_data_tx.c

ex_07b_ack_data_rx/ack_data_rx.c

ex_15_le_pend/le_pend_rx.c

ex_15_le_pend/le_pend_tx.c

詳しい説明については、各サンプルに記載されている説明を参照してください。

例: ex_01h_simple_tx_pdoa/simple_tx_pdoa.c

*  @file    simple_tx_pdoa.c
*  @brief   Simple TX PDOA example code, companion to Simple RX PDOA example.
*           See note 7 regarding information on calibrating the system

サンプルのビルドと実行

このセクションでは、ソフトウェアのビルドと再フラッシュの方法を説明します。

注釈

もし Zephyr 環境で何らかの問題が発生した場合は、 トラブルシューティング インストール セクションを参照してください。

  1. デバイスのセットアップ ガイドラインを完成させてください。

  2. サンプルディレクトリに移動します

    cd leaps-udk1-examples
    
  3. (オプション) 古いビルドディレクトリを掃除する。

    rm -rf build/
    
  4. サンプルをビルドする

    このセクションは、予想される例を1つ選択して、例を構築する方法をガイドします。

    1. BOARDがleaps_lc14またはleaps_lc13の場合、メニューを表示するには以下のコマンドを実行してください

      west build -t menuconfig -b $BOARD -s app
      
    2. サンプルアプリケーション を選択してEnterを押してください。

      ../../../_images/main_menu.png
    3. デフォルトの サンプル が表示されます。

      ../../../_images/menu_default_example.png
    4. 上下にスクロールして サンプル を選択し、Enterを押してください。

      ../../../_images/menu_example_list.png
    5. ESC と Y を押して選択を保存してください。

      ../../../_images/menu_exit_andsave.png
    6. サンプルをビルドする

      west build
      
    7. サンプルのビルドに成功しました。

      [169/179] Linking C executable zephyr/zephyr_pre0.elf
      
      [173/179] Linking C executable zephyr/zephyr_pre1.elf
      
      [179/179] Linking C executable zephyr/zephyr.elf
      Memory region         Used Size  Region Size  %age Used
                 FLASH:       31268 B         1 MB      2.98%
                  SRAM:        8568 B       256 KB      3.27%
              IDT_LIST:          0 GB         2 KB      0.00%
      

    このセクションはデフォルトのサンプルを使ってサンプルをビルドする方法を説明します。

    1. $BOARD が leaps_lc14 または leaps_lc13 の場合、以下のコマンドを実行してください。

      west build -b $BOARD -s app
      
    2. サンプルのビルドに成功しました。

      [169/179] Linking C executable zephyr/zephyr_pre0.elf
      
      [173/179] Linking C executable zephyr/zephyr_pre1.elf
      
      [179/179] Linking C executable zephyr/zephyr.elf
      Memory region         Used Size  Region Size  %age Used
                 FLASH:       31268 B         1 MB      2.98%
                  SRAM:        8568 B       256 KB      3.27%
              IDT_LIST:          0 GB         2 KB      0.00%
      
  5. そしてデバイスに16進ファイルを再フラッシュしてください:

    west flash
    
  6. ファームウェアの再フラッシュに成功しました。

    Open On-Chip Debugger 0.11.0+dev-00245-gaf169e805 (2022-05-14-14:24)
    Licensed under GNU GPL v2
    For bug reports, read
            http://openocd.org/doc/doxygen/bugs.html
    DEPRECATED! use 'adapter speed' not 'adapter_khz'
    exit_debug_mode
    Info : Using CMSIS-DAPv2 interface with VID:PID=0x0d28:0x0204, serial=01100E003602002e00354146570120313238
    Info : CMSIS-DAP: SWD  Supported
    Info : CMSIS-DAP: FW Version = 2.1.0
    Info : CMSIS-DAP: Serial# = 01100E003602002e00354146570120313238
    Info : CMSIS-DAP: Interface Initialised (SWD)
    Info : SWCLK/TCK = 1 SWDIO/TMS = 1 TDI = 0 TDO = 0 nTRST = 0 nRESET = 1
    Info : CMSIS-DAP: Interface ready
    Info : clock speed 10000 kHz
    Info : SWD DPIDR 0x2ba01477
    Info : nrf52.cpu: hardware has 6 breakpoints, 4 watchpoints
    Info : starting gdb server for nrf52.cpu on 3333
    Info : Listening on port 3333 for gdb connections
        TargetName         Type       Endian TapName            State
    --  ------------------ ---------- ------ ------------------ ------------
     0* nrf52.cpu          cortex_m   little nrf52.cpu          running
    
    target halted due to debug-request, current mode: Thread
    xPSR: 0x01000000 pc: 0x0000243c msp: 0x20001838
    Info : nRF52840-CKAA(build code: D0) 1024kB Flash, 256kB RAM
    Warn : Adding extra erase range, 0x00007a24 .. 0x00007fff
    auto erase enabled
    wrote 31268 bytes from file @/udk1-sdk/zephyr/zephyr.hex in     1.151423s             (26.519 KiB/s)
    
    target halted due to debug-request, current mode: Thread
    xPSR: 0x01000000 pc: 0x0000243c msp: 0x20001838
    verified 31268 bytes in 0.092640s (329.611 KiB/s)
    
  7. TEST_BUTTONSの例題をそれぞれC、B、Aのボタンを押して実行したときの出力例。

    *** Booting Zephyr OS build 5db7528340ec  ***
    PRESS BUTTON EXAMPLE
    Button C is pressed at 24778
    Button C is released at 28996
    Button B is pressed at 76012
    Button B is released at 81454
    Button A is pressed at 104172
    Button A is released at 109917
    
  1. デバイスのセットアップ ガイドラインを完成させてください。

  2. サンプルディレクトリに移動します

    cd leaps-udk1-examples
    
  3. (オプション) 古いビルドディレクトリを掃除する。

    rm -rf build/
    
  4. サンプルをビルドする

    このセクションは、1つの期待される例を選択して、例を構築する方法をガイドします。

    1. BOARDがleaps_lc14またはleaps_lc13の場合、メニューを表示するには以下のコマンドを実行してください

      west build -t menuconfig -b $BOARD -s app
      
    2. サンプルアプリケーション を選択してEnterを押してください。

      ../../../_images/main_menu.png
    3. デフォルトの サンプル が表示されます。

      ../../../_images/menu_default_example.png
    4. 上下にスクロールして サンプル を選択し、Enterを押してください。

      ../../../_images/menu_example_list.png
    5. ESC と Y を押して選択を保存してください。

      ../../../_images/menu_exit_andsave.png
    6. サンプルをビルドする

      west build
      
    7. サンプルのビルドに成功しました。

      [169/179] Linking C executable zephyr/zephyr_pre0.elf
      
      [173/179] Linking C executable zephyr/zephyr_pre1.elf
      
      [179/179] Linking C executable zephyr/zephyr.elf
      Memory region         Used Size  Region Size  %age Used
                 FLASH:       31268 B         1 MB      2.98%
                  SRAM:        8568 B       256 KB      3.27%
              IDT_LIST:          0 GB         2 KB      0.00%
      

    このセクションはデフォルトのサンプルを使ってサンプルをビルドする方法を説明します。

    1. $BOARD が leaps_lc14 または leaps_lc13 の場合、以下のコマンドを実行してください。

      west build -b $BOARD
      
    2. サンプルのビルドに成功しました。

      [169/179] Linking C executable zephyr/zephyr_pre0.elf
      
      [173/179] Linking C executable zephyr/zephyr_pre1.elf
      
      [179/179] Linking C executable zephyr/zephyr.elf
      Memory region         Used Size  Region Size  %age Used
                 FLASH:       31268 B         1 MB      2.98%
                  SRAM:        8568 B       256 KB      3.27%
              IDT_LIST:          0 GB         2 KB      0.00%
      
  5. そしてデバイスに16進ファイルを再フラッシュしてください:

    west flash
    
  6. ファームウェアの再フラッシュに成功しました。

    Open On-Chip Debugger 0.11.0+dev-00245-gaf169e805 (2022-05-14-14:24)
    Licensed under GNU GPL v2
    For bug reports, read
            http://openocd.org/doc/doxygen/bugs.html
    DEPRECATED! use 'adapter speed' not 'adapter_khz'
    exit_debug_mode
    Info : Using CMSIS-DAPv2 interface with VID:PID=0x0d28:0x0204, serial=01100E003602002e00354146570120313238
    Info : CMSIS-DAP: SWD  Supported
    Info : CMSIS-DAP: FW Version = 2.1.0
    Info : CMSIS-DAP: Serial# = 01100E003602002e00354146570120313238
    Info : CMSIS-DAP: Interface Initialised (SWD)
    Info : SWCLK/TCK = 1 SWDIO/TMS = 1 TDI = 0 TDO = 0 nTRST = 0 nRESET = 1
    Info : CMSIS-DAP: Interface ready
    Info : clock speed 10000 kHz
    Info : SWD DPIDR 0x2ba01477
    Info : nrf52.cpu: hardware has 6 breakpoints, 4 watchpoints
    Info : starting gdb server for nrf52.cpu on 3333
    Info : Listening on port 3333 for gdb connections
        TargetName         Type       Endian TapName            State
    --  ------------------ ---------- ------ ------------------ ------------
     0* nrf52.cpu          cortex_m   little nrf52.cpu          running
    
    target halted due to debug-request, current mode: Thread
    xPSR: 0x01000000 pc: 0x0000243c msp: 0x20001838
    Info : nRF52840-CKAA(build code: D0) 1024kB Flash, 256kB RAM
    Warn : Adding extra erase range, 0x00007a24 .. 0x00007fff
    auto erase enabled
    wrote 31268 bytes from file @/udk1-sdk/zephyr/zephyr.hex in     1.151423s             (26.519 KiB/s)
    
    target halted due to debug-request, current mode: Thread
    xPSR: 0x01000000 pc: 0x0000243c msp: 0x20001838
    verified 31268 bytes in 0.092640s (329.611 KiB/s)
    
  7. TEST_BUTTONSの例題をそれぞれC、B、Aのボタンを押して実行したときの出力例。

    *** Booting Zephyr OS build 5db7528340ec  ***
    PRESS BUTTON EXAMPLE
    Button C is pressed at 24778
    Button C is released at 28996
    Button B is pressed at 76012
    Button B is released at 81454
    Button A is pressed at 104172
    Button A is released at 109917
    
  1. デバイスのセットアップ ガイドラインを完成させてください。

  2. サンプルディレクトリに移動します

    cd leaps-udk1-examples
    
  3. (オプション) 古いビルドディレクトリを削除してYを押してください。

    rd /s build
    
  4. サンプルをビルドする

    このセクションは、予想される例を1つ選択して、例を構築する方法をガイドします。

    1. BOARDがleaps_lc14またはleaps_lc13の場合、メニューを表示するには以下のコマンドを実行してください

    west build -t menuconfig -b $BOARD -s app
    
    1. サンプルアプリケーション を選択してEnterを押してください。

    ../../../_images/main_menu.png
    1. デフォルトの サンプル が表示されます。

    ../../../_images/menu_default_example.png
    1. 上下にスクロールして サンプル を選択し、Enterを押してください。

    ../../../_images/menu_example_list.png
    1. ESC と Y を押して選択を保存してください。

    ../../../_images/menu_exit_andsave.png
    1. サンプルをビルドする

    west build
    
    1. サンプルのビルドに成功しました。

    [152/158] Linking C executable zephyr\zephyr_pre1.elf←[K1.dir/dev_handles.c.obj←[Kj←[K
    
    [158/158] Linking C executable zephyr\zephyr.elf←[Kr_final.dir/dev_handles.c.obj←[Kj←[K
    Memory region         Used Size  Region Size  %age Used
               FLASH:       32668 B         1 MB      3.12%
                SRAM:        4496 B       248 KB      1.77%
            IDT_LIST:          0 GB         2 KB      0.00%
    

    このセクションはデフォルトのサンプルを使ってサンプルをビルドする方法を説明します。

    1. $BOARD が leaps_lc14 または leaps_lc13 の場合、以下のコマンドを実行してください。

      west build -b $BOARD -s app
      
    2. サンプルのビルドに成功しました。

      [1/161] Generating include/generated/version.h
      -- Zephyr version: 3.1.0 (@/udk1-sdk/zephyr), build: zephyr-v3.1.0
      [151/161] Linking C executable zephyr\zephyr_pre0.elf
      
      [155/161] Linking C executable zephyr\zephyr_pre1.elf
      
      [161/161] Linking C executable zephyr\zephyr.elf
      Memory region         Used Size  Region Size  %age Used
                 FLASH:       91160 B         1 MB      8.69%
                  SRAM:        5056 B       248 KB      1.99%
              IDT_LIST:          0 GB         2 KB      0.00%
      
  5. そしてデバイスに16進ファイルを再フラッシュしてください:

    west flash
    
  6. ファームウェアの再フラッシュに成功しました。

    -- west flash: rebuilding
    ninja: no work to do.
    -- west flash: using runner openocd
    -- runners.openocd: Flashing file: D:/01_Work/udk1-sdk/udk1-sdk/leaps-udk1-examples/build/zephyr/zephyr.hex
    xPack Open On-Chip Debugger 0.12.0-01004-g9ea7f3d64-dirty (2023-01-30-15:04)
    Licensed under GNU GPL v2
    For bug reports, read
            http://openocd.org/doc/doxygen/bugs.html
    DEPRECATED! use 'adapter speed' not 'adapter_khz'
    exit_debug_mode
    Info : Using CMSIS-DAPv2 interface with VID:PID=0x0d28:0x0204, serial=01100E003602002d00184146570120313238
    Info : CMSIS-DAP: SWD supported
    Info : CMSIS-DAP: Atomic commands supported
    Info : CMSIS-DAP: Test domain timer supported
    Info : CMSIS-DAP: FW Version = 2.1.0
    Info : CMSIS-DAP: Serial# = 01100E003602002d00184146570120313238
    Info : CMSIS-DAP: Interface Initialised (SWD)
    Info : SWCLK/TCK = 1 SWDIO/TMS = 1 TDI = 0 TDO = 0 nTRST = 0 nRESET = 1
    Info : CMSIS-DAP: Interface ready
    Info : clock speed 10000 kHz
    Info : SWD DPIDR 0x2ba01477
    Info : [nrf52.cpu] Cortex-M4 r0p1 processor detected
    Info : [nrf52.cpu] target has 6 breakpoints, 4 watchpoints
    Info : starting gdb server for nrf52.cpu on 3333
    Info : Listening on port 3333 for gdb connections
        TargetName         Type       Endian TapName            State
    --  ------------------ ---------- ------ ------------------ ------------
     0* nrf52.cpu          cortex_m   little nrf52.cpu          running
    
    [nrf52.cpu] halted due to debug-request, current mode: Thread
    xPSR: 0x01000000 pc: 0x00002e10 msp: 0x20002b10
    Info : nRF52840-CKAA(build code: D0) 1024kB Flash, 256kB RAM
    Warn : Adding extra erase range, 0x00007f9c .. 0x00007fff
    auto erase enabled
    wrote 32668 bytes from file D:/01_Work/udk1-sdk/udk1-sdk/leaps-udk1-examples/build/zephyr/zephyr.hex in 1.178412s (27.072 KiB/s)
    
    [nrf52.cpu] halted due to debug-request, current mode: Thread
    xPSR: 0x01000000 pc: 0x00002a5c msp: 0x20002850
    verified 32668 bytes in 0.099523s (320.552 KiB/s)
    
  7. TEST_BUTTONSの例題をそれぞれC、B、Aのボタンを押して実行したときの出力例。

    *** Booting Zephyr OS build 5db7528340ec  ***
    PRESS BUTTON EXAMPLE
    Button C is pressed at 24778
    Button C is released at 28996
    Button B is pressed at 76012
    Button B is released at 81454
    Button A is pressed at 104172
    Button A is released at 109917