このページでは

C

STM32F769I-DISCOVERYでFreeRTOS

互換性のあるバージョン

Qt Quick Ultralite forFreeRTOS は、STM32F769I-DISCOVERY で公式にサポートされているバージョンであるFreeRTOS v10.0.1 でテストされています。

注: STM32F769I-DISCOVERY用にプリコンパイルされたプラットフォーム・ライブラリを使用している場合、FreeRTOS のソースの一部はすでにコンパイルされています。FreeRTOS のバージョンを変更する場合は、プラットフォーム・ライブラリを再構築する必要があります。

サポートされているプラットフォームとFreeRTOS バージョンの一覧は、サポートされているアーキテク チャ、プラットフォーム、FreeRTOS バージョンを参照のこと。

Qt Quick UltraliteへのFreeRTOS シンボルとライブラリの提供

プロジェクトで app_commonプロジェクトで使用している場合は、FREERTOS_DIR CMake キャッシュ・エントリーを設定して、Qt Quick Ultralite 用のFreeRTOS ソースへのパスを提供してください。そのディレクトリには少なくとも以下のものが含まれていなければなりません:

  • include FreeRTOS ヘッダーファイルを含むディレクトリ
  • portable ディレクトリ
  • MemMang portable の下のディレクトリ。このディレクトリには、 用のメモリ・マネージャ実装が含まれている必要があります。FreeRTOS
  • heap_4.c portable/MemMang の下にあるファイル。これは Ultralite がデフォルトで使用するメモリアロケータの実装です(Automotive デモでは を使用)。 を提供できない場合、または独自の実装を使用したい場合は、 ターゲットプロパティを設定することで、使用する実装を変更できます。Qt Quick heap_5.c heap_4.c QUL_FREERTOS_HEAP_POLICY ヒープ・ポリシーの変更を参照してください。
  • 使用するツールチェーンに応じて、以下のファイルが必要です:
    • Arm GCCツールチェーンの場合:
      • port.c portable/GCC/ARM_CM7/r0p1 以下のファイル。
    • IARツールチェーンの場合:
      • port.c portable/IAR/ARM_CM7/r0p1 以下のファイル。
      • portasm.s portable/IAR/ARM_CM7/r0p1
  • event_groups.c
  • list.c
  • queue.c
  • tasks.c
  • timers.c

FreeRTOSConfig.h はプラットフォーム・ライブラリによって提供されます。アプリケーションは、プラット フォーム・ライブラリのコンパイルに使用されたものと同じFreeRTOSConfig.h を使用する必要があります。独自のFreeRTOS 設定を使用するには、プラットフォーム・パッケージを再コンパイルする必要があります。

プロジェクトでapp_common を使用していない場合は、FREERTOS_DIR CMake キャッシュ・エントリーを設定する必要はありません。ただし、Qt Quick Ultralite 用の以下のヘッダーと関数を提供する必要があります(つまり、これらのヘッダーがプロジェクトに含まれている必要があります):

  • FreeRTOS.h
  • task.h
  • portable.h
  • memory.h
  • void xPortSysTickHandler(void)
  • void *pvPortMalloc(size_t xSize)
  • void vPortFree(void *pv)

app_common を使わずにプロジェクトをセットアップする方法については、 app_common 使わずにアプリケーションをビルドするを参照してください。

FreeRTOS プロジェクトのフラッシュ

FreeRTOS を使用しているプロジェクトでも、フラッシュ手順は同じです。詳細については、STボードのフラッシュ手順を参照してください。


詳細はこちらをご覧ください。