在F103中测试ADC,接入一个电位器进行测试。 我试了几次不同的引脚: PC4 -> ADC 2_IN13 PC1-> ADC 1_IN 2 PC3-> ADC 1_IN4 把相关通道改成了单端。 调整电位器,ADC总是读取4095。 在主函数中,我声明了一个变量raw并在while-loop中实现了代码 int main(void){ uint16_t raw; HAL_Init(); SystemClock_Config(); MX_ADC2_Init(); while (1) { /* USER CODE END WHILE */ HAL_ADC_Start(&hadc2); HAL_ADC_PollForConversion(&hadc2, HAL_MAX_DELAY); raw = HAL_ADC_GetValue(&hadc2); HAL_Delay(2); /* USER CODE BEGIN 3 */ } /* USER CODE END 3 */ }
|