Skip to main content
zovkorall
Associate II
May 15, 2019
Question

BluNRG-1. LowPowerMode.

  • May 15, 2019
  • 2 replies
  • 627 views

Hi All!

I have a next question for low power mode.

When i have using low power mode - SLEEPMODE_WAKETIMER - GPIO has generate some impulse for fix T-period. This reason in of operation low power mode?

GPIO_SetBits(GPIO_Pin_6);
HAL_VTimerStart_ms(0,2000);
 while(1) {
 /* Disable UART IRQ to avoid calling BLE stack functions while BTLE_StackTick() is running. */
 NVIC_DisableIRQ(UART_IRQn); 
 /* BlueNRG-1 stack tick */
 BTLE_StackTick(); 
 NVIC_EnableIRQ(UART_IRQn);
 
 /* Application tick */
 APP_Tick();
 STATE_CMD(); 
	{			
		/* Power Save management */
		BlueNRG_Sleep(SLEEPMODE_WAKETIMER,0,0);
		if (ret != BLE_STATUS_SUCCESS) {
			printf("BlueNRG_Sleep() error 0x%02x\r\n", ret);
			while(1);
		}else
		{					
		 PRINTF("BlueNRG_Sleep() OK 0x%02x\r\n", ret);					
		}		
	} 
}

GPIO6 - must be in HIGH level.

    This topic has been closed for replies.

    2 replies

    Winfred LU
    ST Employee
    May 16, 2019

    Hi zovkorall,

    What would be the period?

    The answer shall be yes, since the clock are not powered in Sleep mode.

    For GPIO special settings in low power modes, please choose from GPIO9, 10, and 11.

    The GPIO9, GPIO10 and GPIO11 can be configured as output GPIO during sleep and standby mode. In addition, they can have enabled their internal pull. Their configuration is done in specific registers:

    • SLEEPIO_OEN: has the same functionality of the register OEN (GPIO peripheral) and it is used to configure in output mode or input mode (default)
    • SLEEPIO_PE: has the same functionality of the register PE (GPIO peripheral) and it is used to enable the internal pull. This register allows the internal pull of these IOs to be enabled or disabled also if they are not configured in output state.
    • SLEEPIO_DS: has the same functionality of the register DS (GPIO peripheral) and it is used to configure the drive strength
    • SLEEPIO_OUT: has the same functionality of the register DATA (GPIO peripheral) and it is used to set the state of the GPIO (high state or low state)

    Best Regards,

    Winfred

    zovkorall
    zovkorallAuthor
    Associate II
    May 19, 2019

    Hi Winfred LU!

    |What would be the period?

    T = 100ms(+-)

    0690X000008w51zQAA.jpg

    The only correct solution would be to use another GPIO (9,10,11) ?

    Best Regards,

    zovkorall