Skip to main content
Associate III
November 6, 2023
Solved

Issue while setting pins as Analog to save power

  • November 6, 2023
  • 1 reply
  • 994 views

Hello everyone, I'm trying to set all the pins(except 11) of port F of STM32L476 as Analog to save power. 

 

	for(uint8_t GPIO_PIN = 0; GPIO_PIN < 16; GPIO_PIN++)
	{
		if(GPIO_PIN != 11)	GPIOF->MODER |= (3 << (GPIO_PIN * 2));
	}

 

 But it resets my program while executing these lines.

This topic has been closed for replies.
Best answer by Bob S

(1) What are the port F pins connected to externally?  Or what internal peripherals are they (normally) connected to?  Have you disabled the internal peripherals before this?  Use your debugger, step through the loop and see which pin causes the reset.

(2) Why the loop? Why not just write 0xff3fffff to GPIOF->MODER?

1 reply

Bob S
Bob SBest answer
Super User
November 6, 2023

(1) What are the port F pins connected to externally?  Or what internal peripherals are they (normally) connected to?  Have you disabled the internal peripherals before this?  Use your debugger, step through the loop and see which pin causes the reset.

(2) Why the loop? Why not just write 0xff3fffff to GPIOF->MODER?