stm32f070 stop 模式 rtc定时启动调试总结。
1.在进stoop模式之前一定对gpio进行配置。
/* GPIO Ports Clock Enable */
__HAL_RCC_GPIOA_CLK_ENABLE();
__HAL_RCC_GPIOB_CLK_ENABLE();
__HAL_RCC_GPIOF_CLK_ENABLE();
/Configure GPIO pins : GPIO_PIN_All/
GPIO_InitStruct.Pin = GPIO_PIN_All;
GPIO_InitStruct.Mode = GPIO_MODE_ANALOG;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
HAL_GPIO_Init(GPIOF, &GPIO_InitStruct);
在关闭外设,进入stop模式,否则电流会多100多个ua。
2.RTC中断启动后,要初始化时钟,并且每次进入stop模式前要对alarmA和rtc时间重新赋值。
3.如果采用外部exit中断唤醒,需要进入stop模式前对中断引脚配置。不要设置成模拟输入。
4.每次从中断唤醒,要重新开启使用的外设。