2024-06-27 12:44 AM
hi ALL
I use stm32h753.
1) SPI1 , DMA , DMA1_Stream0
2) HAL_SPI_Transmit_DMA(&hspi1, gAudioTxBuffer, VS1063_DMA_TX_LEN);
3) void SPI1_IRQHandler(void) interrrupt
==> Very well
but
1) SPI6 , BDMA , BDMA_Channel0
2) HAL_SPI_Transmit_DMA(&hspi6, gAudioTxBuffer, VS1063_DMA_TX_LEN);
3) void SPI6_IRQHandler(void) not interrrupt
=> not interrupt
I don't know why spi6 doesn't get interrupt. Do you know why? Please tell me how to solve it
Thanks.
Solved! Go to Solution.
2024-07-01 08:08 AM - edited 2024-07-01 08:13 AM
Hello,
I'm quite sure, your audio buffer gAudioTxBuffer is located in one of the SRAMs in D2 domain. since you succeeded with the first case.
But BDMA can't access to these SRAMs and has access only to the resources in D3 domain as shown in the Table 3 from RM0433:
So in your case, to use BDMA, you need to relocate your audio buffer to SRAM4.
Hope it does answer your question.
2024-07-01 07:12 AM - edited 2024-07-01 01:42 PM
Hello @togsin ,
It maybe the issue is related to the memory location of the AudioTx buffers in case the linker of your project maps your audio Tx buffers to DTCM-RAM (which is not accessible by BDMA).
BDMA does not have access to resources located outside of the D3 domain.
So, the audio buffers need to be remapped to SRAM4, which is accessible by BDMA.
This information is provided in the reference manual RM0433 in section 2.4 Embedded SRAM and in the application note AN4891 in section 2.4 STM32H72x/73x/74x/75x interconnect matrix.
I hope that I've answered your question.
2024-07-01 08:08 AM - edited 2024-07-01 08:13 AM
Hello,
I'm quite sure, your audio buffer gAudioTxBuffer is located in one of the SRAMs in D2 domain. since you succeeded with the first case.
But BDMA can't access to these SRAMs and has access only to the resources in D3 domain as shown in the Table 3 from RM0433:
So in your case, to use BDMA, you need to relocate your audio buffer to SRAM4.
Hope it does answer your question.
2024-07-15 06:22 AM
Hello @togsin ,
Please close this thread if one of the comments answered your question.
Please click on "Accept as Solution" the answer you feel it answered your question.
Thank you.