cancel
Showing results for 
Search instead for 
Did you mean: 

Facing issue in read ADC with GPDMA in STM32U585ZIT6Qwith trust zone option enabled

JShah.7
Associate III

Hi;

I am using STM32U585ZIT6Q controller in my current project. I am enabled Trust Zone option.

I have configured ADC 1 (4 channel) in non secure with GPDMA.I am not able to read ADC data. I have attached all configuration. I have used HCLK(160MHz) for ADC.

if i got working example then it will more helpful.

Please help me for same.

1 ACCEPTED SOLUTION

Accepted Solutions
RomainR.
ST Employee

Here attached my previous project with ADC1 in non secure context (NS) and in 12bit resolution.

I also added ADC1 channel computation en mV for VREFINT, VBAT and Degree Celsius for TempSensor.

I do not implemented ADC4, it's up to you for its implementation where you want.


_legacyfs_online_stmicro_images_0693W00000dDcOSQA0.pngAs explained before, I just changed ADC1 secure context as following.


_legacyfs_online_stmicro_images_0693W00000dDcQnQAK.png

  • Regenerated the projet
  • Move ADC1 user code and callback from \secure\main.c to \Nonsecure\main.c

Good luck.

Romain,

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.

View solution in original post

16 REPLIES 16
RomainR.
ST Employee

Hi @JShah.7 (Community Member)

According Datasheet DS13086 Rev 7 the Table 104. 14-bit ADC1 characteristics indicates the max ADC1 frequency is 55MHz. You must increase ADC clock prescaler input.

Check also you enabled internal VDDA switch before using ADC1 with:

HAL_PWREx_EnableVddA();

Let me know if it helps?

Regards,

romain,

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.

JShah.7
Associate III

Hi @RomainR.​ 

Thanks for suggestion. As per your suggestion i use HAL_PWREx_EnableVddA(); function and 16MHz(HSI) clock but still result is same.

RomainR.
ST Employee

Is it a custom board?

Are you able to have ADC1 conversion working in these conditions:

  • Without TZ enable?
  • Without GPDMA transfer?

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.

JShah.7
Associate III

Yes,

I have tested with STM32U575ZIT6Q and it is working in both condition. Also it is working with GPDMA. But if i enable TZ it is not working.

RomainR.
ST Employee

In your case, TZ security is active. so, ADC Peripheral, SRAM memory for GPDMA transfer and GPIO are either securable or TrustZone-aware.

In this case you must use Global TrustZone controller (GTZC) to configure your application in secure mode.

Refer to AN5347 - Rev 6 chapter 4 and 11.

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.

JShah.7
Associate III

Hi,

I have configured GTZC but still result is same. Can you please share me example code for ADC with Trustzone enable?

RomainR.
ST Employee

Sorry, example your are requesting is actually not available.

But, share your project, I will check your ADC1, GPDMA channel linked-list and GTZC configuration.

regards,

romain,

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.

JShah.7
Associate III

Shared. Please check message.

ChintaN1
Associate III

Hello @RomainR.​ 

Thanks for your support.

Here I have a query regarding supported peripherals for the secure firmware.

Is secure firmware support ADC or not?


_legacyfs_online_stmicro_images_0693W00000dDPE5QAO.pngThanks,

Chintan Patel