cancel
Showing results for 
Search instead for 
Did you mean: 

MDMA BlockRepeatTransfer is not generating Interrupt on every block transferred

TKawa.3
Associate

->MDMA is configured STM32H757 Eval to transfer 32000 bytes of data using repeat block transfer triggering Mode.

-> I want to have interrupt on each Block Transfer, but I'm getting interrupt when last Block is transferred as BRC is set to Zero

-> Even I'm getting all the interrupt flag sets when Interrupt Handler is called after transmission complete

1 REPLY 1
Robmar
Senior III

How appalling is STM support?!  3 years and not a single reply!

Anyone at STM going to bother to post an answer?

The MDMA ST example seems to have errors, though it sets block repeat, it enables the block completion interrupt, not the block repeat, and there is little in the way of an explanation of when interrupts are generated.

379:  MdmaHandleImage.Init.TransferTriggerMode = MDMA_REPEAT_BLOCK_TRANSFER;

...

STM MDMA EXAMPLE CODE ERROR???:-

SHOULDN'T LINE 414 USE HAL_MDMA_XFER_REPBLOCKCPLT_CB_ID AS TRIGGERMODE SET TO MDMA_REPEAT_BLOCK_TRANSFER ABOVE?

414: HAL_MDMA_RegisterCallback(&MdmaHandleImage, HAL_MDMA_XFER_CPLT_CB_ID, MDMA_TransferCompleteCallback);

 

The wiki entry on MDMA is awful, someone wrote the text because they were told to,

but clearly they had no interest or perhaps understanding in the use of the MDMA module.

Or explaining it in a way that could be roundly understood.