このページでは

C

NXP のIMXRT1060-EVKBにおけるQt Quick Ultralite Zephyr モジュールの使用方法

NXP のi.MX RT1060 EVKB向け Qt Quick Ultraliteプラットフォームのポートは「mimxrt1060-evkb-zephyr 」という名称で、Zephyr ボードターゲットmimxrt1060_evk@B/mimxrt1062/qspi をサポートしています。

互換性のあるバージョン

Qt Quick Ultralite のZephyr モジュールは、NXP のi.MX RT1060 EVKB上で動作するZephyr 4.4.0でサポートされています。

前提条件

ディスプレイの設定

ディスプレイシールドの選択

プラットフォームポートでは、デフォルトで RK043FN66HS-CTG シールドが使用されます。代わりに RK043FN02H-CT シールド向けにビルドするには、--shield を指定して、west build に渡してください:

west build -b mimxrt1060_evk@B/mimxrt1062/qspi app --shield rk043fn02h_ct

ピクセル形式

このプラットフォームポートは、16ビットの色深度でレンダリングを行います。

タッチ入力

タッチ入力は、Zephyr 入力サブシステムを通じて同期モードで提供されます。プラットフォームポートのqul_module.conf は、CONFIG_INPUT およびCONFIG_INPUT_MODE_SYNCHRONOUS によって有効化されます。

メモリ構成

UIツリー、画像バッファ、フォントデータなどのQt Quick Ultralite による動的割り当ては、CONFIG_HEAP_MEM_POOL_SIZE でサイズが指定されたZephyr カーネルヒープから提供されます。プラットフォームポートのデフォルト設定では、このサイズは10240000バイトに設定されています。

アプリケーションのビルド

アプリケーションの設定およびビルドに関する一般的な手順については、「新しいアプリケーションの設定」、「QUL_ROOT の設定 」、および「ビルド」を参照してください。

Qt Quick Ultralite Zephyr モジュールは、デフォルトでZephyr SDKを使用しており、メタデータファイルのZephyr SDKバリアントが必要です。メタデータファイルは、west build app -t menuconfig を通じて設定するか、app/prj.conf でCONFIG_QUL_PLATFORM_METADATA を次のように設定してください:

CONFIG_QUL_PLATFORM_METADATA="/path/to/Qt/QtMCUs/2.12.3/platform/boards/nxp/mimxrt1060-evkb-zephyr/mimxrt1060-evkb-zephyr_zephyrsdk_16bpp_Linux_armgcc-metadata.json"
CONFIG_QUL_PLATFORM_METADATA="C:/Qt/QtMCUs/2.12.3/platform/boards/nxp/mimxrt1060-evkb-zephyr/mimxrt1060-evkb-zephyr_zephyrsdk_16bpp_Windows_armgcc-metadata.json"

CONFIG_QUL_DEVICELINK が有効になっている場合は、そのファイルの*-metadata-devicelink.json バージョンを使用してください。

ボードとして「mimxrt1060_evk@B/mimxrt1062/qspi 」を使用してください:

west build -b mimxrt1060_evk@B/mimxrt1062/qspi app

必要な Kconfig オプション

このプラットフォームポートには、Qt Quick Ultraliteに必要なKconfig設定が記載されたqul_module.conf ファイルが含まれています。これは、Kconfigが実行される前にEXTRA_CONF_FILE を通じて適用されます。

代わりにアプリケーション側から設定を指定するには、CONFIG_QUL_DEFAULT_CONF=n を設定し、ポートのqul_module.conf に記載されているオプションをアプリケーションのprj.conf に追加してください。

Qt Quick のUltraliteインストールでは、このファイルはplatform/boards/nxp/mimxrt1060-evkb-zephyr/qul_module.conf にあります。

Qt Quick Ultralite ライブラリのビルド

デフォルトでは、Qt Quick Ultralite はインストールに含まれる事前ビルド済みのライブラリを使用します。これらはMinSizeRel 構成でビルドされています。このボード用に独自のライブラリをビルドするには、次のコマンドを実行してください:

west build-qul-libs --board mimxrt1060_evk@B/mimxrt1062/qspi --build-type MinSizeRel

コマンドラインオプションの完全な一覧および新しいワークスペースでの必要なビルド順序については、「 Qt Quick Ultralite ライブラリのビルド」を参照してください。

このプラットフォームポートは、lpuart1 経由のDeviceLink をサポートしています。CONFIG_QUL_DEVICELINK=y を有効にすると、プラットフォームポートのdevicelink.overlay およびdevicelink.conf が適用されます。これにより、UARTが選択され、Zephyr コンソールが無効化されるため、Qt Quick Ultralite がUARTを独占的に使用できるようになります。

注: DeviceLinkが有効になっている間 、Zephyr のUARTコンソールは無効になるため、printf の出力およびコンソールのパフォーマンスロギングは利用できません。

一般的な手順については、「DeviceLink」を参照してください。

フラッシュ

NXP のMCUXpresso LinkServerを使用して、westでビルドしたアプリケーションをフラッシュします:

west flash --runner linkserver

デバッグ

Zephyr west を使用したデバッグに対応しており、直接デバッグを行うか、デバッグサーバーを起動してデバッガーから接続するかのいずれかの方法で実行できます。以下の手順では、 を使用してデバッグサーバーを実行する方法と、GNU Project Debugger (GDB) を使用してそれに接続する方法を説明します。west

west を使用したデバッグを有効にするには、PATH 環境変数にデバッグサーバー(LinkServer など)を指定してください:

export PATH=$PATH:/path/to/debug_server
set PATH=%PATH%;C:\path\to\debug_server

デバッグセッションを開始します:

west debug --runner linkserver

このコマンドは、デバッグサーバーを起動し、アプリケーションを読み込み、Zephyr SDKに付属するGDBをそのサーバーに接続します。ターゲット上で既に実行中のアプリケーションをデバッグするには、west attach --runner linkserver を使用してください。

代わりに、独自のデバッガを接続する場合は、デバッグサーバーのみを起動してください:

west debugserver --runner linkserver

LinkServerはポート3333でリスニングするTCPソケットを設定します。別のターミナルから、Zephyr SDKに付属のGDBを使用してこのソケットに接続できます:

cd build
$ZEPHYR_SDK_INSTALL_DIR/gnu/arm-zephyr-eabi/bin/arm-zephyr-eabi-gdb -tui -ex "target remote localhost:3333" zephyr/zephyr.elf
cd build
%ZEPHYR_SDK_INSTALL_DIR%\gnu\arm-zephyr-eabi\bin\arm-zephyr-eabi-gdb -tui -ex "target remote localhost:3333" zephyr\zephyr.elf

特定のQtライセンスの下で利用可能です。
詳細はこちらをご覧ください。