Hello,
I have a continuous clock coming into the SSP port (configured as a slave), but data is only valid immediately after a "DataReady" signal falls. I am generating a match on a timer (configured as a counter) when that occurs, but I cannot get the DMA to respond to that match. It is reading data continuously instead of reading only 32 bytes after the signal falls.
I set up the external match pin for MAT1[1] and confirmed the match is occurring as expected. I would expect the DMA interrupt to occur once and only once 256 clock cycles later, until the match condition occurs again. However, the DMA transfer is free running.
Can you see my mistakes?
I am very sorry but I could not get the code insertion to work properly, so I attached a text file with my code snippets - Again sorry.
Thank you in advance for any insight - James
Original Attachment has been moved to: snippet.txt.zip
Hi James Massey,
Thank you for your interest in NXP Semiconductor products and the opportunity to serve you.
According to your statement, the major issue is the DMA trigger mechanism, so I'd like to suggest you to create simple which using the MAT match event as the DMA trigger, then DMA transfer the data of one array to another array.
The issue will be replicated in the sample demo, and I think it's good approach to figure out the root cause of the issue.
Hope it helps.
Have a great day,
Ping
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
I have the exact same answer (https://community.nxp.com/thread/446219 ) and trying to do what Jeremy suggested, but no luck!