C
Infineon Traveo T2G のはじめに
このトピックでは、Qt Quick UltraliteがサポートするInfineon Traveo T2Gプラットフォームでの使用を開始するために必要なすべての情報を提供します。Qt for MCUs は、Infineon 認定のHMIツールです。
注: 開発環境を設定する前に、すべての前提条件がインストールされていることを確認してください 。
開発環境のセットアップ
Qt Creator IDEの設定
Qt Creator IDEを使用してMCU向けの開発を行うには、MCUプラグインが必要です。Qt for MCUs SDKをインストールすると、Qt Online Installer によってデフォルトで有効になります。
MCU上でアプリケーションをビルドして実行するには、キットを作成する必要があります:
- 「Edit > Preferences > SDKs > MCU 」を選択します。
注: 「MCU」タブが表示されない場合は 、「Help > About Plugins 」を選択し、 Qt for MCUs プラグインを有効にし、Qt Creator を再起動して変更を反映させてください。
- まだ設定されていない場合は、Qt for MCUs のインストールディレクトリへのパスを指定してください。

- [ Target supported by the Qt for MCUs SDKを選択します。例: Qt for MCUs 2.12.2 - TVIIC2D4M-BAREMETAL 32bpp。
- 「Requirements 」セクションで、プラットフォーム固有の要件が満たされていることを確認してください。
- キットを自動的に作成するには、[Automatically create kits for all available targets on start ] を選択します。
注: 「Create Kit 」および「Update Kit 」を使用して、キットを手動で作成・更新することも可能です 。
- キットを自動的に作成する場合は、「Apply 」を選択し、「Qt Creator 」を再起動してください。
CMake変数の設定
コマンドプロンプトから開発環境を設定することも可能です。Infineon ボード向けのアプリケーション開発において、Qt Quick UltraliteとCMakeを併用する方法の詳細については、『Infineon Traveo T2Gボード用CMakeマニュアル』を参照してください。
Qt Quick Ultraliteの事前ビルド済みライブラリを使用したアプリケーションのビルド
Qt Creator IDE を使用したアプリケーションのビルド
- ビルドしたい例のCMakeプロジェクトファイルを開きます。
- 「Configure Project 」ウィンドウで:
- 先ほど作成したキットを選択します。例えば、 Qt for MCUs 2.12.2 - TVIIC2D4M-BAREMETAL 32bpp.
- 「Configure Project 」を選択します。

プロジェクトの設定が完了したら、「Run 」を選択するか、キーボードのCtrl+rキーを押して、バイナリをビルドし、ターゲットに書き込みます。
注: Qt Creator を使用した書き込みは 、OpenOCD 互換のデバッグプローブでのみ動作します。例として、Infineon 、通常は基板上に搭載されている KitProg3、および MiniProg4 は OpenOCD 互換です。
コマンドプロンプトを使用したアプリケーションのビルド
コマンドプロンプトからアプリケーションをビルドおよびフラッシュすることも可能です。
サポートされているInfineon ボードおよびプラットフォーム(ターゲットOSを含む)は、以下の表に一覧表示されています。
| ボード | ターゲットボード名 |
|---|---|
| TRAVEO T2G CYT3DL (4M [216]) | tviic2d4m |
| TRAVEO T2G CYT3DL (4M LITE KIT) | tviic2d4mlite |
| TRAVEO T2G CYT4DN (6M [327-BGA-REF、327-BGA-REV-B および 500-BGA]) | tviic2d6m |
| TRAVEO T2G CYT4DN (6M LITE KIT) | tviic2d6mlite |
| TRAVEO T2G CYT4EN (6M DDR [500-BGA]) | tviic2d6mddr |
注: tviic2d6m のリビジョンは 、QUL_TVIIC2D6M_BOARD_REVISION というCMakeのconfigureオプションを使用して選択できます。
| プラットフォーム | ターゲットプラットフォーム名 |
|---|---|
| Bare Metal | baremetal |
以下の例は、tviic2d4m-baremetal 、tviic2d4mlite-baremetal 、またはtviic2d6m-baremetal 向けにminimal のサンプルをビルドする方法を示しています。
QUL_ROOT また、以下のコマンドラインの例では、QUL_TOOLS が環境変数として設定されているかのように使用されています。例:
export QUL_ROOT=$HOME/Qt/QtMCUs/2.12.2
export QUL_TOOLS=$HOME/Qt/Tools/QtMCUsset QUL_ROOT=C:\Qt\QtMCUs\2.12.2
set QUL_TOOLS=C:\Qt\Tools\QtMCUscd %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 またはツールベンダーにお問い合わせください。
注: Green Hills コンパイラを使用する場合、GDBの バックトレースが 不正確または不完全になる可能性があります。
要件
GDB によるデバッグには、GNU Arm GCC 12.3.rel1 ツールチェーンが必要です。これは、GNU Arm Embedded Toolchain Downloads からダウンロードできます。あるいは、Qt Online Installer を使用して GNU ARM GCC ツールチェーンをインストールすることもできます。
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互換のプローブを接続した状態で、次のコマンドを実行します:
%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.cfgJ-Linkプローブを使用する場合:
J-Linkプローブをボード上のJ-Tagソケットに接続し、次のコマンドを実行してください:
%INFINEON_AUTO_FLASH_UTILITY_DIR%\bin\openocd -s %INFINEON_AUTO_FLASH_UTILITY_DIR%\scripts -f interface/jlink.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/jlink.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/jlink.cfg -c "transport select swd" -f target/traveo2_6m.cfgデバッグに使用可能なコア
OpenOCDは現在MCUに接続されており、GDBからの接続を待機しています。ターミナルの出力を確認すると、接続可能なポートがいくつか表示されています。 1つ目は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) continueJ-Linkプローブを使用する場合:
注: これらのボードは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 T2G | TRAVEO 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.4 | Bare Metal |
| TRAVEO T2G | TRAVEO T2G CYT4DN (6M LITE KIT) | GNU Arm GCC 11.3.1 | Bare Metal |
特定の Qt ライセンスの下で利用可能です。
詳細はこちら。