今天学习一下STM32的ADC(模拟/数字转化器)——IO口配置

 首先我们应将PC0设置成模拟输入:

#include "adc.h"

/*ADC1_DR_Address需要自己配置即为存放转换结果的寄存器,他的作用就是告诉DMA取数就到ADC1_DR_Address 这里来取。*/

#define  ADC1_DR_Address    ((u32)0x40012400+0x4c)      

/*查了一下,目前应该还没有人写出头文件定义,其实也不难,自己定义也可以,只是需要查数据手册*/

/*定义变量ADC_ConvertedValue,AD1通道10转 换的数据*/

__IO uint16_t ADC_ConvertedValue;

        static void ADC1_GPIO_Config(void)

{

 GPIO_InitTypeDef  GPIO_InitStructure;

   /* Enable ADC1 and GPIOC clock ADC1和GPIOC都是由RCC_APB2Periph使能工作*/

 RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1 |RCC_APB2Periph_GPIOC,ENABLE);

     /* 选择引脚,PC0是10通道*/

 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 ;

   /* 选择IO口工作方式为模拟输入*/

  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;

   GPIO_Init(GPIOC, &GPIO_InitStructure);   /* 设定上述参数*/

}




AD初始化下回再研究一下。

你可能感兴趣的:(学习,ADC引脚初始化)