STM32F1 的ADC使用是时钟问题

2019-07-14 21:40发布

在学习ADC时发现没有配置ADC时钟相关的函数,ADC工作正常。请大神解释一下,以及没有配置时钟可能出现什么问题
代码如下:
  1. #include "adc.h"

  2. void ADC_MODE_Config(void)
  3. {
  4.                 ADC_InitTypeDef ADC_InitStructure;
  5.                
  6. ADC_InitStructure.ADC_Mode = ADC_Mode_Independent;
  7.         ADC_InitStructure.ADC_ScanConvMode = ENABLE;
  8.         ADC_InitStructure.ADC_ContinuousConvMode = ENABLE;
  9.         ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None;
  10.         ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right;
  11.         ADC_InitStructure.ADC_NbrOfChannel = 1;
  12.         ADC_Init(ADC1, &ADC_InitStructure);
  13. ADC_RegularChannelConfig(ADC1, ADC_Channel_15, 1, ADC_SampleTime_55Cycles5);
  14.         
  15.         ADC_Cmd(ADC1, ENABLE);
  16. ADC_SoftwareStartConvCmd(ADC1, ENABLE);
  17. }

  18. void ADC_GPIO_Config(void)
  19. {
  20.         GPIO_InitTypeDef GPIO_InitStructure;
  21.         
  22.         RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC | RCC_APB2Periph_ADC1, ENABLE);
  23.         
  24.         GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5;
  25.         GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  26.         GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;
  27.         GPIO_Init(GPIOC, &GPIO_InitStructure);
  28. }
复制代码
//RCC_ADCCLKConfig(RCC_PCLK2_Div4);         这个ADC时钟没有开启。代码我贴上来了
0条回答

一周热门 更多>