コンテンツにスキップ

ビルド、書き込み、シリアル出力の確認

このページでは、SiFli-SDKの日常的な開発手順として、環境の有効化、sconsによるビルド、ボードへの書き込み、ログの確認を順に説明します。

SDK環境を有効にする

使用するSDKバージョンに対応した公式インストールガイドに従って開発環境をインストールしてください。ビルド前に、新しいターミナルを開くたびにSDKのルートディレクトリでexportスクリプトを実行し、環境を有効化してください。

cd ~/OpenSiFli/SiFli-SDK
. ./export.sh
cd C:\OpenSiFli\SiFli-SDK
.\export.ps1

exportスクリプトは、現在のSDK作業ツリーに対応する環境を実行中のターミナルに読み込みます。インストールや環境管理の手順はSDKのバージョンによって異なる場合があるため、使用中のバージョンに対応する公式ガイドを参照してください。

ビルド

サンプルプロジェクトのディレクトリから実行します。

scons --board=<board_name> -j8

ホストマシンに合わせて-jの値を設定してください。ボード名にコアの指定がない場合、SDKはデフォルトでHCPUを選択します。たとえばsf32lb52-lcd_n16r8の出力先はbuild_sf32lb52-lcd_n16r8_hcpu/です。ビルド時に確定したボードとコアの組み合わせに対応する出力ディレクトリを使用してください。ボード識別子にコアが含まれている場合は、_hcpuを重ねて付けないでください。

クリーンビルド

ボードを切り替える場合や大きな設定変更を行う場合、または不審なビルド成果物を調査する場合は、クリーンビルドを行ってください。サンプルプロジェクトのディレクトリでSConsのクリーンオプションを実行します。

scons -c

ビルドターゲットと生成された一時ファイルおよびオブジェクトファイルを削除します。その後、対象のボード設定で再ビルドしてください。

Flash書き込み

たとえばsf32lb52-lcd_n16r8のHCPUターゲットでは、ビルドで生成されたUARTダウンロードスクリプトを使用します。

./build_sf32lb52-lcd_n16r8_hcpu/uart_download.sh
build_sf32lb52-lcd_n16r8_hcpu\uart_download.bat

OpenSiFliは、シリアルインターフェース経由でSiFli SoCと通信するオープンソースのコマンドラインツール sftool も公開しています。ドキュメントには、Flashの書き込み、読み出し、消去に加え、チップのリセット制御も記載されています。対応チップ、ストレージ種別、コマンドオプションは、ツールのREADMEで確認してください。

シリアル出力を確認する

ボードとサンプルに合わせて設定したシリアルターミナルを使います。シリアルログには、起動時の出力、RT-Threadの起動メッセージ、アプリケーションの出力、またはシェルプロンプトが表示されます。

次の情報を記録してください。

  • ボード名。
  • シリアルポート。
  • ボーレート。
  • ビルドコマンド。
  • Flash書き込みコマンド。
  • SDKブランチまたはリリース。

日常的な開発サイクル

表: 日常的な開発サイクル
手順 目的
有効化 現在のターミナルにSDK環境を読み込む。
設定 ボードと機能オプションを選択する。
ビルド ボード固有のバイナリを生成する。
書き込み ファームウェアイメージをボードに書き込む。
出力確認 起動とアプリケーションの動作を確認する。
記録 再現性のため、コマンドとログの詳細を保存する。

対応するサンプルから始める

プロジェクトを新規作成する場合や大幅に変更する場合は、ボードと重要なサブシステムに最も適したSDKサンプルを選んでください。まずサンプルを変更せずにビルドして書き込み、シリアル出力を確認します。その後、ボード名、SDKリリース、コマンド、期待される出力を、変更後のプロジェクトと併せて記録してください。

CodeKitを使う場合も、同じ検証記録を残し、エディターでの操作をSDKのコマンドで再現できることを確認してください。

トラブルシューティング

表: トラブルシューティング
症状 確認項目
ビルドツールが見つからない 現在のターミナルでexport.sh / export.ps1を再実行する。
ボード名が不明 SDKの対応ボード資料を確認する。
ダウンロードスクリプトがポートを開けない シリアルターミナルを閉じ、USB-to-UARTケーブル/コネクターを確認する。
Flash書き込みが開始しない ボードの説明書に記載されたダウンロード手順に従ってください。sf32lb52-lcd_n16r8の場合は、シリアルポートを選択してからボードを再起動し、2秒以内にEnterキーを押してダウンロードを開始します。ほかのボードでは各ボード固有の手順に従い、電源、選択したポート、UART接続も確認してください。
シリアル出力が読めない ボーレートを確認し、充電専用ではなくデータ通信に対応したUSBケーブルでUARTに接続する。

引き継ぎチェックリスト

プロジェクトを別の開発者に引き継ぐ前に、次の情報を含めてください。

  • SDKブランチまたはコミット。
  • ボード名。
  • セットアップ/インストールのメモ。
  • ビルドコマンド。
  • Flash書き込みコマンド。
  • モニター設定。
  • 起動時に期待される最初のログ行。
  • 復旧コマンド。

最終更新: