10-STM32的ADC转换和RTC时钟配置
一.ADC
1.复位并清除ADC通道,HAL_ADC_MspInit()
2.ADC通道时钟使能 __HAL_RCC_ADC_CLK_ENABLE()
3.GPIO通道时钟使能,引脚配置 __HAL_RCC_GPIOx_CLK_ENABLE();HAL_GPIO_Init()
4.开启中断并配置优先级,以及中断处理函数 HAL_ADC_Start_IT();HAL_NVIC_SetPriority();HAL_NVIC_EnableIRQ();HAL_ADC_IRQHandler()
5.是否开启DMA数据传输 HAL_ADC_Start_DMA();__HAL_RCC_DMAx_CLK_ENABLE();__HAL_LINKDMA()
二.RTC时钟
包含3路时钟源输出,3路事件输入,1、512HZ时钟输出和两路闹钟输出。
1. enable access to the RTC Domain and RTC registers 选用LSE时钟源可得到1HZ频率时钟输出,用作日历
__HAL_RCC_PWR_CLK_ENABLE();HAL_PWR_EnableBkUpAccess();
选择时钟源 __HAL_RCC_RTC_CONFIG();时钟使能 __HAL_RCC_RTC_ENABLE()
2.配置RTC预分频系数和时钟模式,然后初始化。HAL_RTC_Init();
3.配置日期和事件 HAL_RTC_SetTime()和HAL_RTC_SetDate();
读取日期和事件则用HAL_RTC_GetTime()和HAL_RTC_GetDate();
4.使能闹钟中断,并配置中断处理函数 HAL_RTC_SetAlarm();HAL_RTC_SetAlarm_IT();HAL_RTC_GetAlarm()