このページでは

C

スタートInfineon

このトピックでは、Qt Quick Ultralite でサポートされているInfineon プラットフォームを使い始めるために必要なすべての情報を提供します。Qt for MCUs は、Infineon 認定 HMI ツールです。

注記: 開発環境をセットアップする前に、すべての前提条件がインストールされていることを確認してください。

開発環境のセットアップ

Qt Creator IDEの設定

Qt Creator IDEを使用してMCUを開発するには、MCUプラグインが必要です。Qt Online InstallerQt for MCUs SDKをインストールすると、デフォルトでMCUプラグインが有効になります。

MCUでアプリケーションをビルドして実行するには、キットを作成する必要があります:

  1. Edit > Preferences > SDKs > MCU を選択してください。

    注: MCU タブが表示されない場合は、Help > About Plugins を選択してプラグインを有効にし、 を再起動してください。 Qt for MCUsプラグインを有効にし、Qt Creator を再起動して変更を適用します。

  2. まだ設定されていない場合は、Qt for MCUs のインストール・ディレクトリへのパスを指定します。

    Qt Creatorを使用してInfineonターゲット用のSDKを作成します。

  3. を選択します。 Target supported by the Qt for MCUs SDK.例えば Qt for MCUs 2.12.0 - TVIIC2D4M-BAREMETAL 32bpp.
  4. Requirements セクションで、プラットフォーム固有の要件が満たされていることを確認します。
  5. キットを自動的に作成するには、Automatically create kits for all available targets on start を選択します。

    注: Create Kit およびUpdate Kit を使用して、手動でキットを作成/更新することもできます。

  6. 自動的にキットを作成する場合は、Apply を選択し、Qt Creator を再起動します。

CMake 変数の設定

コマンドプロンプトから開発環境を設定することもできます。Infineon ボード用のアプリケーションを開発する際にQt Quick Ultralite で CMake を使用する方法の詳細については、 Infineon ボード用の CMake マニュアルを参照してください。

ビルド済みQt Quick Ultralite ライブラリを使用したアプリケーションのビルド

Qt Creator IDE を使用したアプリケーションのビルド

  1. ビルドしたいサンプルの CMake プロジェクトファイルを開きます。
  2. Configure Project ウィンドウで
    1. 先ほど作成したキットを選択します。例えば Qt for MCUs 2.12.0 - TVIIC2D4M-BAREMETAL 32bpp.
    2. Configure Project を選択します。

Qt Creatorを使用してInfineonターゲット用にMCUプロジェクトを設定します。

プロジェクトが設定されたら、Run を選択するか、キーボードのCtrl+rを押してバイナリをビルドし、ターゲットにフラッシュします。

注意: Qt Creator を使ったフラッシュは、OpenOCD 互換のデバッグ・プローブでのみ動作します。例として、Infineon KitProg3(通常オンボードに搭載)とMiniProg4はOpenOCD互換です。

コマンドプロンプトを使ったアプリケーションのビルド

コマンドプロンプトからアプリケーションをビルドしてフラッシュすることもできます。

サポートされているInfineon ボードとプラットフォーム、およびターゲット・オペレーティング・システムは、以下の表のとおりです。

ボードターゲット・ボード名
トラベオT2G cyt3dl (4m [216])tviic2d4m
TRAVEO T2G CY3DL (4M ライトキット)tviic2d4mlite
TRAVEO T2G CYT4DN (6M [327-BGA-REF、327-BGA-REV-B、500-BGA])tviic2d6m
トラベオT2G CYT4DN(6Mライトキット)tviic2d6mlite
トラベオT2G CYT4DN (6M DDR [500-BGA])tviic2d6mddr

注: tviic2d6m のリビジョンは、QUL_TVIIC2D6M_BOARD_REVISION CMake configure オプションを使用して選択できます。

プラットフォームターゲット・プラットフォーム名
Bare Metalbaremetal

以下の例は、minimal のサンプルをtviic2d4m-baremetaltviic2d4mlite-baremetaltviic2d6m-baremetal 用にビルドする方法を示しています。

QUL_ROOT およびQUL_TOOLS は、以下のコマンドラインの例では、環境変数として設定されているかのように使用されています。例えば

export QUL_ROOT=$HOME/Qt/QtMCUs/2.12.0
export QUL_TOOLS=$HOME/Qt/Tools/QtMCUs
set QUL_ROOT=C:\Qt\QtMCUs\2.12.0
set QUL_TOOLS=C:\Qt\Tools\QtMCUs
cd %QUL_ROOT%\examples\minimal
mkdir build
cd build
cmake .. -G "Ninja" -DQUL_PLATFORM=tviic2d4m-baremetal -DCMAKE_BUILD_TYPE=MinSizeRel -DQul_ROOT=%QUL_ROOT% -DCMAKE_TOOLCHAIN_FILE=%QUL_ROOT%\lib\cmake\Qul\toolchain\ghs-arm.cmake -DQUL_TARGET_TOOLCHAIN_DIR=C:\ghs\comp_201714 -DQUL_BOARD_SDK_DIR=C:\TVII-GraphicsDriver -DINFINEON_AUTO_FLASH_UTILITY_DIR="C:\Program Files (x86)\Infineon\Auto Flash Utility 1.4"
cmake --build .
cd %QUL_ROOT%\examples\minimal
mkdir build
cd build
cmake .. -G "Ninja" -DQUL_PLATFORM=tviic2d4mlite-baremetal -DCMAKE_BUILD_TYPE=MinSizeRel -DQul_ROOT=%QUL_ROOT% -DCMAKE_TOOLCHAIN_FILE=%QUL_ROOT%\lib\cmake\Qul\toolchain\ghs-arm.cmake -DQUL_TARGET_TOOLCHAIN_DIR=C:\ghs\comp_201714 -DQUL_BOARD_SDK_DIR=C:\TVII-GraphicsDriver -DINFINEON_AUTO_FLASH_UTILITY_DIR="C:\Program Files (x86)\Infineon\Auto Flash Utility 1.4"
cmake --build .
cd %QUL_ROOT%\examples\minimal
mkdir build
cd build
cmake .. -G "Ninja" -DQUL_PLATFORM=tviic2d6m-baremetal -DCMAKE_BUILD_TYPE=MinSizeRel -DQul_ROOT=%QUL_ROOT% -DCMAKE_TOOLCHAIN_FILE=%QUL_ROOT%\lib\cmake\Qul\toolchain\ghs-arm.cmake -DQUL_TARGET_TOOLCHAIN_DIR=C:\ghs\comp_201714 -DQUL_BOARD_SDK_DIR=C:\TVII-GraphicsDriver -DINFINEON_AUTO_FLASH_UTILITY_DIR="C:\Program Files (x86)\Infineon\Auto Flash Utility 1.4"
cmake --build .

minimal サンプル・アプリケーションのビルドに成功したら、以下のコマンドのいずれかを使用してフラッシュします:

OpenOCD互換プローブを使用する:

自動生成されたフラッシュ・ターゲットを使用する:

cmake --build . --target flash_minimal

コマンド・プロンプトからのフラッシュの詳細については、 Infineon ボードのフラッシュ手順を参照してください。

注意: アプリケーションを正しく起動するためには、適切なブートローダがターゲット・システム上に常に存在する必要があります。詳細については、ブートローダ・フラッシングの説明の章を参照してください。

GDBを使ったデバッグ

デバッグには、GHSプローブ、J-Link Ultra+プローブ、Miniprog4を推奨します。その他のデバッガについては、Infineon またはツールベンダーにお問い合わせください。

注: GDBバックトレースは、Green Hillsコンパイラを使用する場合、不正確または不完全になることがあります。

必要条件

GDBを使用してデバッグするには、GNU Arm GCC 12.3.rel1ツールチェーンが必要です。GNU Arm Embedded Toolchain Downloadsからダウンロードできます。または、GNU ARM GCCツールチェーンは、Qt Online Installer.NET Frameworkでインストールできます。

ModusToolboxを使用する場合、ModusToolbox SetupツールからModusToolbox Tools PackageとともにインストールされたGNU ARM GCCツールチェーンを使用します。インストール後、デフォルトでWindowsではC:\ModusToolbox\tools_3.4\gcc 、Linuxでは/opt/Tools/ModusToolbox/tools_3.4/gcc

コンパイル

ビルドされた実行ファイルが必要なDWARF2デバッグ・テーブルを取得するために、コンフィギュレーション時に-DCMAKE_BUILD_TYPE=Debug

GDBサーバーの起動

環境変数INFINEON_AUTO_FLASH_UTILITY_DIR を設定する。

INFINEON_AUTO_FLASH_UTILITY_DIR を以下のように設定する。パスはあなたのマシンの正しい場所に合わせる:

set INFINEON_AUTO_FLASH_UTILITY_DIR="C:\Program Files (x86)\Infineon\Auto Flash Utility 1.4"

OpenOCD と互換性のあるプローブを使用する:

OpenOCD 互換プローブを使用する場合: OpenOCD 互換プローブを接続した状態で、以下のコマンドを実行する:

.
%INFINEON_AUTO_FLASH_UTILITY_DIR%\bin\openocd -s %INFINEON_AUTO_FLASH_UTILITY_DIR%\scripts -f interface/kitprog3.cfg -c "transport select swd" -f target/traveo2_c2d_4m.cfg
%INFINEON_AUTO_FLASH_UTILITY_DIR%\bin\openocd -s %INFINEON_AUTO_FLASH_UTILITY_DIR%\scripts -f interface/kitprog3.cfg -c "transport select swd" -f target/traveo2_c2d_4m.cfg
%INFINEON_AUTO_FLASH_UTILITY_DIR%\bin\openocd -s %INFINEON_AUTO_FLASH_UTILITY_DIR%\scripts -f interface/kitprog3.cfg -c "transport select swd" -f target/traveo2_6m.cfg

J-LinkプローブをボードのJ-Tagソケットに接続し、以下のコマンドを実行する:

デバッグに利用できるコア

OpenOCDがMCUに接続され、GDB接続を待っています。ターミナル出力を見ると、接続可能なポートがいくつかあります。最初はCM0+(Cortex-M0+)コアで、残りはCM7(Cortex-M7)コアです(TRAVEO T2G CYT3DLに1つ、TRAVEO T2G CYT4DNに2つ)。GDBを使用してGDBサーバに接続する場合、デバッグしたいコアに対応するポートを選択します。

Qt for MCUs デフォルトでは、ブートローダにはCM0+ を使用し、アプリケーションには最初のCM7 コアを使用します。

GDBでの接続

これでGDBサーバーに接続し、手順を進めることができる。

環境変数ARMGCC_DIR を設定する。

ARMGCC_DIR を以下のように設定する。パスはあなたのマシンの正しい場所に合わせる:

set ARMGCC_DIR="C:\Qt\Tools\QtMCUs\arm_gcc_12_3_1\bin"

OpenOCD 互換プローブの場合:

%ARMGCC_DIR%\arm-none-eabi-gdb.exe C:/path/to/binary/application.elf -ex "target remote localhost:3334"
(gdb) monitor reset
(gdb) continue

注意: これらのボードは ARMbig.LITTLE CPU アーキテクチャをベースにしているため、必ずmonitor traveo2 reset_halt コマンドを使用して再起動してください。

%ARMGCC_DIR%\arm-none-eabi-gdb.exe C:/path/to/binary/application.elf -ex "target remote localhost:3334"
(gdb) monitor traveo2 reset_halt sysresetreq
(gdb) continue

ボード固有の情報

現在サポートされているInfineon ターゲットを以下に示します。Qt Quick Ultraliteでサポートされているすべてのターゲットに関する詳細は、サポートされているターゲットボードと開発ホストを参照してください。

ハードウェアボードコンパイラオペレーティングシステム
TRAVEO T2GTRAVEO T2G CYT3DL (4M 216)、CYT3DL (4M LITE KIT)、CYT4DN (6M 327)、CYT4DN (6M LITE KIT)、CYT4EN (6M DDR)IAR Functional Safety Build Tools for Arm V8.22.3およびGreen Hills MULTI Compiler for Embedded ARM 2017.1.4Bare Metal
TRAVEO T2GTRAVEO T2G CYT4DN (6M ライトキット)GNU Arm GCC 11.3.1Bare Metal


詳細はこちら。