码迷,mamicode.com
首页 > 其他好文 > 详细

ADC相关

时间:2015-08-11 11:59:36      阅读:206      评论:0      收藏:0      [点我收藏+]

标签:

ADC初始化要做的一些事情

void  Adc_Init(void)
{    
  GPIO_InitTypeDef  GPIO_InitStructure;
    ADC_CommonInitTypeDef ADC_CommonInitStructure;
    ADC_InitTypeDef       ADC_InitStructure;
    
  RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA, ENABLE);//使能GPIOA时钟
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1, ENABLE); //使能ADC1时钟

  //对GPIO进行初始化
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5;//PA5
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AN;//模拟通道
  GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL ;//没有上下拉
  GPIO_Init(GPIOA, &GPIO_InitStructure);//GPIO初始化  
 
  RCC_APB2PeriphResetCmd(RCC_APB2Periph_ADC1,ENABLE);      //ADC1复位
  RCC_APB2PeriphResetCmd(RCC_APB2Periph_ADC1,DISABLE);    //ADC1解复位     
 
    
  ADC_CommonInitStructure.ADC_Mode = ADC_Mode_Independent;//独立模式
  ADC_CommonInitStructure.ADC_TwoSamplingDelay = ADC_TwoSamplingDelay_5Cycles;//采样延时
  ADC_CommonInitStructure.ADC_DMAAccessMode = ADC_DMAAccessMode_Disabled; //DMA禁止
  ADC_CommonInitStructure.ADC_Prescaler = ADC_Prescaler_Div4;// ADCCLK=PCLK2/4=84/4=21Mhz
  ADC_CommonInit(&ADC_CommonInitStructure);//这个函数其实就是配置ADC_CCR 寄存器,把以上的这些配置写入
    
  ADC_InitStructure.ADC_Resolution = ADC_Resolution_12b;//12 bit
  ADC_InitStructure.ADC_ScanConvMode = DISABLE;//扫描禁止
  ADC_InitStructure.ADC_ContinuousConvMode = DISABLE;//连续转换禁止
  ADC_InitStructure.ADC_ExternalTrigConvEdge = ADC_ExternalTrigConvEdge_None;//禁止触发检测
  ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right;//右对齐   
  ADC_InitStructure.ADC_NbrOfConversion = 1;// 
  ADC_Init(ADC1, &ADC_InitStructure);//ADC初始化,就是配置CR1,CR2,SQR
  
ADC_Cmd(ADC1, ENABLE);
//通道使能 }

获得ADC的值,需要如下步骤:

1、 ADC_RegularChannelConfig(ADC1, ch, 1, ADC_SampleTime_480Cycles ); 选择哪个ADC,通道,转换规则,采样时间

2、ADC_SoftwareStartConv(ADC1); 转换启动,CR2的30bit

3、ADC_GetFlagStatus(ADC1, ADC_FLAG_EOC ) 读ADC_SR的EOC位,判断转换是否结束

4、ADC_GetConversionValue(ADC1) 读DR值,就是转换结果

 

ADC相关

标签:

原文地址:http://www.cnblogs.com/nasduc/p/4720402.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!