关于评估板例程ADC初始化 ,如下例程中,为什么要先将ADC转换器配置为默认状态,难道上电复位了,不是默认状态?上电复位后ADC相关寄存器的值是不确定的?
void ADC_Function_Init(void)
{
ADC_InitTypeDef ADC_InitStructure = {0};
GPIO_InitTypeDef GPIO_InitStructure = {0};
//开外设(GPIOA、ADC1、ADC2)
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);
RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1, ENABLE);
RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC2, ENABLE);
RCC_ADCCLKConfig(RCC_PCLK2_Div8);
//初始化ADC模拟输入通道(PA2 PA3)
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2 | GPIO_Pin_3;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;
GPIO_Init(GPIOA, &GPIO_InitStructure);
//先将两个ADC转换器配置为默认状态
ADC_DeInit(ADC1);
ADC_DeInit(ADC2);有没有微信技术群呢?微信群交流更及时些
查看: 540
回复: 2
关于评估板例程ADC初始化 和 技术交流微信群
热门产品 :
CH592: RISC-V内核BLE5.4无线MCU
是我问的太简单了吗? 都没人愿意回答
ADC_DeInit(ADC1);初始化的时候可以不用调用,初始化的时候应该在时钟初始化之前调用,要不然ADC时钟又被这个函数关掉了。
请勿发布广告和违法内容, 代码可以选择编辑器代码语言格式, 更易他人阅读帮助您, 或者留下联系方式,以便更好更快服务您
只有登录才能回复,可以选择微信账号登录