2023-03-16 12:14 AM
Hello,
i am porting a relative old project which uses std hal lib v1.06 from stm32h750.
Due to the market shortage, i am migrating this project to stm32h725igk6 ( bga version).
The project is compiled trough CubeIDE with latest hal libraries ( v1.11).
The adc uses adc1-ch3 and adc2-ch5 in regular simultaneous mode with DMA.
External bypass oscilator of 25mhz is used,
ADC clock is coming from PLL2 at 88MHZ, and divided by 4, to obtain a 2msps.
The project itself uses alot of complex math, and it was originaly created under unix.
After porting the code to cubeide, there are no compile errors.
However i noticed the. function HAL_ADC_IRQHandler its never triggerd, and i wonder why?
Both NVIC for ADC and DMA are enabled.
By the way, what is the dma stream for reading ADC1 data register? is it DMA1 stream 1?
I ask this because i have alot of hard time figuring all the data from the reference manual, and cubemx when generating the project does not autofill this
I already spent 2 days on this, trying to export the code even in EWARM, but with the same result
ADC1 - master
ADC2 - slave
void ADC_IRQHandler(void)
{
HAL_ADC_IRQHandler(&AdcHandle_master);
HAL_ADC_IRQHandler(&AdcHandle_slave);
}
void DMA1_Stream1_IRQHandler(void)
{
HAL_DMA_IRQHandler(AdcHandle_master.DMA_Handle); // this gets triggered
}
Solved! Go to Solution.
2023-03-16 09:55 AM
Hello @Bogdan ,
You may refer to the RM0468 under subsection Block interconnect, you can find the DMA streams related to ADCs used.
You can try debugging the code to see if the ADC conversion is completing. Then check the ADC and DMA configurations. You may start with a simple example of single ADC. You can get inspired with this example based on Nucleo H743.
Then, you can add the second instance of ADC manually and test it.
Hope it works!
To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.
2023-03-16 09:55 AM
Hello @Bogdan ,
You may refer to the RM0468 under subsection Block interconnect, you can find the DMA streams related to ADCs used.
You can try debugging the code to see if the ADC conversion is completing. Then check the ADC and DMA configurations. You may start with a simple example of single ADC. You can get inspired with this example based on Nucleo H743.
Then, you can add the second instance of ADC manually and test it.
Hope it works!
To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.
2023-03-16 10:48 AM
Hello,
thanks for sharing this info.
So by judging from your picture, in my case for ADC1, this would be DMA1 Stream 9 ?