DSPI制御でヒープ領域の枯渇の解消。

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

DSPI制御でヒープ領域の枯渇の解消。

810件の閲覧回数
山崎直己
Contributor III

DSPIによる制御でヒープ領域の枯渇していた現象が解消しましたので報告します。

<環境>

    マイクロコントローラ: MK64FN1M0VLQ12

    開発環境: IAR Embedded Workbench IDE

    SDK: KSDK_1.0.0

    OS  : FreeRTOS

DSPIによる周辺デバイスへの制御を実施。

下記モジュールでDSPIによる制御を実施した場合、「OSA_SemaCreate(&dspiState->irqSync, 0);」

で獲得したヒープ領域の解放がされていないため、複数回DSPI制御を実施した時に、queue.cでヒープ領域

が獲得できなくなり、xQueueGenericCreate(313行目~)の出口の「configASSERT( xReturn );」で停止していました。

そのため、下記箇所にてヒープ領域の解放を実施することで、ヒープ領域の枯渇が解消されました。

  <場所>

  KSDK_1.0.0\platform\drivers\dspi\dspi_master\src

  <ファイル名>

  fsl_dspi_master_driver.c

< モジュール名:dspi_status_t DSPI_DRV_MasterTransferDataBlocking() >

346 else {

347     OSA_SemaDestroy(&dspiState->irqSync);

348 }

※ 左端の数値は行番号です。

  ─── 以上 ───

タグ(2)
0 件の賞賛
返信
0 返答(返信)