初级会员

- 积分
- 59
- 金钱
- 59
- 注册时间
- 2018-2-5
- 在线时间
- 14 小时
|
5金钱
本帖最后由 认识你很高兴 于 2020-2-15 17:00 编辑
大家好,我想用单片机ADC采集一个电位器电压,可以确定硬件连接是没问题的,使用示波器测量过了,目前是无论怎么调节电位器ADC寄存器的值都不改变,且测试出的电压也不对,代码如下:
int ADC_Value;
float ADC_Votage;
while (1)
{
HAL_ADCEx_Calibration_Start(&hadc2);
HAL_ADC_Start(&hadc2);
HAL_ADC_PollForConversion(&hadc2,10);
if(HAL_IS_BIT_SET(HAL_ADC_GetState(&hadc2), HAL_ADC_STATE_REG_EOC))
{
ADC_Value=HAL_ADC_GetState(&hadc2);
printf("ADC寄存器值:%d\r\n",ADC_Value);
ADC_Votage = ADC_Value*3.3/4096;
printf("采集电压值:%.4fV\r\n",ADC_Votage);
printf("\r\n");
HAL_Delay(500);
};
ADC的配置及串口输出结果如图所示,
|
|