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

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

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

478 Views
山崎直己
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 }

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

  ─── 以上 ───

Tags (2)
0 Kudos
0 Replies