原理图:
STM32CubeMX配置:
打开软件。根据原理图,配置引脚PB15或者PB12,具体配置哪个需要根据题目需求,看题目是对哪个电位器,如果是对R37电位器进行操作,则配置PB15,如果是对R38电位器进行操作,则配置PB12。这里以R37为例,也就是配置PB15:选中ADC2_IN15。
在左侧选中Analog,以PB15为例子,选择ADC2,在Mode中选择IN15 Single-ended:
配置成功,点击GENERATE CODE。
Keil5配置:
打开软件。
新建文件:myadc.c和myadc.h,注意由于库本身自带adc.h所以不能取名为adc,随意换一个名字都可以。
myadc.c
#include "badc.h"
//读取adc
double getADC(ADC_HandleTypeDef *pin)
{
uint adc;
HAL_ADC_Start(pin);
adc=HAL_ADC_GetValue(pin);
return adc*3.3/4096;
}
myadc.h
#ifndef _BADC_H_
#define _BADC_H_
#include "main.h"
double getADC(ADC_HandleTypeDef *pin);
#endif
可以调用getADC函数来获取当前的值。
getADC(&hadc2)