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

本文介绍了STM32单片机中ADC模块的基本配置过程,包括设置PC0为模拟输入,初始化GPIOC,并配置ADC1_DR_Address以供DMA取数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 首先我们应将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初始化下回再研究一下。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值