Hello,
When the adc group has only one channel and the Adc Enable Optimize DMA Streaming Groups configuration item is checked, a hard fault occurs when the Adc_Ipw_SetupTcdSingleAdcChannelMajorLink function is executed.
In the case of a single channel, if the Adc Group Without Interrupts configuration item is checked and ACCESS_MODE_STREAMING, Select Adc Streaming Dma Channel is enabled. Otherwise, the number of the dma channel in the configuration file is 255, which is reasonable here. But what I don't understand is why when ADC_ENABLE_GROUP_STREAMING_RESULTS_RORDER or ADC_OPTIMIZE_DMA_STREAMING_GROUPS is STD_ON, instead of STD_ON==GroupPtr ->AdcWithoutInterrupt, the Adc_Ipw_SetupTcdSingleAdcChannelMajorLink function will be called. This seems unreasonable, and also because the call to this function leads to hard fault.
BR,
Jason
Hi@Jason22
Please do not use your QQ email account next time; please use your company email account instead.
I tested this, but I didn't find any problems.
I have attached my test project and test result for your reference.
Also, i check your code and i found some error in your code.
1.clock init is wrong, your code can't not run successfully,
2."adc_group0_val" should be attribute to "no-cacheable area"
also:
The usage instructions for Optimize DMA streaming groups are clearly explained in the user manual.
RTD_ADC_UM.pdf