打印
[STM32F1]

ADC 驱动

[复制链接]
358|17
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
pangb|  楼主 | 2022-4-14 22:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
void ADCInit(void)
{
  // ADC init
  // ADC Deinit
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1|RCC_APB2Periph_ADC2|RCC_APB2Periph_GPIOA, ENABLE);
  ADC_DeInit(ADC1);

  // RA1 - analog input
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1;
  GPIO_InitStructure.GPIO_Speed = 0;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;
  GPIO_Init (GPIOA, &GPIO_InitStructure);

  // ADC Structure Initialization
  ADC_StructInit(&ADC_InitStructure);

  // Preinit
  ADC_InitStructure.ADC_Mode = ADC_Mode_Independent;
  ADC_InitStructure.ADC_ScanConvMode = DISABLE;
  ADC_InitStructure.ADC_ContinuousConvMode = DISABLE;
  ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None;
  ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right;
  ADC_InitStructure.ADC_NbrOfChannel = 1;
  ADC_Init(ADC1, &ADC_InitStructure);

  // Enable the ADC
  ADC_Cmd(ADC1, ENABLE);
}
ADC 初始化 这个没疑问

使用特权

评论回复
沙发
pangb|  楼主 | 2022-4-14 22:26 | 只看该作者
Int16U GetADCChanel(Int8U chanel) {

  // Configure chanel
  ADC_RegularChannelConfig(ADC1, chanel, 1, ADC_SampleTime_55Cycles5);

  // Start the conversion
  ADC_SoftwareStartConvCmd(ADC1, ENABLE);

  // Wait until conversion completion
  while(ADC_GetFlagStatus(ADC1, ADC_FLAG_EOC) == RESET);

  // Get the conversion value
  return ADC_GetConversionValue(ADC1);

}获取通道这里是什么意思?

使用特权

评论回复
板凳
supernan| | 2022-4-14 22:28 | 只看该作者
是不是ADC有很多通道,对应很多Io?

使用特权

评论回复
地板
dengdc| | 2022-4-14 22:29 | 只看该作者
这是获取指定通道的转换结果,你看返回值。

使用特权

评论回复
5
zwll| | 2022-4-14 22:33 | 只看该作者
adc有很多通道的  看看你使用的是哪个通道啊

使用特权

评论回复
6
stly| | 2022-4-14 22:37 | 只看该作者
配置的时候及应该配置好了的啊

使用特权

评论回复
7
supernan| | 2022-4-14 22:40 | 只看该作者
使能通道后,直接读取,默认的应该就是使能的这个通道吧。

使用特权

评论回复
8
pangb|  楼主 | 2022-4-14 22:42 | 只看该作者
我有8路电压要测量

使用特权

评论回复
9
supernan| | 2022-4-14 22:44 | 只看该作者
用来测量多路电压

使用特权

评论回复
10
llljh| | 2022-4-14 22:46 | 只看该作者
ADC驱动很简单,12位的基本上很常用啦

使用特权

评论回复
11
pangb|  楼主 | 2022-4-14 22:48 | 只看该作者
配置不就是初始化吗

使用特权

评论回复
12
zyf部长| | 2022-4-14 22:50 | 只看该作者
恩 对 就是说配置的时候就要弄好是哪个通道

使用特权

评论回复
13
heweibig| | 2022-4-14 22:55 | 只看该作者
用的是哪个ADC通道

使用特权

评论回复
14
jiaxw| | 2022-4-14 22:57 | 只看该作者
是的 就是初始化

使用特权

评论回复
15
llljh| | 2022-4-14 22:58 | 只看该作者
就是获取你索要通道的转换结果

使用特权

评论回复
16
songqian17| | 2022-4-14 23:00 | 只看该作者
你读取结果的时候能看到是从哪个里边读出来的啊

使用特权

评论回复
17
pangb|  楼主 | 2022-4-14 23:03 | 只看该作者
分别映射到GPIO引脚上面

使用特权

评论回复
18
pangb|  楼主 | 2022-4-14 23:04 | 只看该作者
现在会用了,还是得多练习

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

701

主题

7643

帖子

6

粉丝