DMA interrupt not triggering on S32K324

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

DMA interrupt not triggering on S32K324

217 Views
ilx123
Contributor II

Hi everyone,

I have configured the eMIOS ICU to use DMA. But for some reason, the DMA completion notification is never entered. 

emios icu config:

ilx123_3-1755611677414.png

ilx123_4-1755611706420.pngilx123_5-1755611720999.png

 

Rm dmamux:

ilx123_1-1755610961232.png

IntCtrl:

ilx123_2-1755610983202.png

And in the code:

extern void IcuChannel_3_DmaTransferCompletionNotif(void)
{
    Emios_Icu_Ip_TimestampDmaProcessing(1u, 1u);
}

 

As to my understanding, the following should happen: edge gets detected by the ICU -> triggers DMA transfer -> IcuChannel_3_DmaTransferCompletionNotif() -> Emios_Icu_Ip_TimestampDmaProcessing() gets called -> timestamp measurement notification (SENT_INPUT1_ISR gets called). This is also the desired flow for the application I am creating. 

Could it be that I misunderstood something inside the configuration of the drivers? Any help would be appreciated.

 

0 Kudos
Reply
1 Reply

149 Views
VaneB
NXP TechSupport
NXP TechSupport

Hi @ilx123 

I recently posted a simple example code that shows how to configure eMIOS in ICU_MODE_TIMESTAMP using SAIC (Single Action Input Capture) mode with DMA. In this setup, one eMIOS channel captures timestamps from a waveform generated by another channel. After a predefined number of captures, a DMA interrupt is triggered.

Example S32K344 eMIOS Icu with DMA DS3.6 RTD 6.0.0

 

BR, VaneB

0 Kudos
Reply